improve a bit the app #21
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: Cabal CI | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
permissions: | |
contents: read | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: haskell-actions/setup@v2 | |
with: | |
ghc-version: '9.2.8' | |
cabal-version: 'latest' | |
# install z3 | |
- name: Setup Z3 | |
id: z3 | |
uses: cda-tum/setup-z3@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# install keelungc | |
- name: Install keelungc | |
run: | | |
git clone https://github.com/btq-ag/keelung-compiler | |
cd keelung-compiler | |
git fetch --all --tags | |
git checkout tags/v0.19.1 | |
stack install | |
- name: Move keelungc binary to /usr/local/bin/ | |
run: sudo mv $(stack path --local-bin)/keelungc /usr/local/bin/ | |
- name: Cache | |
uses: actions/cache@v3 | |
env: | |
cache-name: cache-cabal | |
with: | |
path: ~/.cabal | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/*.cabal') }}-${{ hashFiles('**/cabal.project') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- name: Install dependencies | |
run: | | |
cabal update | |
cabal build --only-dependencies --enable-tests --enable-benchmarks | |
- name: Build | |
run: cabal build --enable-tests --enable-benchmarks all | |
- name: Run fast tests | |
run: cabal test salsa20-fast-unit-tests | |
- name: Run ECRYPT 128 bits key size tests | |
run: cabal test salsa20-ecrypt128-tests | |
- name: Run ECRYPT 256 bits key size tests | |
run: cabal test salsa20-ecrypt256-tests | |
- name: Run display tests | |
run: cabal test salsa20-display-unit-tests | |
- name: Run keelung tests | |
run: cabal test salsa20-keelung-unit-tests |