generated from phundrak/rust-poem-openapi-template
Lucien Cartier-Tilet
d9e29b62b7
This commit separates the core features of géjdr from the backend as these will also be used by the bot in the future. This commit also updates the dependencies of the project. It also removes the dependency lettre as well as the mailpit docker service for developers as it appears clearer this project won’t send emails anytime soon. The publication of a docker image is also postponed until later.
70 lines
2.0 KiB
YAML
70 lines
2.0 KiB
YAML
name: CI
|
|
on:
|
|
pull_request:
|
|
push:
|
|
env:
|
|
DATABASE_URL: ${{ vars.DATABASE_URL }}
|
|
|
|
concurrency:
|
|
group: ${{ gitea.workflow }}-${{ gitea.ref }}
|
|
cancel-in-progress: ${{ gitea.ref != 'ref/heads/master' }}
|
|
|
|
jobs:
|
|
tests:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: catthehacker/ubuntu:js-latest
|
|
options: --security-opt seccomp=unconfined
|
|
permissions:
|
|
pull-requests: write
|
|
services:
|
|
postgres:
|
|
image: postgres:16-alpine
|
|
env:
|
|
POSTGRES_PASSWORD: ${{ vars.DB_PASSWORD }}
|
|
POSTGRES_USER: ${{ vars.DB_USER }}
|
|
POSTGRES_DB: ${{ vars.DB_NAME }}
|
|
options: >-
|
|
--health-cmd pg_isready
|
|
--health-interval 10s
|
|
--health-timeout 10s
|
|
--health-retries 5
|
|
ports:
|
|
- 5432:5432
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install Nix
|
|
uses: cachix/install-nix-action@v27
|
|
with:
|
|
nix_path: nixpkgs=channel:nixos-unstable
|
|
- name: Migrate database
|
|
run: nix develop --command -- just migrate
|
|
- name: Formatting check
|
|
run: nix develop --command -- just format-check
|
|
- name: Lint
|
|
run: nix develop --command -- just lint
|
|
- name: Audit
|
|
run: nix develop --command -- just audit
|
|
- name: Tests
|
|
run: nix develop --command -- just test
|
|
- name: Coverage
|
|
run: nix develop --command -- just coverage-ci
|
|
- name: Code Coverage Report
|
|
uses: irongut/CodeCoverageSummary@v1.3.0
|
|
with:
|
|
filename: coverage/cobertura.xml
|
|
badge: true
|
|
fail_below_min: true
|
|
format: markdown
|
|
hide_branch_rate: false
|
|
hide_complexity: false
|
|
indicators: true
|
|
output: both
|
|
thresholds: '60 80'
|
|
- name: Add Coverage PR Comment
|
|
uses: mshick/add-pr-comment@v2
|
|
if: gitea.event_name == 'pull_request'
|
|
with:
|
|
recreate: true
|
|
message-path: code-coverage-results.md
|