-
-
Notifications
You must be signed in to change notification settings - Fork 75
60 lines (48 loc) · 1.69 KB
/
Copy pathmain.yml
File metadata and controls
60 lines (48 loc) · 1.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# Main GHC CI workflow. Inspired by
# https://github.com/geopython/pycsw/blob/master/.github/workflows/main.yml
#
# Author: Just van den Broecke - 2021
# Migrated to pixi - 2026 by @francbartoli
#
name: Main GHC CI ⚙️
on: [ push, pull_request ]
jobs:
main:
runs-on: ubuntu-24.04
steps:
- name: Checkout ✅
uses: actions/checkout@v4
# Installs pixi (pinned) and the `dev` environment from the committed
# pixi.lock (locked: true fails if the lock is out of sync). Python and
# all dependencies come from the lock, so no separate setup-python step.
- name: Setup pixi 🧰
uses: prefix-dev/setup-pixi@v0.10.0
with:
pixi-version: v0.72.0
environments: dev
locked: true
cache: true
- name: Setup GHC App and init DB 🗃️
run: |
pixi run -e dev setup
pixi run -e dev create -u admin -p admin -e a@a.com
- name: Flake8 - Verify Coding Conventions ⚙️
run: pixi run -e dev flake8
- name: Load Fixtures Test Data ⚙️
run: pixi run -e dev load-data tests/data/fixtures.json
# - name: Test DB downgrade to previous schema (via Alembic) ⚙️
# run: pixi run -e dev db-action downgrade
#
# - name: Test DB upgrade back to current schema (via Alembic) ⚙️
# run: pixi run -e dev db-action upgrade
- name: Run Probes ⚙️
run: pixi run -e dev run-healthchecks
- name: Run Unit Tests ⚙️
run: pixi run -e dev test
- name: Publish Test Report 📄
if: always()
run: cat report.md >> "$GITHUB_STEP_SUMMARY" || true
- name: Build Docs 📖
run: pixi run -e dev docs
- name: Cleanup 💯
run: pixi run -e dev drop-data