|
| 1 | +name: Tests |
| 2 | +# This workflow is intended to follow testing as performed manually |
| 3 | +# by an actual developer. This includes using make and relying on docker |
| 4 | +# or podman CLI to build images. |
| 5 | +# The intent is to verify that developers can run these tests locally, |
| 6 | +# with no, or at worst minimal, modifications. |
| 7 | +# As such, all changes, that would lead to divergence with recommended |
| 8 | +# developer practice, must be justified in comments. |
| 9 | +# Divergence: |
| 10 | +# SOURCE_BRANCH variable value is set for each execution of make, |
| 11 | +# since the actions/checkout execution switches to a single commit. |
| 12 | +# COMPOSE variable value is set to `podman-compose`, since podman is |
| 13 | +# default for github runners |
| 14 | + |
| 15 | +on: |
| 16 | + pull_request: |
| 17 | + push: |
| 18 | + branches: |
| 19 | + - main |
| 20 | + |
| 21 | +jobs: |
| 22 | + tests: |
| 23 | + runs-on: ubuntu-latest |
| 24 | + steps: |
| 25 | + - uses: actions/checkout@v4 |
| 26 | + |
| 27 | + - name: Install compose |
| 28 | + run: | |
| 29 | + sudo apt install podman-compose |
| 30 | + podman-compose --version |
| 31 | +
|
| 32 | + - name: Build Test Image |
| 33 | + run: make build-test-image SOURCE_BRANCH=${{ github.head_ref || github.ref_name }} |
| 34 | + |
| 35 | + - name: Run Unit and Integration Tests |
| 36 | + run: make check-in-container SOURCE_BRANCH=${{ github.head_ref || github.ref_name }} |
| 37 | + |
| 38 | + - name: Configure unprivileged ports |
| 39 | + run: sudo sysctl -w net.ipv4.ip_unprivileged_port_start=443 |
| 40 | + |
| 41 | + - name: Run Database Tests |
| 42 | + run: | |
| 43 | + make check-db SOURCE_BRANCH=${{ github.head_ref || github.ref_name }} COMPOSE=podman-compose |
0 commit comments