Skip to content

Smoke test

Smoke test #73

Workflow file for this run

name: Smoke test
on:
push:
branches:
- master
schedule:
- cron: '0 23 * * 0' # Run every Sunday at 23:00 PM
workflow_dispatch: # Allows manual triggering
env:
python-version: "3.12"
concurrency:
group: "smoke-test" # Make sure, to not run multiple smoke tests at the same time
cancel-in-progress: false
jobs:
smoke_test:
runs-on: ubuntu-latest
strategy:
matrix:
country:
- ch
- de
- pl
- ma
steps:
- name: Get User Permission
id: checkAccess
uses: actions-cool/check-user-permission@v2
with:
require: read
username: ${{ github.triggering_actor }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Check User Permission
if: steps.checkAccess.outputs.require-result == 'false'
run: |
echo "${{ github.triggering_actor }} does not have permissions on this repo."
echo "Current permission level is ${{ steps.checkAccess.outputs.user-permission }}"
echo "Job originally triggered by ${{ github.actor }}"
exit 1
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python ${{ env.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ env.python-version }}
- name: Check secret access
run: |
if [[ "x${{ secrets.PASSWORD }}" != "x" ]]; then
echo "Access to secrets"
else
echo "No access to secrets"
exit 1
fi
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements_test.txt
- name: Prepare empty token
run: touch .token
- name: Test with pytest
run: pytest smoke_test -v -x
env:
COUNTRY: ${{ matrix.country }}
EMAIL_CH: ${{ vars.EMAIL_CH }}
EMAIL_DE: ${{ vars.EMAIL_DE }}
EMAIL_PL: ${{ vars.EMAIL_PL }}
EMAIL_MA: ${{ vars.EMAIL_MA }}
PASSWORD: ${{ secrets.PASSWORD }}