Skip to content

ZDX Test

ZDX Test #218

Workflow file for this run

name: ZDX Test
on:
pull_request:
types: [opened, synchronize]
merge_group:
types: [checks_requested]
push:
branches:
- master
schedule:
- cron: '0 14 * * 1-5' # UTC
workflow_dispatch:
jobs:
zdx-prod-tenants:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10"]
environment:
# - ZDX_ZS1
# - ZDX_ZSCLOUD
# - ZDX_ZS2
- ZDX_ZS3
environment: ${{ matrix.environment }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install Poetry
uses: Gr1N/setup-poetry@v9
with:
poetry-version: 1.8.3
- name: Get poetry cache directory
id: poetry-cache
run: echo "dir=$(poetry config cache-dir)" >> $GITHUB_OUTPUT
- name: Cache poetry dependencies
uses: actions/cache@v4
with:
path: ${{ steps.poetry-cache.outputs.dir }}
key: ${{ runner.os }}-poetry-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }}
restore-keys: |
${{ runner.os }}-poetry-${{ matrix.python_version }}-
- name: Install dependencies
run: poetry install
- name: Lint with flake8
run: |
poetry run make lint:zdx
- name: Run Pytest
uses: nick-fields/retry@v3
with:
max_attempts: 3
timeout_minutes: 45
command: |
poetry run make coverage:zdx
env:
ZDX_CLIENT_ID: ${{ secrets.ZDX_CLIENT_ID }}
ZDX_CLIENT_SECRET: ${{ secrets.ZDX_CLIENT_SECRET }}
- name: Publish test coverage
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./coverage.xml
fail_ci_if_error: true