Skip to content

ZPA Test

ZPA Test #488

Workflow file for this run

name: ZPA 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:
# zpa-qa1-tenants:
# runs-on: ubuntu-latest
# strategy:
# fail-fast: false
# matrix:
# python-version: ["3.10"]
# environment:
# - ZPA_QA_TENANT01
# - ZPA_QA_TENANT02
# 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:zpa
# - name: Run Pytest
# uses: nick-fields/retry@v3
# with:
# max_attempts: 3
# timeout_minutes: 45
# command: |
# poetry run make sweep:zpa
# poetry run make coverage:zpa
# poetry run make sweep:zpa
# env:
# ZPA_CLIENT_ID: ${{ secrets.ZPA_CLIENT_ID }}
# ZPA_CLIENT_SECRET: ${{ secrets.ZPA_CLIENT_SECRET }}
# ZPA_CUSTOMER_ID: ${{ secrets.ZPA_CUSTOMER_ID }}
# ZPA_CLOUD: ${{ secrets.ZPA_CLOUD }}
# ZPA_SDK_TEST_SWEEP: ${{ secrets.ZPA_SDK_TEST_SWEEP }}
# ZSCALER_CLIENT_CACHE_ENABLED: ${{ secrets.ZSCALER_CLIENT_CACHE_ENABLED }}
# OKTA_CLIENT_ORGURL: ${{ secrets.OKTA_CLIENT_ORGURL }}
# OKTA_CLIENT_TOKEN: ${{ secrets.OKTA_CLIENT_TOKEN }}
zpa-prod-tenants:
# needs: [zpa-qa1-tenants]
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10"]
environment:
- ZPA_PROD_TENANT01
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:zpa
- name: Run Pytest
uses: nick-fields/retry@v3
with:
max_attempts: 3
timeout_minutes: 45
command: |
poetry run make sweep:zpa
poetry run make coverage:zpa
poetry run make sweep:zpa
env:
ZPA_CLIENT_ID: ${{ secrets.ZPA_CLIENT_ID }}
ZPA_CLIENT_SECRET: ${{ secrets.ZPA_CLIENT_SECRET }}
ZPA_CUSTOMER_ID: ${{ secrets.ZPA_CUSTOMER_ID }}
ZPA_CLOUD: ${{ secrets.ZPA_CLOUD }}
ZPA_SDK_TEST_SWEEP: ${{ secrets.ZPA_SDK_TEST_SWEEP }}
ZSCALER_CLIENT_CACHE_ENABLED: ${{ secrets.ZSCALER_CLIENT_CACHE_ENABLED }}
OKTA_CLIENT_ORGURL: ${{ secrets.OKTA_CLIENT_ORGURL }}
OKTA_CLIENT_TOKEN: ${{ secrets.OKTA_CLIENT_TOKEN }}
- name: Publish test coverage
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ./coverage.xml
fail_ci_if_error: true