pandoc/.github/workflows/nightly.yml
John MacFarlane a2818e97eb Nightly builds: ensure that data files are baked in.
It seems that stack is replacing ALL flag settings rather
than overriding just one with `--flag`?

This should address #8016 but we await testing after
tonight's nightly is built.
2022-04-12 09:19:01 -07:00

94 lines
2.7 KiB
YAML

name: Nightly
on:
schedule:
- cron: '53 7 * * *'
permissions:
contents: read
jobs:
linux:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v3
- name: Install recent cabal/ghc
uses: haskell/actions/setup@v1
with:
ghc-version: '8.10.7'
cabal-version: '3.2'
- name: Install dependencies
run: |
ghc --version
cabal --version
cabal v2-update
cabal v2-build --dependencies-only
- name: Build
run: |
cabal v2-install -fnightly
strip $HOME/.cabal/bin/pandoc
- name: Install artifact
run: |
export ARTIFACTS=nightly-linux/pandoc-nightly-linux-$(date +%Y-%m-%d)
mkdir -p ${ARTIFACTS}
cp $HOME/.cabal/bin/pandoc ${ARTIFACTS}/
cp COPYRIGHT ${ARTIFACTS}/
echo "Built from ${GITHUB_SHA}" > ${ARTIFACTS}/README.nightly.txt
- uses: actions/upload-artifact@master
with:
name: nightly-linux
path: nightly-linux
windows:
runs-on: windows-2019
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
stack update
stack build --dependencies-only pandoc
- name: Build artifacts
shell: cmd
run: |
for /f %%a in ('powershell -Command "Get-Date -format yyyy-MM-dd"') do set THEDATE=%%a
set ARTIFACTS=%CD%\nightly-windows\pandoc-nightly-windows-%THEDATE%
mkdir %ARTIFACTS%
stack build --flag pandoc:nightly --flag pandoc:embed_data_files pandoc
forfiles /P .\.stack-work\install /M pandoc*.exe /S /C "cmd /C copy @path %%ARTIFACTS%%"
copy COPYRIGHT %ARTIFACTS%
ren %ARTIFACTS%\COPYRIGHT COPYRIGHT.txt
echo Built from %GITHUB_SHA% > %ARTIFACTS%\README.nightly.txt
- uses: actions/upload-artifact@master
with:
name: nightly-windows
path: nightly-windows
macos:
runs-on: macOS-10.15
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
stack update
stack build --dependencies-only pandoc
- name: Build artifacts
run: |
export ARTIFACTS=nightly-macos/pandoc-nightly-macos-$(date +%Y-%m-%d)
mkdir -p ${ARTIFACTS}
stack build --flag pandoc:nightly --flag pandoc:embed_data_files pandoc
for f in $(find .stack-work/install -name 'pandoc*' -perm +001 -type f); do cp $f ${ARTIFACTS}/; done
mv ${ARTIFACTS}/pandoc ${ARTIFACTS}/pandoc
cp COPYRIGHT ${ARTIFACTS}/
echo "Built from ${GITHUB_SHA}" > ${ARTIFACTS}/README.nightly.txt
- uses: actions/upload-artifact@master
with:
name: nightly-macos
path: nightly-macos