From 96f4f334b7cceb8803994d380c7263dec9a4686e Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Wed, 29 Oct 2025 14:09:31 +0100 Subject: [PATCH 1/8] Suppress false positive bandit B108 warnings in agent examples Add nosec comments to Docker environment variable configurations in CrewAI and Haystack examples. These /tmp paths are safe Docker env vars for writable storage locations, not insecure temp file operations that bandit's B108 rule is designed to catch. --- examples/agent_framework_integrations/crewai/run.py | 4 ++-- examples/agent_framework_integrations/haystack/run.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/agent_framework_integrations/crewai/run.py b/examples/agent_framework_integrations/crewai/run.py index 38f2b0f77e..da14f99e62 100644 --- a/examples/agent_framework_integrations/crewai/run.py +++ b/examples/agent_framework_integrations/crewai/run.py @@ -20,9 +20,9 @@ environment={ "OPENAI_API_KEY": os.getenv("OPENAI_API_KEY"), # Set home directory to a writable location for CrewAI storage - "HOME": "/tmp", + "HOME": "/tmp", # nosec B108 - Docker env var, not insecure file operation # Alternative: override the specific appdirs behavior - "XDG_DATA_HOME": "/tmp/.local/share", + "XDG_DATA_HOME": "/tmp/.local/share", # nosec B108 - Docker env var, not insecure file operation }, ) diff --git a/examples/agent_framework_integrations/haystack/run.py b/examples/agent_framework_integrations/haystack/run.py index 9060079694..7d2231d12d 100644 --- a/examples/agent_framework_integrations/haystack/run.py +++ b/examples/agent_framework_integrations/haystack/run.py @@ -18,7 +18,7 @@ environment={ "OPENAI_API_KEY": os.getenv("OPENAI_API_KEY"), # Set home directory to a writable location for Haystack storage - "HOME": "/tmp", + "HOME": "/tmp", # nosec B108 - Docker env var, not insecure file operation # Override Haystack-specific environment variables "HAYSTACK_CONTENT_TRACING_ENABLED": "false", "HAYSTACK_TELEMETRY_ENABLED": "false", From d44b26cc75a3ae0598dccfa3b0eb61e4002db391 Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 16:58:59 +0100 Subject: [PATCH 2/8] Test GH CI fix --- .github/workflows/ci-fast.yml | 31 ++++----- .github/workflows/ci-slow.yml | 63 ++++++++--------- .github/workflows/integration-test-fast.yml | 25 ++++--- .github/workflows/integration-test-slow.yml | 25 ++++--- .github/workflows/testing-fast.yml | 35 ++++++++++ .github/workflows/testing-slow.yml | 75 +++++++++++++++++++++ 6 files changed, 186 insertions(+), 68 deletions(-) create mode 100644 .github/workflows/testing-fast.yml create mode 100644 .github/workflows/testing-slow.yml diff --git a/.github/workflows/ci-fast.yml b/.github/workflows/ci-fast.yml index bb99f8aee1..43350c7a1f 100644 --- a/.github/workflows/ci-fast.yml +++ b/.github/workflows/ci-fast.yml @@ -2,13 +2,13 @@ name: ci-fast on: workflow_dispatch: - workflow_call: - push: - branches: [main] - paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] - pull_request: - types: [opened, synchronize, ready_for_review] - paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] + # workflow_call: + # push: + # branches: [main] + # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] + # pull_request: + # types: [opened, synchronize, ready_for_review] + # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] concurrency: # New commit on branch cancels running workflows of the same branch group: ${{ github.workflow }}-${{ github.ref }} @@ -23,7 +23,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v5.3.0 with: - python-version: '3.10' + python-version: "3.10" - name: Install darglint using uv run: | curl -LsSf https://astral.sh/uv/install.sh | sh @@ -46,7 +46,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: '3.10' + python-version: "3.10" - name: Test migrations across versions run: bash scripts/test-migrations.sh sqlite random spellcheck: @@ -69,17 +69,18 @@ jobs: - name: Set up Python 3.11 uses: actions/setup-python@v5.3.0 with: - python-version: '3.11' + python-version: "3.11" - name: Test API docs buildable run: bash scripts/generate-docs.sh -v DUMMY -c update-templates-to-examples: # this doesn't work on forked repositories (i.e. outside contributors) # so we disable template updates for those PRs / branches - if: github.event.pull_request.head.repo.full_name == 'zenml-io/zenml' && github.event.pull_request.draft + if: + github.event.pull_request.head.repo.full_name == 'zenml-io/zenml' && github.event.pull_request.draft == false uses: ./.github/workflows/update-templates-to-examples.yml with: - python-version: '3.11' + python-version: "3.11" os: ubuntu-latest secrets: inherit linting: @@ -87,7 +88,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ['3.11'] + python-version: ["3.11"] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -104,7 +105,7 @@ jobs: # excluded from the `ci-slow` workflow. If you change the configuration # here, please adjust the configuration of `ci-slow` accordingly. os: [ubuntu-latest] - python-version: ['3.11'] + python-version: ["3.11"] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -121,7 +122,7 @@ jobs: # excluded from the `ci-slow` workflow. If you change the configuration # here, please adjust the configuration of `ci-slow` accordingly. os: [ubuntu-latest] - python-version: ['3.11'] + python-version: ["3.11"] test_environment: [default, docker-server-docker-orchestrator-mysql] fail-fast: false uses: ./.github/workflows/integration-test-fast.yml diff --git a/.github/workflows/ci-slow.yml b/.github/workflows/ci-slow.yml index da86700b6b..197acb35a0 100644 --- a/.github/workflows/ci-slow.yml +++ b/.github/workflows/ci-slow.yml @@ -2,13 +2,13 @@ name: ci-slow on: workflow_dispatch: - workflow_call: - push: - branches: [main] - paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] - pull_request: - types: [opened, synchronize, ready_for_review] - paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] + # workflow_call: + # push: + # branches: [main] + # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] + # pull_request: + # types: [opened, synchronize, ready_for_review] + # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] concurrency: # New commit on branch cancels running workflows of the same branch group: ${{ github.workflow }}-${{ github.ref }} @@ -53,7 +53,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: '3.10' + python-version: "3.10" - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -76,7 +76,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: '3.10' + python-version: "3.10" - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -100,7 +100,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: '3.10' + python-version: "3.10" - name: Test migrations across versions run: bash scripts/test-migrations.sh sqlite full mariadb-db-migration-testing: @@ -117,7 +117,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: '3.10' + python-version: "3.10" - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -135,7 +135,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v5.3.0 with: - python-version: '3.11' + python-version: "3.11" - name: Install uv run: | curl -LsSf https://astral.sh/uv/install.sh | sh @@ -150,10 +150,11 @@ jobs: - name: Markdown link check uses: gaurav-nelson/github-action-markdown-link-check@1.0.15 with: - use-quiet-mode: 'yes' - use-verbose-mode: 'no' + use-quiet-mode: "yes" + use-verbose-mode: "no" folder-path: ./examples, ./docs/book, ./src - file-path: ./README.md, ./LICENSE, ./RELEASE_NOTES.md, CODE-OF-CONDUCT.md, + file-path: + ./README.md, ./LICENSE, ./RELEASE_NOTES.md, CODE-OF-CONDUCT.md, CONTRIBUTING.md, CLA.md, RELEASE_NOTES.md, ROADMAP.md config-file: .github/workflows/markdown_check_config.json continue-on-error: true @@ -177,7 +178,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ['3.10', '3.12', '3.13'] + python-version: ["3.10", "3.12", "3.13"] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -190,7 +191,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ['3.10', '3.12', '3.13'] + python-version: ["3.10", "3.12", "3.13"] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -203,7 +204,7 @@ jobs: strategy: matrix: os: [windows-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ["3.10", "3.11", "3.12", "3.13"] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -216,7 +217,7 @@ jobs: strategy: matrix: os: [windows-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ["3.10", "3.11", "3.12", "3.13"] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -229,7 +230,7 @@ jobs: strategy: matrix: os: [macos-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ["3.10", "3.11", "3.12", "3.13"] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -242,7 +243,7 @@ jobs: strategy: matrix: os: [macos-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ["3.10", "3.11", "3.12", "3.13"] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -255,7 +256,7 @@ jobs: strategy: matrix: os: [windows-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ["3.10", "3.11", "3.12", "3.13"] test_environment: [default] fail-fast: false uses: ./.github/workflows/integration-test-slow.yml @@ -270,7 +271,7 @@ jobs: strategy: matrix: os: [macos-latest] - python-version: ['3.10', '3.11', '3.12', '3.13'] + python-version: ["3.10", "3.11", "3.12", "3.13"] test_environment: [default] fail-fast: false uses: ./.github/workflows/integration-test-slow.yml @@ -285,7 +286,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ['3.10', '3.12', '3.13'] + python-version: ["3.10", "3.12", "3.13"] test_environment: - default - docker-server-docker-orchestrator-mysql @@ -293,17 +294,17 @@ jobs: exclude: # docker is time-consuming to run, so we only run it on 3.11 - test_environment: docker-server-docker-orchestrator-mysql - python-version: '3.10' + python-version: "3.10" - test_environment: docker-server-docker-orchestrator-mysql - python-version: '3.12' + python-version: "3.12" - test_environment: docker-server-docker-orchestrator-mysql - python-version: '3.13' + python-version: "3.13" - test_environment: docker-server-docker-orchestrator-mariadb - python-version: '3.10' + python-version: "3.10" - test_environment: docker-server-docker-orchestrator-mariadb - python-version: '3.12' + python-version: "3.12" - test_environment: docker-server-docker-orchestrator-mariadb - python-version: '3.13' + python-version: "3.13" fail-fast: false uses: ./.github/workflows/integration-test-slow.yml with: @@ -322,7 +323,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ['3.11'] + python-version: ["3.11"] fail-fast: false uses: ./.github/workflows/base-package-functionality.yml with: diff --git a/.github/workflows/integration-test-fast.yml b/.github/workflows/integration-test-fast.yml index 01e633b170..55b2bd5f7a 100644 --- a/.github/workflows/integration-test-fast.yml +++ b/.github/workflows/integration-test-fast.yml @@ -41,9 +41,9 @@ on: python-version: description: Python version type: choice - options: ['3.10', '3.11', '3.12', '3.13'] + options: ["3.10", "3.11", "3.12", "3.13"] required: false - default: '3.11' + default: "3.11" test_environment: description: The test environment type: choice @@ -71,7 +71,7 @@ on: type: choice options: [no, on-failure, always, before-tests] required: false - default: 'no' + default: "no" tmate_timeout: description: Timeout for tmate session (minutes) type: number @@ -98,7 +98,7 @@ jobs: # on MAC OS, we need to set this environment variable # to fix problems with the fork() calls (see this thread # for more information: http://sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html) - OBJC_DISABLE_INITIALIZE_FORK_SAFETY: 'YES' + OBJC_DISABLE_INITIALIZE_FORK_SAFETY: "YES" AWS_ACCESS_KEY_ID: ${{ secrets.AWS_US_EAST_1_ENV_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_US_EAST_1_ENV_SECRET_ACCESS_KEY }} AWS_US_EAST_1_SERVER_URL: ${{ secrets.AWS_US_EAST_1_SERVER_URL }} @@ -118,16 +118,18 @@ jobs: with: root-reserve-mb: 20000 swap-size-mb: 1024 - remove-dotnet: 'true' - remove-android: 'true' - remove-haskell: 'true' + remove-dotnet: "true" + remove-android: "true" + remove-haskell: "true" build-mount-path: /var/lib/docker/ - if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: + inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Reload Docker run: sudo systemctl restart docker - if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: + inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - uses: actions/checkout@v4.2.2 @@ -160,7 +162,8 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - if: github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, + if: + github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Setup environment @@ -252,7 +255,7 @@ jobs: # Ubuntu integration tests run as 6 shards if: runner.os != 'macOS' && runner.os != 'Windows' run: | - bash scripts/test-coverage-xml.sh integration ${{ inputs.test_environment }} 6 ${{ matrix.shard }} + bash scripts/test-coverage-xml.sh integration/functional/cli ${{ inputs.test_environment }} 6 ${{ matrix.shard }} - name: Setup tmate session after tests if: ${{ inputs.enable_tmate == 'always' || (inputs.enable_tmate == 'on-failure' && failure()) }} uses: mxschmitt/action-tmate@v3.17 diff --git a/.github/workflows/integration-test-slow.yml b/.github/workflows/integration-test-slow.yml index 37a5e6c23a..b6fbc54d9b 100644 --- a/.github/workflows/integration-test-slow.yml +++ b/.github/workflows/integration-test-slow.yml @@ -41,9 +41,9 @@ on: python-version: description: Python version type: choice - options: ['3.10', '3.11', '3.12', '3.13'] + options: ["3.10", "3.11", "3.12", "3.13"] required: false - default: '3.11' + default: "3.11" test_environment: description: The test environment type: choice @@ -70,7 +70,7 @@ on: type: choice options: [no, on-failure, always, before-tests] required: false - default: 'no' + default: "no" tmate_timeout: description: Timeout for tmate session (minutes) type: number @@ -95,7 +95,7 @@ jobs: # on MAC OS, we need to set this environment variable # to fix problems with the fork() calls (see this thread # for more information: http://sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html) - OBJC_DISABLE_INITIALIZE_FORK_SAFETY: 'YES' + OBJC_DISABLE_INITIALIZE_FORK_SAFETY: "YES" AWS_ACCESS_KEY_ID: ${{ secrets.AWS_US_EAST_1_ENV_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_US_EAST_1_ENV_SECRET_ACCESS_KEY }} AWS_US_EAST_1_SERVER_URL: ${{ secrets.AWS_US_EAST_1_SERVER_URL }} @@ -116,16 +116,18 @@ jobs: with: root-reserve-mb: 20000 swap-size-mb: 1024 - remove-dotnet: 'true' - remove-android: 'true' - remove-haskell: 'true' + remove-dotnet: "true" + remove-android: "true" + remove-haskell: "true" build-mount-path: /var/lib/docker/ - if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: + inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Reload Docker run: sudo systemctl restart docker - if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: + inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Login to Docker Hub @@ -133,7 +135,8 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - if: github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, + if: + github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - uses: actions/checkout@v4.2.2 @@ -209,7 +212,7 @@ jobs: timeout-minutes: ${{ inputs.tmate_timeout }} - name: Integration Tests - Slow CI run: | - bash scripts/test-coverage-xml.sh integration ${{ inputs.test_environment }} + bash scripts/test-coverage-xml.sh integration/functional/cli ${{ inputs.test_environment }} - name: Setup tmate session after tests if: ${{ inputs.enable_tmate == 'always' || (inputs.enable_tmate == 'on-failure' && failure()) }} uses: mxschmitt/action-tmate@v3.17 diff --git a/.github/workflows/testing-fast.yml b/.github/workflows/testing-fast.yml new file mode 100644 index 0000000000..a7920ea1fc --- /dev/null +++ b/.github/workflows/testing-fast.yml @@ -0,0 +1,35 @@ +--- +name: ci-fast +on: + workflow_dispatch: + workflow_call: + push: + branches: [main] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + pull_request: + types: [opened, synchronize, ready_for_review] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] +concurrency: + # New commit on branch cancels running workflows of the same branch + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true +jobs: + ubuntu-latest-integration-test: + needs: [linting] + if: github.event.pull_request.draft == false + strategy: + matrix: + # IMPORTANT: Since we are using the combination of `arc-runner-set` + # and `3.10` in our `ci-fast` workflow, this combination has been + # excluded from the `ci-slow` workflow. If you change the configuration + # here, please adjust the configuration of `ci-slow` accordingly. + os: [ubuntu-latest] + python-version: ["3.11"] + test_environment: [default, docker-server-docker-orchestrator-mysql] + fail-fast: false + uses: ./.github/workflows/integration-test-fast.yml + with: + os: ${{ matrix.os }} + python-version: ${{ matrix.python-version }} + test_environment: ${{ matrix.test_environment }} + secrets: inherit diff --git a/.github/workflows/testing-slow.yml b/.github/workflows/testing-slow.yml new file mode 100644 index 0000000000..20f24c4f52 --- /dev/null +++ b/.github/workflows/testing-slow.yml @@ -0,0 +1,75 @@ +--- +name: ci-slow +on: + workflow_dispatch: + workflow_call: + push: + branches: [main] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + pull_request: + types: [opened, synchronize, ready_for_review] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] +concurrency: + # New commit on branch cancels running workflows of the same branch + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true +jobs: + windows-integration-test: + if: github.event.pull_request.draft == false + strategy: + matrix: + os: [windows-latest] + python-version: ["3.10", "3.11", "3.12", "3.13"] + test_environment: [default] + fail-fast: false + uses: ./.github/workflows/integration-test-slow.yml + with: + os: ${{ matrix.os }} + python-version: ${{ matrix.python-version }} + test_environment: ${{ matrix.test_environment }} + secrets: inherit + macos-integration-test: + if: github.event.pull_request.draft == false + strategy: + matrix: + os: [macos-latest] + python-version: ["3.10", "3.11", "3.12", "3.13"] + test_environment: [default] + fail-fast: false + uses: ./.github/workflows/integration-test-slow.yml + with: + os: ${{ matrix.os }} + python-version: ${{ matrix.python-version }} + test_environment: ${{ matrix.test_environment }} + secrets: inherit + ubuntu-latest-integration-test: + if: github.event.pull_request.draft == false + strategy: + matrix: + os: [ubuntu-latest] + python-version: ["3.10", "3.12", "3.13"] + test_environment: + - default + - docker-server-docker-orchestrator-mysql + - docker-server-docker-orchestrator-mariadb + exclude: + # docker is time-consuming to run, so we only run it on 3.11 + - test_environment: docker-server-docker-orchestrator-mysql + python-version: "3.10" + - test_environment: docker-server-docker-orchestrator-mysql + python-version: "3.12" + - test_environment: docker-server-docker-orchestrator-mysql + python-version: "3.13" + - test_environment: docker-server-docker-orchestrator-mariadb + python-version: "3.10" + - test_environment: docker-server-docker-orchestrator-mariadb + python-version: "3.12" + - test_environment: docker-server-docker-orchestrator-mariadb + python-version: "3.13" + fail-fast: false + uses: ./.github/workflows/integration-test-slow.yml + with: + os: ${{ matrix.os }} + python-version: ${{ matrix.python-version }} + test_environment: ${{ matrix.test_environment }} + secrets: inherit From 591d0aa6654ad31e2e676e8a9752dcfcb332c4b5 Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 17:00:57 +0100 Subject: [PATCH 3/8] Update name --- .github/workflows/testing-fast.yml | 2 +- .github/workflows/testing-slow.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/testing-fast.yml b/.github/workflows/testing-fast.yml index a7920ea1fc..31e24a3d40 100644 --- a/.github/workflows/testing-fast.yml +++ b/.github/workflows/testing-fast.yml @@ -1,5 +1,5 @@ --- -name: ci-fast +name: ci-fast-test on: workflow_dispatch: workflow_call: diff --git a/.github/workflows/testing-slow.yml b/.github/workflows/testing-slow.yml index 20f24c4f52..b94bba0a30 100644 --- a/.github/workflows/testing-slow.yml +++ b/.github/workflows/testing-slow.yml @@ -1,5 +1,5 @@ --- -name: ci-slow +name: ci-slow-test on: workflow_dispatch: workflow_call: From fc4876519e06224af473f56f333c4d0bbfcd6713 Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 17:02:31 +0100 Subject: [PATCH 4/8] No need for linting --- .github/workflows/testing-fast.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/testing-fast.yml b/.github/workflows/testing-fast.yml index 31e24a3d40..a5d86f722e 100644 --- a/.github/workflows/testing-fast.yml +++ b/.github/workflows/testing-fast.yml @@ -15,7 +15,6 @@ concurrency: cancel-in-progress: true jobs: ubuntu-latest-integration-test: - needs: [linting] if: github.event.pull_request.draft == false strategy: matrix: From 87a0d5de4e07bea35d3daa5038c1ef19ef6d82c2 Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 17:25:26 +0100 Subject: [PATCH 5/8] Speed up tests --- .github/workflows/integration-test-fast.yml | 2 +- .github/workflows/integration-test-slow.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/integration-test-fast.yml b/.github/workflows/integration-test-fast.yml index 55b2bd5f7a..b8c80cacac 100644 --- a/.github/workflows/integration-test-fast.yml +++ b/.github/workflows/integration-test-fast.yml @@ -255,7 +255,7 @@ jobs: # Ubuntu integration tests run as 6 shards if: runner.os != 'macOS' && runner.os != 'Windows' run: | - bash scripts/test-coverage-xml.sh integration/functional/cli ${{ inputs.test_environment }} 6 ${{ matrix.shard }} + bash scripts/test-coverage-xml.sh integration/functional/cli/test_server.py::test_server_cli_up_down ${{ inputs.test_environment }} 6 ${{ matrix.shard }} - name: Setup tmate session after tests if: ${{ inputs.enable_tmate == 'always' || (inputs.enable_tmate == 'on-failure' && failure()) }} uses: mxschmitt/action-tmate@v3.17 diff --git a/.github/workflows/integration-test-slow.yml b/.github/workflows/integration-test-slow.yml index b6fbc54d9b..558afa1a51 100644 --- a/.github/workflows/integration-test-slow.yml +++ b/.github/workflows/integration-test-slow.yml @@ -212,7 +212,7 @@ jobs: timeout-minutes: ${{ inputs.tmate_timeout }} - name: Integration Tests - Slow CI run: | - bash scripts/test-coverage-xml.sh integration/functional/cli ${{ inputs.test_environment }} + bash scripts/test-coverage-xml.sh integration/functional/cli/test_server.py::test_server_cli_up_down ${{ inputs.test_environment }} - name: Setup tmate session after tests if: ${{ inputs.enable_tmate == 'always' || (inputs.enable_tmate == 'on-failure' && failure()) }} uses: mxschmitt/action-tmate@v3.17 From a3d2cdfd51525ee3f21485809be4f14154b4ed42 Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 17:25:39 +0100 Subject: [PATCH 6/8] Longer timeout for server test --- tests/integration/functional/cli/test_server.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/integration/functional/cli/test_server.py b/tests/integration/functional/cli/test_server.py index 12fd3ff6be..23e57da327 100644 --- a/tests/integration/functional/cli/test_server.py +++ b/tests/integration/functional/cli/test_server.py @@ -48,7 +48,7 @@ def test_server_cli_up_down(clean_client, mocker): cli_runner.invoke(login_command, ["--local", "--port", port]) # sleep for a bit to let the server start - time.sleep(5) + time.sleep(15) endpoint = f"http://127.0.0.1:{port}" assert requests.head(endpoint + "/health", timeout=16).status_code == 200 @@ -66,7 +66,7 @@ def test_server_cli_up_down(clean_client, mocker): cli_runner.invoke(logout_command) # sleep for a bit to let the server stop - time.sleep(5) + time.sleep(15) deployer = LocalServerDeployer() with pytest.raises(ServerDeploymentNotFoundError): From 71263ae5c83711093a1fbf2563cd557d0aa392f2 Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 18:11:34 +0100 Subject: [PATCH 7/8] Revert testing stuff --- .github/workflows/ci-fast.yml | 14 ++-- .github/workflows/ci-slow.yml | 14 ++-- .github/workflows/integration-test-fast.yml | 2 +- .github/workflows/integration-test-slow.yml | 2 +- .github/workflows/testing-fast.yml | 34 --------- .github/workflows/testing-slow.yml | 75 ------------------- .../integration/functional/cli/test_server.py | 4 +- 7 files changed, 18 insertions(+), 127 deletions(-) delete mode 100644 .github/workflows/testing-fast.yml delete mode 100644 .github/workflows/testing-slow.yml diff --git a/.github/workflows/ci-fast.yml b/.github/workflows/ci-fast.yml index 43350c7a1f..e617afeff5 100644 --- a/.github/workflows/ci-fast.yml +++ b/.github/workflows/ci-fast.yml @@ -2,13 +2,13 @@ name: ci-fast on: workflow_dispatch: - # workflow_call: - # push: - # branches: [main] - # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] - # pull_request: - # types: [opened, synchronize, ready_for_review] - # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] + workflow_call: + push: + branches: [main] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + pull_request: + types: [opened, synchronize, ready_for_review] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] concurrency: # New commit on branch cancels running workflows of the same branch group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/ci-slow.yml b/.github/workflows/ci-slow.yml index 197acb35a0..148159db58 100644 --- a/.github/workflows/ci-slow.yml +++ b/.github/workflows/ci-slow.yml @@ -2,13 +2,13 @@ name: ci-slow on: workflow_dispatch: - # workflow_call: - # push: - # branches: [main] - # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] - # pull_request: - # types: [opened, synchronize, ready_for_review] - # paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] + workflow_call: + push: + branches: [main] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + pull_request: + types: [opened, synchronize, ready_for_review] + paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] concurrency: # New commit on branch cancels running workflows of the same branch group: ${{ github.workflow }}-${{ github.ref }} diff --git a/.github/workflows/integration-test-fast.yml b/.github/workflows/integration-test-fast.yml index b8c80cacac..6b7f4c4894 100644 --- a/.github/workflows/integration-test-fast.yml +++ b/.github/workflows/integration-test-fast.yml @@ -255,7 +255,7 @@ jobs: # Ubuntu integration tests run as 6 shards if: runner.os != 'macOS' && runner.os != 'Windows' run: | - bash scripts/test-coverage-xml.sh integration/functional/cli/test_server.py::test_server_cli_up_down ${{ inputs.test_environment }} 6 ${{ matrix.shard }} + bash scripts/test-coverage-xml.sh integration ${{ inputs.test_environment }} 6 ${{ matrix.shard }} - name: Setup tmate session after tests if: ${{ inputs.enable_tmate == 'always' || (inputs.enable_tmate == 'on-failure' && failure()) }} uses: mxschmitt/action-tmate@v3.17 diff --git a/.github/workflows/integration-test-slow.yml b/.github/workflows/integration-test-slow.yml index 558afa1a51..554fa2bf26 100644 --- a/.github/workflows/integration-test-slow.yml +++ b/.github/workflows/integration-test-slow.yml @@ -212,7 +212,7 @@ jobs: timeout-minutes: ${{ inputs.tmate_timeout }} - name: Integration Tests - Slow CI run: | - bash scripts/test-coverage-xml.sh integration/functional/cli/test_server.py::test_server_cli_up_down ${{ inputs.test_environment }} + bash scripts/test-coverage-xml.sh integration ${{ inputs.test_environment }} - name: Setup tmate session after tests if: ${{ inputs.enable_tmate == 'always' || (inputs.enable_tmate == 'on-failure' && failure()) }} uses: mxschmitt/action-tmate@v3.17 diff --git a/.github/workflows/testing-fast.yml b/.github/workflows/testing-fast.yml deleted file mode 100644 index a5d86f722e..0000000000 --- a/.github/workflows/testing-fast.yml +++ /dev/null @@ -1,34 +0,0 @@ ---- -name: ci-fast-test -on: - workflow_dispatch: - workflow_call: - push: - branches: [main] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] - pull_request: - types: [opened, synchronize, ready_for_review] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] -concurrency: - # New commit on branch cancels running workflows of the same branch - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true -jobs: - ubuntu-latest-integration-test: - if: github.event.pull_request.draft == false - strategy: - matrix: - # IMPORTANT: Since we are using the combination of `arc-runner-set` - # and `3.10` in our `ci-fast` workflow, this combination has been - # excluded from the `ci-slow` workflow. If you change the configuration - # here, please adjust the configuration of `ci-slow` accordingly. - os: [ubuntu-latest] - python-version: ["3.11"] - test_environment: [default, docker-server-docker-orchestrator-mysql] - fail-fast: false - uses: ./.github/workflows/integration-test-fast.yml - with: - os: ${{ matrix.os }} - python-version: ${{ matrix.python-version }} - test_environment: ${{ matrix.test_environment }} - secrets: inherit diff --git a/.github/workflows/testing-slow.yml b/.github/workflows/testing-slow.yml deleted file mode 100644 index b94bba0a30..0000000000 --- a/.github/workflows/testing-slow.yml +++ /dev/null @@ -1,75 +0,0 @@ ---- -name: ci-slow-test -on: - workflow_dispatch: - workflow_call: - push: - branches: [main] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] - pull_request: - types: [opened, synchronize, ready_for_review] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] -concurrency: - # New commit on branch cancels running workflows of the same branch - group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true -jobs: - windows-integration-test: - if: github.event.pull_request.draft == false - strategy: - matrix: - os: [windows-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] - test_environment: [default] - fail-fast: false - uses: ./.github/workflows/integration-test-slow.yml - with: - os: ${{ matrix.os }} - python-version: ${{ matrix.python-version }} - test_environment: ${{ matrix.test_environment }} - secrets: inherit - macos-integration-test: - if: github.event.pull_request.draft == false - strategy: - matrix: - os: [macos-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] - test_environment: [default] - fail-fast: false - uses: ./.github/workflows/integration-test-slow.yml - with: - os: ${{ matrix.os }} - python-version: ${{ matrix.python-version }} - test_environment: ${{ matrix.test_environment }} - secrets: inherit - ubuntu-latest-integration-test: - if: github.event.pull_request.draft == false - strategy: - matrix: - os: [ubuntu-latest] - python-version: ["3.10", "3.12", "3.13"] - test_environment: - - default - - docker-server-docker-orchestrator-mysql - - docker-server-docker-orchestrator-mariadb - exclude: - # docker is time-consuming to run, so we only run it on 3.11 - - test_environment: docker-server-docker-orchestrator-mysql - python-version: "3.10" - - test_environment: docker-server-docker-orchestrator-mysql - python-version: "3.12" - - test_environment: docker-server-docker-orchestrator-mysql - python-version: "3.13" - - test_environment: docker-server-docker-orchestrator-mariadb - python-version: "3.10" - - test_environment: docker-server-docker-orchestrator-mariadb - python-version: "3.12" - - test_environment: docker-server-docker-orchestrator-mariadb - python-version: "3.13" - fail-fast: false - uses: ./.github/workflows/integration-test-slow.yml - with: - os: ${{ matrix.os }} - python-version: ${{ matrix.python-version }} - test_environment: ${{ matrix.test_environment }} - secrets: inherit diff --git a/tests/integration/functional/cli/test_server.py b/tests/integration/functional/cli/test_server.py index 23e57da327..12fd3ff6be 100644 --- a/tests/integration/functional/cli/test_server.py +++ b/tests/integration/functional/cli/test_server.py @@ -48,7 +48,7 @@ def test_server_cli_up_down(clean_client, mocker): cli_runner.invoke(login_command, ["--local", "--port", port]) # sleep for a bit to let the server start - time.sleep(15) + time.sleep(5) endpoint = f"http://127.0.0.1:{port}" assert requests.head(endpoint + "/health", timeout=16).status_code == 200 @@ -66,7 +66,7 @@ def test_server_cli_up_down(clean_client, mocker): cli_runner.invoke(logout_command) # sleep for a bit to let the server stop - time.sleep(15) + time.sleep(5) deployer = LocalServerDeployer() with pytest.raises(ServerDeploymentNotFoundError): From 620c4e655113263c9b4c3e4b41855f494e78cd0f Mon Sep 17 00:00:00 2001 From: Alex Strick van Linschoten Date: Fri, 31 Oct 2025 18:12:39 +0100 Subject: [PATCH 8/8] Yamlfix fixes --- .github/workflows/ci-fast.yml | 21 ++++---- .github/workflows/ci-slow.yml | 53 ++++++++++----------- .github/workflows/integration-test-fast.yml | 23 ++++----- .github/workflows/integration-test-slow.yml | 23 ++++----- 4 files changed, 56 insertions(+), 64 deletions(-) diff --git a/.github/workflows/ci-fast.yml b/.github/workflows/ci-fast.yml index e617afeff5..bb99f8aee1 100644 --- a/.github/workflows/ci-fast.yml +++ b/.github/workflows/ci-fast.yml @@ -5,10 +5,10 @@ on: workflow_call: push: branches: [main] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] pull_request: types: [opened, synchronize, ready_for_review] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] concurrency: # New commit on branch cancels running workflows of the same branch group: ${{ github.workflow }}-${{ github.ref }} @@ -23,7 +23,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v5.3.0 with: - python-version: "3.10" + python-version: '3.10' - name: Install darglint using uv run: | curl -LsSf https://astral.sh/uv/install.sh | sh @@ -46,7 +46,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: "3.10" + python-version: '3.10' - name: Test migrations across versions run: bash scripts/test-migrations.sh sqlite random spellcheck: @@ -69,18 +69,17 @@ jobs: - name: Set up Python 3.11 uses: actions/setup-python@v5.3.0 with: - python-version: "3.11" + python-version: '3.11' - name: Test API docs buildable run: bash scripts/generate-docs.sh -v DUMMY -c update-templates-to-examples: # this doesn't work on forked repositories (i.e. outside contributors) # so we disable template updates for those PRs / branches - if: - github.event.pull_request.head.repo.full_name == 'zenml-io/zenml' && github.event.pull_request.draft + if: github.event.pull_request.head.repo.full_name == 'zenml-io/zenml' && github.event.pull_request.draft == false uses: ./.github/workflows/update-templates-to-examples.yml with: - python-version: "3.11" + python-version: '3.11' os: ubuntu-latest secrets: inherit linting: @@ -88,7 +87,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ["3.11"] + python-version: ['3.11'] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -105,7 +104,7 @@ jobs: # excluded from the `ci-slow` workflow. If you change the configuration # here, please adjust the configuration of `ci-slow` accordingly. os: [ubuntu-latest] - python-version: ["3.11"] + python-version: ['3.11'] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -122,7 +121,7 @@ jobs: # excluded from the `ci-slow` workflow. If you change the configuration # here, please adjust the configuration of `ci-slow` accordingly. os: [ubuntu-latest] - python-version: ["3.11"] + python-version: ['3.11'] test_environment: [default, docker-server-docker-orchestrator-mysql] fail-fast: false uses: ./.github/workflows/integration-test-fast.yml diff --git a/.github/workflows/ci-slow.yml b/.github/workflows/ci-slow.yml index 148159db58..da86700b6b 100644 --- a/.github/workflows/ci-slow.yml +++ b/.github/workflows/ci-slow.yml @@ -5,10 +5,10 @@ on: workflow_call: push: branches: [main] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] pull_request: types: [opened, synchronize, ready_for_review] - paths-ignore: [docs/**, "*", "!pyproject.toml", "**.md"] + paths-ignore: [docs/**, '*', '!pyproject.toml', '**.md'] concurrency: # New commit on branch cancels running workflows of the same branch group: ${{ github.workflow }}-${{ github.ref }} @@ -53,7 +53,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: "3.10" + python-version: '3.10' - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -76,7 +76,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: "3.10" + python-version: '3.10' - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -100,7 +100,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: "3.10" + python-version: '3.10' - name: Test migrations across versions run: bash scripts/test-migrations.sh sqlite full mariadb-db-migration-testing: @@ -117,7 +117,7 @@ jobs: - name: Set up Python 3.10 uses: actions/setup-python@v5.3.0 with: - python-version: "3.10" + python-version: '3.10' - name: Login to Docker Hub uses: docker/login-action@v3 with: @@ -135,7 +135,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v5.3.0 with: - python-version: "3.11" + python-version: '3.11' - name: Install uv run: | curl -LsSf https://astral.sh/uv/install.sh | sh @@ -150,11 +150,10 @@ jobs: - name: Markdown link check uses: gaurav-nelson/github-action-markdown-link-check@1.0.15 with: - use-quiet-mode: "yes" - use-verbose-mode: "no" + use-quiet-mode: 'yes' + use-verbose-mode: 'no' folder-path: ./examples, ./docs/book, ./src - file-path: - ./README.md, ./LICENSE, ./RELEASE_NOTES.md, CODE-OF-CONDUCT.md, + file-path: ./README.md, ./LICENSE, ./RELEASE_NOTES.md, CODE-OF-CONDUCT.md, CONTRIBUTING.md, CLA.md, RELEASE_NOTES.md, ROADMAP.md config-file: .github/workflows/markdown_check_config.json continue-on-error: true @@ -178,7 +177,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.12", "3.13"] + python-version: ['3.10', '3.12', '3.13'] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -191,7 +190,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.12", "3.13"] + python-version: ['3.10', '3.12', '3.13'] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -204,7 +203,7 @@ jobs: strategy: matrix: os: [windows-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ['3.10', '3.11', '3.12', '3.13'] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -217,7 +216,7 @@ jobs: strategy: matrix: os: [windows-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ['3.10', '3.11', '3.12', '3.13'] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -230,7 +229,7 @@ jobs: strategy: matrix: os: [macos-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ['3.10', '3.11', '3.12', '3.13'] fail-fast: false uses: ./.github/workflows/linting.yml with: @@ -243,7 +242,7 @@ jobs: strategy: matrix: os: [macos-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ['3.10', '3.11', '3.12', '3.13'] fail-fast: false uses: ./.github/workflows/unit-test.yml with: @@ -256,7 +255,7 @@ jobs: strategy: matrix: os: [windows-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ['3.10', '3.11', '3.12', '3.13'] test_environment: [default] fail-fast: false uses: ./.github/workflows/integration-test-slow.yml @@ -271,7 +270,7 @@ jobs: strategy: matrix: os: [macos-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ['3.10', '3.11', '3.12', '3.13'] test_environment: [default] fail-fast: false uses: ./.github/workflows/integration-test-slow.yml @@ -286,7 +285,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.12", "3.13"] + python-version: ['3.10', '3.12', '3.13'] test_environment: - default - docker-server-docker-orchestrator-mysql @@ -294,17 +293,17 @@ jobs: exclude: # docker is time-consuming to run, so we only run it on 3.11 - test_environment: docker-server-docker-orchestrator-mysql - python-version: "3.10" + python-version: '3.10' - test_environment: docker-server-docker-orchestrator-mysql - python-version: "3.12" + python-version: '3.12' - test_environment: docker-server-docker-orchestrator-mysql - python-version: "3.13" + python-version: '3.13' - test_environment: docker-server-docker-orchestrator-mariadb - python-version: "3.10" + python-version: '3.10' - test_environment: docker-server-docker-orchestrator-mariadb - python-version: "3.12" + python-version: '3.12' - test_environment: docker-server-docker-orchestrator-mariadb - python-version: "3.13" + python-version: '3.13' fail-fast: false uses: ./.github/workflows/integration-test-slow.yml with: @@ -323,7 +322,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - python-version: ["3.11"] + python-version: ['3.11'] fail-fast: false uses: ./.github/workflows/base-package-functionality.yml with: diff --git a/.github/workflows/integration-test-fast.yml b/.github/workflows/integration-test-fast.yml index 6b7f4c4894..01e633b170 100644 --- a/.github/workflows/integration-test-fast.yml +++ b/.github/workflows/integration-test-fast.yml @@ -41,9 +41,9 @@ on: python-version: description: Python version type: choice - options: ["3.10", "3.11", "3.12", "3.13"] + options: ['3.10', '3.11', '3.12', '3.13'] required: false - default: "3.11" + default: '3.11' test_environment: description: The test environment type: choice @@ -71,7 +71,7 @@ on: type: choice options: [no, on-failure, always, before-tests] required: false - default: "no" + default: 'no' tmate_timeout: description: Timeout for tmate session (minutes) type: number @@ -98,7 +98,7 @@ jobs: # on MAC OS, we need to set this environment variable # to fix problems with the fork() calls (see this thread # for more information: http://sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html) - OBJC_DISABLE_INITIALIZE_FORK_SAFETY: "YES" + OBJC_DISABLE_INITIALIZE_FORK_SAFETY: 'YES' AWS_ACCESS_KEY_ID: ${{ secrets.AWS_US_EAST_1_ENV_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_US_EAST_1_ENV_SECRET_ACCESS_KEY }} AWS_US_EAST_1_SERVER_URL: ${{ secrets.AWS_US_EAST_1_SERVER_URL }} @@ -118,18 +118,16 @@ jobs: with: root-reserve-mb: 20000 swap-size-mb: 1024 - remove-dotnet: "true" - remove-android: "true" - remove-haskell: "true" + remove-dotnet: 'true' + remove-android: 'true' + remove-haskell: 'true' build-mount-path: /var/lib/docker/ - if: - inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Reload Docker run: sudo systemctl restart docker - if: - inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - uses: actions/checkout@v4.2.2 @@ -162,8 +160,7 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - if: - github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, + if: github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Setup environment diff --git a/.github/workflows/integration-test-slow.yml b/.github/workflows/integration-test-slow.yml index 554fa2bf26..37a5e6c23a 100644 --- a/.github/workflows/integration-test-slow.yml +++ b/.github/workflows/integration-test-slow.yml @@ -41,9 +41,9 @@ on: python-version: description: Python version type: choice - options: ["3.10", "3.11", "3.12", "3.13"] + options: ['3.10', '3.11', '3.12', '3.13'] required: false - default: "3.11" + default: '3.11' test_environment: description: The test environment type: choice @@ -70,7 +70,7 @@ on: type: choice options: [no, on-failure, always, before-tests] required: false - default: "no" + default: 'no' tmate_timeout: description: Timeout for tmate session (minutes) type: number @@ -95,7 +95,7 @@ jobs: # on MAC OS, we need to set this environment variable # to fix problems with the fork() calls (see this thread # for more information: http://sealiesoftware.com/blog/archive/2017/6/5/Objective-C_and_fork_in_macOS_1013.html) - OBJC_DISABLE_INITIALIZE_FORK_SAFETY: "YES" + OBJC_DISABLE_INITIALIZE_FORK_SAFETY: 'YES' AWS_ACCESS_KEY_ID: ${{ secrets.AWS_US_EAST_1_ENV_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_US_EAST_1_ENV_SECRET_ACCESS_KEY }} AWS_US_EAST_1_SERVER_URL: ${{ secrets.AWS_US_EAST_1_SERVER_URL }} @@ -116,18 +116,16 @@ jobs: with: root-reserve-mb: 20000 swap-size-mb: 1024 - remove-dotnet: "true" - remove-android: "true" - remove-haskell: "true" + remove-dotnet: 'true' + remove-android: 'true' + remove-haskell: 'true' build-mount-path: /var/lib/docker/ - if: - inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Reload Docker run: sudo systemctl restart docker - if: - inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') + if: inputs.os == 'ubuntu-latest' && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - name: Login to Docker Hub @@ -135,8 +133,7 @@ jobs: with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - if: - github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, + if: github.event.pull_request.head.repo.fork == false && (contains(inputs.test_environment, 'docker') || contains(inputs.test_environment, 'kubeflow') || contains(inputs.test_environment, 'airflow') || contains(inputs.test_environment, 'kubernetes')) - uses: actions/checkout@v4.2.2