pandoc/.github/workflows/nightly.yml

96 lines
2.9 KiB
YAML

name: Nightly
on:
schedule:
- cron: '53 6 * * *'
jobs:
linux:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
export PATH=/opt/cabal/3.2/bin:/opt/ghc/8.8.3/bin:$PATH
ls /opt/cabal/*/bin
ls /opt/ghc/*/bin
ghc --version
cabal --version
cabal v2-update
cabal v2-build --dependencies-only all
- name: Build
run: |
export PATH=/opt/cabal/3.2/bin:/opt/ghc/8.8.3/bin:$PATH
cabal v2-install all
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@v2
- name: Install stack
shell: cmd
run: |
choco install haskell-stack
- 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 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@v2
- name: Install stack
run: |
curl -L https://get.haskellstack.org/stable/osx-x86_64.tar.gz -o stack.tar.gz
tar xzvf stack.tar.gz --strip-components=1 'stack*/stack'
- 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 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