constellation/.github/actions/e2e_mini/action.yml
Daniel Weiße c0a59a18d5
ci: update e2e mini default region and always return resource group name (#3373)
* Choose resource group name outside of Terraform to catch issues during apply
* Run test in West Europe

---------

Signed-off-by: Daniel Weiße <dw@edgeless.systems>
2024-09-25 08:37:27 +02:00

66 lines
2.1 KiB
YAML

name: E2E QEMU test
description: "Test MiniConstellation functionality on Azure VM."
inputs:
azureClientID:
description: "Azure client to use for login with OIDC"
required: true
azureSubscriptionID:
description: "Azure subscription to use for login with OIDC"
required: true
azureTenantID:
description: "Azure tenant to use for login with OIDC"
required: true
azureIAMCredentials:
description: "Azure IAM credentials used for cleaning up resources"
required: true
registry:
description: "Container registry to use"
required: true
githubToken:
description: "GitHub authorization token"
required: true
runs:
using: "composite"
steps:
- name: Install terraform
uses: hashicorp/setup-terraform@651471c36a6092792c552e8b1bef71e592b462d8 # v3.1.1
with:
terraform_wrapper: false
- name: Setup bazel
uses: ./.github/actions/setup_bazel_nix
- name: Log in to the Container registry
uses: ./.github/actions/container_registry_login
with:
registry: ${{ inputs.registry }}
username: ${{ github.actor }}
password: ${{ inputs.githubToken }}
- name: MiniConstellation E2E
shell: bash
id: e2e-test
env:
ARM_CLIENT_ID: ${{ inputs.azureClientID }}
ARM_SUBSCRIPTION_ID: ${{ inputs.azureSubscriptionID }}
ARM_TENANT_ID: ${{ inputs.azureTenantID }}
run: |
bazel run --test_timeout=14400 //e2e/miniconstellation:push_remote_test
- name: Log in to azure
# only log in if e2e test failed or if the run was cancelled
if: (failure() && steps.e2e-test.conclusion == 'failure') || cancelled()
uses: ./.github/actions/login_azure
with:
azure_credentials: ${{ inputs.azureIAMCredentials }}
- name: Clean up after failure
shell: bash
# clean up if e2e test failed or if the run was cancelled
if: (failure() && steps.e2e-test.conclusion == 'failure') || cancelled()
run: |
echo "[*] Deleting resource group ${{ steps.e2e-test.outputs.rgname }}"
az group delete -y --resource-group "${{ steps.e2e-test.outputs.rgname }}"