Smoke test #73
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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 }} |