diff --git a/.github/workflows/100-dispatch-common.yml b/.github/workflows/100-dispatch-common.yml deleted file mode 100644 index 0e1a48369d6..00000000000 --- a/.github/workflows/100-dispatch-common.yml +++ /dev/null @@ -1,135 +0,0 @@ -# WARNING: This workflow handles repository secrets (PYCLOUDLIB_TOML_B64, SSH keys). -# It MUST NOT be triggered by PR-driven workflows to prevent secret exposure to -# untrusted code submitted via pull requests. -name: "Dispatch: Integration" - -on: - workflow_call: - inputs: - release: - required: true - type: string - platform: - required: true - type: string - image_type: - required: true - type: string - install_source: - required: true - type: string - filter_tests: - required: false - type: string - secrets: - PYCLOUDLIB_TOML_B64: - required: true - SSH_PRIVATE_KEY: - required: true - SSH_PUBLIC_KEY: - required: true - -jobs: - integration-test: - runs-on: ubuntu-latest - if: github.repository == 'canonical/cloud-init' - - env: - REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} - SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} - SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} - CLOUD_INIT_PLATFORM: ${{ inputs.platform }} - CLOUD_INIT_OS_IMAGE: ${{ inputs.release }} - CLOUD_INIT_OS_IMAGE_TYPE: ${{ inputs.image_type }} - CLOUD_INIT_CLOUD_INIT_SOURCE: ${{ inputs.install_source }} - - steps: - - name: Assert required repo secrets are set - run: | - if [ -z "$REQUIRED_SECRET" ]; then - echo "ERROR: Missing required repo secret. Please provide the necessary repo secret at ${{ github.repository }}/settings/secrets/actions." - exit 1 - fi - if [ -z "$SSH_PUBLIC_KEY" ]; then - echo "ERROR: Missing required repo secret. Please provide SSH_PUBLIC_KEY repo secret at ${{ github.repository }}/settings/secrets/actions." - exit 1 - fi - if [ -z "$SSH_PRIVATE_KEY" ]; then - echo "ERROR: Missing required repo secret. Please provide SSH_PRIVATE_KEY repo secret at ${{ github.repository }}/settings/secrets/actions." - exit 1 - fi - - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - name: Setup LXD - # This shared workflow supports manual dispatch with platform choices including - # lxd_vm and lxd_container. Only install the lxd snap for those platforms; - # cloud platforms such as EC2 and Azure do not need it. - if: ${{ contains(fromJSON('["lxd_vm", "lxd_container"]'), env.CLOUD_INIT_PLATFORM ) }} - uses: canonical/setup-lxd@8c6a87bfb56aa48f3fb9b830baa18562d8bfd4ee # v1 - with: - channel: 6/stable - - name: Clean workspace - run: | - rm -rf ${{ github.workspace }}/cloud_init_test_logs/ - - name: Setup SSH - run: | - mkdir -p ~/.ssh - sh -c 'printf "%s\n" "$SSH_PUBLIC_KEY" > ~/.ssh/cloudinit_id_rsa.pub' - # Dump secret using a subprocess to avoid accidental leaks when using set -x. - sh -c 'printf "%s\n" "$SSH_PRIVATE_KEY" | install -m 600 /dev/stdin ~/.ssh/cloudinit_id_rsa' - - name: Setup pycloudlib - env: - PYCLOUDLIB_CONFIG: ${{ runner.temp }}/pycloudlib.toml - run: | - sh -c 'echo "$REQUIRED_SECRET" | base64 -d > "$PYCLOUDLIB_CONFIG"' - - name: Install Dependencies - run: | - sudo DEBIAN_FRONTEND=noninteractive apt-get -qy update - sudo DEBIAN_FRONTEND=noninteractive apt-get -qy install tox distro-info-data devscripts - - name: Run integration Tests - env: - CLOUD_INIT_LOCAL_LOG_PATH: ${{ github.workspace }}/cloud_init_test_logs - PYCLOUDLIB_CONFIG: ${{ runner.temp }}/pycloudlib.toml - run: | - tox -e integration-tests -- --junitxml="${{ github.workspace }}/junit-report.xml" --color=yes ${{ inputs.filter_tests || 'tests/integration_tests' }} - - name: Publish Test Report with Insights - if: ${{ always() }} - uses: ctrf-io/github-test-reporter@024bc4b64d997ca9da86833c6b9548c55c620e40 # v1.0.26 - with: - report-path: '${{ github.workspace }}/junit-report.xml' - title: '${{ inputs.platform }}-${{ inputs.release }}-${{ inputs.image_type }}:${{ inputs.install_source }}' - integrations-config: | - { - "junit-to-ctrf": { - "enabled": true, - "action": "convert", - "options": { - "output": "./ctrf-report.json", - "toolname": "junit-to-ctrf", - "useSuiteName": false, - "env": { - "appName": "my-app" - } - } - } - } - summary-delta-report: true - insights-report: true - flaky-rate-report: true - slowest-report: true - upload-artifact: true - github-report: true - artifact-name: ctrf-report-${{ inputs.platform }}-${{ inputs.release }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Upload failure artifacts - if: ${{ failure() }} - uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0 - with: - name: failure-${{ github.job }} - path: ${{ github.workspace }}/cloud_init_test_logs/ - retention-days: 2 - - name: Clean pycloudlib - if: ${{ always() }} - run: | - rm -f ${{ runner.temp }}/pycloudlib.toml diff --git a/.github/workflows/110-daily-integration-22.04-lxd_container.yml b/.github/workflows/110-daily-integration-22.04-lxd_container.yml index bf719312c78..ceb3aa3af10 100644 --- a/.github/workflows/110-daily-integration-22.04-lxd_container.yml +++ b/.github/workflows/110-daily-integration-22.04-lxd_container.yml @@ -21,14 +21,20 @@ on: jobs: jammy-lxd_container: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: jammy - platform: lxd_container - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: jammy + platform: lxd_container + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/111-daily-integration-24.04-lxd_container.yml b/.github/workflows/111-daily-integration-24.04-lxd_container.yml index 73fcd9e302d..8be7d44a961 100644 --- a/.github/workflows/111-daily-integration-24.04-lxd_container.yml +++ b/.github/workflows/111-daily-integration-24.04-lxd_container.yml @@ -21,14 +21,20 @@ on: jobs: noble-lxd_container: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: noble - platform: lxd_container - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: noble + platform: lxd_container + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/113-daily-integration-26.04-lxd_container.yml b/.github/workflows/113-daily-integration-26.04-lxd_container.yml index 2e12f25ce03..7113255ce70 100644 --- a/.github/workflows/113-daily-integration-26.04-lxd_container.yml +++ b/.github/workflows/113-daily-integration-26.04-lxd_container.yml @@ -21,14 +21,20 @@ on: jobs: resolute-lxd_container: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: resolute - platform: lxd_container - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: resolute + platform: lxd_container + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/114-daily-integration-26.10-lxd_container.yml b/.github/workflows/114-daily-integration-26.10-lxd_container.yml index 86134cff189..702034f815e 100644 --- a/.github/workflows/114-daily-integration-26.10-lxd_container.yml +++ b/.github/workflows/114-daily-integration-26.10-lxd_container.yml @@ -21,14 +21,20 @@ on: jobs: stonking-lxd_container: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: stonking - platform: lxd_container - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: stonking + platform: lxd_container + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/120-daily-integration-22.04-lxd_vm.yml b/.github/workflows/120-daily-integration-22.04-lxd_vm.yml index 2b81dfca8e0..f766868228f 100644 --- a/.github/workflows/120-daily-integration-22.04-lxd_vm.yml +++ b/.github/workflows/120-daily-integration-22.04-lxd_vm.yml @@ -21,14 +21,20 @@ on: jobs: jammy-lxd_vm: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: jammy - platform: lxd_vm - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: jammy + platform: lxd_vm + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/121-daily-integration-24.04-lxd_vm.yml b/.github/workflows/121-daily-integration-24.04-lxd_vm.yml index fa1b671223a..eeff3040c90 100644 --- a/.github/workflows/121-daily-integration-24.04-lxd_vm.yml +++ b/.github/workflows/121-daily-integration-24.04-lxd_vm.yml @@ -21,14 +21,20 @@ on: jobs: noble-lxd_vm: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: noble - platform: lxd_vm - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: noble + platform: lxd_vm + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/123-daily-integration-26.04-lxd_vm.yml b/.github/workflows/123-daily-integration-26.04-lxd_vm.yml index 54a5dc4413a..efd37380dd9 100644 --- a/.github/workflows/123-daily-integration-26.04-lxd_vm.yml +++ b/.github/workflows/123-daily-integration-26.04-lxd_vm.yml @@ -21,14 +21,20 @@ on: jobs: resolute-lxd_vm: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: resolute - platform: lxd_vm - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: resolute + platform: lxd_vm + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/124-daily-integration-26.10-lxd_vm.yml b/.github/workflows/124-daily-integration-26.10-lxd_vm.yml index c320874875a..26d793f59b2 100644 --- a/.github/workflows/124-daily-integration-26.10-lxd_vm.yml +++ b/.github/workflows/124-daily-integration-26.10-lxd_vm.yml @@ -21,14 +21,20 @@ on: jobs: stonking-lxd_vm: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: stonking - platform: lxd_vm - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: stonking + platform: lxd_vm + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/130-daily-integration-22.04-ec2.yml b/.github/workflows/130-daily-integration-22.04-ec2.yml index 78d509cfea0..7f274d2fff8 100644 --- a/.github/workflows/130-daily-integration-22.04-ec2.yml +++ b/.github/workflows/130-daily-integration-22.04-ec2.yml @@ -22,14 +22,20 @@ on: jobs: jammy-ec2: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: jammy - platform: ec2 - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: jammy + platform: ec2 + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/131-daily-integration-24.04-ec2.yml b/.github/workflows/131-daily-integration-24.04-ec2.yml index 52d88e9ba8e..966266df997 100644 --- a/.github/workflows/131-daily-integration-24.04-ec2.yml +++ b/.github/workflows/131-daily-integration-24.04-ec2.yml @@ -22,14 +22,20 @@ on: jobs: noble-ec2: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: noble - platform: ec2 - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: noble + platform: ec2 + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/133-daily-integration-26.04-ec2.yml b/.github/workflows/133-daily-integration-26.04-ec2.yml index cabaf3e1dcb..5460ec85de4 100644 --- a/.github/workflows/133-daily-integration-26.04-ec2.yml +++ b/.github/workflows/133-daily-integration-26.04-ec2.yml @@ -22,14 +22,20 @@ on: jobs: resolute-ec2: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: resolute - platform: ec2 - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: resolute + platform: ec2 + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/134-daily-integration-26.10-ec2.yml b/.github/workflows/134-daily-integration-26.10-ec2.yml index 54407546f48..9900e45dae3 100644 --- a/.github/workflows/134-daily-integration-26.10-ec2.yml +++ b/.github/workflows/134-daily-integration-26.10-ec2.yml @@ -22,14 +22,20 @@ on: jobs: stonking-ec2: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: stonking - platform: ec2 - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: stonking + platform: ec2 + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/140-daily-integration-22.04-azure.yml b/.github/workflows/140-daily-integration-22.04-azure.yml index 3fdd27f2db0..c16f71dc404 100644 --- a/.github/workflows/140-daily-integration-22.04-azure.yml +++ b/.github/workflows/140-daily-integration-22.04-azure.yml @@ -22,14 +22,22 @@ on: jobs: jammy-azure: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: jammy - platform: azure - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: jammy + platform: azure + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/141-daily-integration-24.04-azure.yml b/.github/workflows/141-daily-integration-24.04-azure.yml index b6cdebe73f5..0a5e55961ce 100644 --- a/.github/workflows/141-daily-integration-24.04-azure.yml +++ b/.github/workflows/141-daily-integration-24.04-azure.yml @@ -22,14 +22,22 @@ on: jobs: noble-azure: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: noble - platform: azure - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: noble + platform: azure + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/143-daily-integration-26.04-azure.yml b/.github/workflows/143-daily-integration-26.04-azure.yml index 34c75b84bff..751c4561403 100644 --- a/.github/workflows/143-daily-integration-26.04-azure.yml +++ b/.github/workflows/143-daily-integration-26.04-azure.yml @@ -22,14 +22,22 @@ on: jobs: resolute-azure: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: resolute - platform: azure - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: resolute + platform: azure + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }} diff --git a/.github/workflows/144-daily-integration-26.10-azure.yml b/.github/workflows/144-daily-integration-26.10-azure.yml index ca279447ab6..18cf4b27beb 100644 --- a/.github/workflows/144-daily-integration-26.10-azure.yml +++ b/.github/workflows/144-daily-integration-26.10-azure.yml @@ -22,14 +22,22 @@ on: jobs: stonking-azure: - uses: ./.github/workflows/100-dispatch-common.yml - with: - release: stonking - platform: azure - install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} - image_type: ${{ inputs.image_type || 'generic' }} - filter_tests: ${{ inputs.filter_tests }} - secrets: - PYCLOUDLIB_TOML_B64: ${{ secrets.PYCLOUDLIB_TOML_B64 }} + runs-on: ubuntu-latest + if: github.repository == 'canonical/cloud-init' + env: + REQUIRED_SECRET: ${{ secrets.PYCLOUDLIB_TOML_B64 }} SSH_PUBLIC_KEY: ${{ secrets.SSH_PUBLIC_KEY }} SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - name: Checkout + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Run integration tests + uses: ./.github/actions/integration-test + with: + release: stonking + platform: azure + install_source: ${{ inputs.install_source || 'ppa:cloud-init-dev/daily' }} + image_type: ${{ inputs.image_type || 'generic' }} + filter_tests: ${{ inputs.filter_tests }} + runner_temp: ${{ runner.temp }}