Add testnet05 #1017
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build project | |
on: push | |
jobs: | |
build: | |
name: Build master with ${{ matrix.ghc }} / ${{ matrix.cabal }} on ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
ghc: ['9.6.3'] | |
cabal: ['3.10'] | |
os: ['ubuntu-20.04', 'ubuntu-22.04', 'macOS-latest'] | |
steps: | |
- name: 'GitHub actions env workaround' | |
run: 'echo "ACTIONS_ALLOW_UNSECURE_COMMANDS=true" >> $GITHUB_ENV' | |
# Setup | |
- name: Checkout repository | |
uses: actions/checkout@v1 | |
# Haskell Setup | |
- name: Install GHC and Cabal | |
uses: haskell-actions/setup@v2 | |
with: | |
ghc-version: ${{ matrix.ghc }} | |
cabal-version: ${{ matrix.cabal }} | |
- name: Confirm GHC and Cabal installation | |
run: | | |
ghc --version | |
cabal --version | |
# Project Setup | |
- uses: actions/cache@v2 | |
name: Cache dist-newstyle | |
with: | |
path: | | |
~/.cabal/packages | |
~/.cabal/store | |
dist-newstyle | |
key: ${{ matrix.os }}-${{ matrix.ghc }}-4-cabal | |
# System dependencies | |
- name: Install liblzma | |
run: brew install xz # xz package contains liblzma | |
if: startsWith(matrix.os, 'macOS') | |
- name: Install postgresql | |
run: brew install postgresql # needed by libpq | |
if: startsWith(matrix.os, 'macOS') | |
# Build | |
- name: Update package database | |
run: cabal update | |
- name: Display outdated packages | |
run: | | |
cd haskell-src | |
cabal outdated | |
- name: Install build dependencies | |
run: | | |
cd haskell-src | |
cabal build --only-dependencies | |
- name: Build | |
run: | | |
cd haskell-src | |
cabal build | |
# Upload artifacts | |
- name: Copy build artifact | |
run: | | |
cd haskell-src | |
cp `cabal list-bin exe:chainweb-data` .. | |
- name: Stripping binary | |
run: strip chainweb-data | |
- uses: actions/upload-artifact@v2 | |
with: | |
name: chainweb-data-build-${{ matrix.os }} | |
path: chainweb-data | |
# Test | |
- name: Test | |
run: | | |
cd haskell-src | |
cabal v2-test |