space2stats-client #635
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: "Run Tests" | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
types: | |
- opened | |
- synchronize | |
- reopened | |
- closed | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.11 | |
- name: Install Poetry | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install poetry | |
- name: Install dependencies for API | |
working-directory: ./space2stats_api/src | |
run: | | |
poetry install --with test | |
- name: Install lib postgres | |
uses: nyurik/action-setup-postgis@v2 | |
- name: Run pre-commit for API | |
working-directory: ./space2stats_api/src | |
run: | | |
poetry run pre-commit run --all-files | |
- name: Run API tests | |
working-directory: ./space2stats_api/src | |
run: | | |
poetry run python -m pytest --benchmark-skip tests | |
env: | |
PGHOST: localhost | |
PGPORT: 5432 | |
PGDATABASE: mydatabase | |
PGUSER: myuser | |
PGPASSWORD: mypassword | |
PGTABLENAME: space2stats | |
S3_BUCKET_NAME: test-bucket | |
- name: Install dependencies for Client | |
working-directory: ./space2stats_client | |
run: | | |
poetry install --with test | |
- name: Run pre-commit for Client | |
working-directory: ./space2stats_client | |
run: | | |
poetry run pre-commit run --all-files | |
- name: Run Client tests | |
working-directory: ./space2stats_client | |
run: | | |
poetry run python -m pytest tests | |
deploy-to-dev: | |
if: ${{ github.event_name == 'pull_request' }} | |
needs: test | |
uses: "./.github/workflows/reusable-deploy.yml" | |
with: | |
environment: Space2Stats API Dev | |
stage: pr-${{ github.event.pull_request.number }} | |
pr-number: ${{ github.event.pull_request.number }} | |
secrets: inherit | |
deploy-to-production: | |
if: ${{ github.event_name == 'push' && github.ref_name == 'main' }} | |
needs: test | |
uses: "./.github/workflows/reusable-deploy.yml" | |
with: | |
environment: Space2Stats API Prod | |
stage: prod | |
secrets: inherit |