84 lines
2.2 KiB
YAML
84 lines
2.2 KiB
YAML
name: Tests
|
|
|
|
on:
|
|
push:
|
|
branches: [ master, develop ]
|
|
pull_request:
|
|
branches: [ master, develop ]
|
|
|
|
jobs:
|
|
test:
|
|
name: Test metadata
|
|
runs-on: ${{ matrix.os }}
|
|
env:
|
|
YAML_VER: 0.0.7
|
|
strategy:
|
|
matrix:
|
|
ghc:
|
|
- '8.10.7'
|
|
cabal:
|
|
- '3.6.2.0'
|
|
os:
|
|
- ubuntu-22.04
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
|
|
- uses: haskell/actions/setup@v1.2
|
|
with:
|
|
ghc-version: ${{ matrix.ghc }}
|
|
cabal-version: ${{ matrix.cabal }}
|
|
|
|
- name: Cache Cabal
|
|
uses: actions/cache@v2
|
|
env:
|
|
cache-name: cache-cabal
|
|
with:
|
|
path: |
|
|
~/.cabal/store
|
|
~/.cabal/packages
|
|
key: v2-${{ runner.os }}-${{ matrix.ghc }}-${{ matrix.cabal }}-build-${{ hashFiles('cabal.project') }}
|
|
restore-keys: |
|
|
v2-${{ runner.os }}-${{ matrix.ghc }}-${{ matrix.cabal }}-build-${{ hashFiles('cabal.project') }}
|
|
v2-${{ runner.os }}-${{ matrix.ghc }}-${{ matrix.cabal }}-build-
|
|
v2-${{ runner.os }}-${{ matrix.ghc }}
|
|
|
|
- name: create ~/.local/bin
|
|
run: mkdir -p "$HOME/.local/bin"
|
|
shell: bash
|
|
|
|
- name: Add ~/.local/bin to PATH
|
|
run: echo "$HOME/.local/bin" >> $GITHUB_PATH
|
|
shell: bash
|
|
|
|
- name: install yamllint
|
|
run: pip install yamllint
|
|
|
|
- name: Update cabal cache
|
|
run: cabal update
|
|
shell: bash
|
|
|
|
- name: Install some deps
|
|
run: |
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
export TZ=Asia/Singapore
|
|
sudo apt install -y libarchive-dev
|
|
shell: bash
|
|
|
|
- name: Install ghcup-gen
|
|
run: |
|
|
cabal install --installdir="$HOME/.local/bin" --overwrite-policy=always --install-method=copy ghcup-gen
|
|
shell: bash
|
|
|
|
- name: Check yaml
|
|
run: |
|
|
ghcup-gen -- check -f ghcup-${{ env.YAML_VER }}.yaml
|
|
yamllint ghcup-${{ env.YAML_VER }}.yaml
|
|
python3 -c "import yaml ; stream = open('ghcup-${{ env.YAML_VER }}.yaml', 'r') ; yaml.safe_load(stream)"
|
|
shell: bash
|
|
|
|
- name: Check tarballs
|
|
run: |
|
|
ghcup-gen -- check-tarballs -f ghcup-${{ env.YAML_VER }}.yaml -u 'ghcup-.*'
|
|
shell: bash
|