More on tests #6
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Helm E2E Tests | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| download_url: | |
| description: 'Binary download URL (architecture suffix appended automatically)' | |
| required: true | |
| default: 'https://releases.jfrog.io/artifactory/run/jfrog-credentials-provider/0.1.0-beta.6/jfrog-credential-provider-linux' | |
| type: string | |
| provider: | |
| description: 'Cloud provider to test' | |
| required: true | |
| default: 'all' | |
| type: choice | |
| options: | |
| - all | |
| - aws | |
| - azure | |
| - gcp | |
| push: | |
| branches: | |
| - feature/INST-19278 | |
| permissions: | |
| id-token: write | |
| contents: read | |
| jobs: | |
| test-aws: | |
| name: AWS E2E Tests | |
| # if: inputs.provider == 'all' || inputs.provider == 'aws' | |
| runs-on: self-hosted | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Configure aws credentials | |
| uses: aws-actions/configure-aws-credentials@v4.1.0 | |
| with: | |
| role-to-assume: arn:aws:iam::095132750011:role/github-actions-kubelet-ci-role | |
| role-session-name: kubelettestcisession | |
| aws-region: ap-northeast-3 | |
| - name: Install tools | |
| run: | | |
| command -v helm >/dev/null || { curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash; } | |
| command -v yq >/dev/null || { sudo wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 && sudo chmod +x /usr/local/bin/yq; } | |
| - name: Run AWS E2E tests | |
| env: | |
| AWS_NODE_ROLE_ARN: ${{ secrets.AWS_NODE_ROLE_ARN }} | |
| AWS_SUBNET_IDS: ${{ secrets.AWS_SUBNET_IDS }} | |
| run: | | |
| source build/test/env | |
| export DOWNLOAD_URL="${{ inputs.download_url }}" | |
| bash build/test/runner.sh --parallel build/test/cases/aws-*.yaml | |
| test-azure: | |
| name: Azure E2E Tests | |
| # if: inputs.provider == 'all' || inputs.provider == 'azure' | |
| runs-on: self-hosted | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Login to Azure | |
| uses: azure/login@v2 | |
| with: | |
| client-id: ${{ secrets.AZURE_APP_CLIENT_ID }} | |
| tenant-id: ${{ secrets.AZURE_APP_TENANT_ID }} | |
| subscription-id: ${{ secrets.AZURE_APP_SUBSCRIPTION_ID }} | |
| - name: Install tools | |
| run: | | |
| command -v helm >/dev/null || { curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash; } | |
| command -v yq >/dev/null || { sudo wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 && sudo chmod +x /usr/local/bin/yq; } | |
| - name: Run Azure E2E tests | |
| env: | |
| AZURE_APP_CLIENT_ID: ${{ secrets.AZURE_HELM_TEST_APP_CLIENT_ID }} | |
| AZURE_TENANT_ID: ${{ secrets.AZURE_APP_TENANT_ID }} | |
| AZURE_NODEPOOL_CLIENT_ID: ${{ secrets.AZURE_HELM_TEST_NODEPOOL_CLIENT_ID }} | |
| run: | | |
| source build/test/env | |
| export DOWNLOAD_URL="${{ inputs.download_url }}" | |
| export JFROG_OIDC_PROVIDER_NAME="${AZURE_JFROG_OIDC_PROVIDER_NAME}" | |
| bash build/test/runner.sh build/test/cases/azure-*.yaml | |
| test-gcp: | |
| name: GCP E2E Tests | |
| if: inputs.provider == 'all' || inputs.provider == 'gcp' | |
| runs-on: self-hosted | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Authenticate to GCP | |
| uses: google-github-actions/auth@v2 | |
| with: | |
| workload_identity_provider: ${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }} | |
| service_account: ${{ secrets.GCP_SERVICE_ACCOUNT_EMAIL }} | |
| - name: Set up gcloud CLI | |
| uses: google-github-actions/setup-gcloud@v2 | |
| - name: Install tools | |
| run: | | |
| command -v helm >/dev/null || { curl -fsSL https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash; } | |
| command -v yq >/dev/null || { sudo wget -qO /usr/local/bin/yq https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 && sudo chmod +x /usr/local/bin/yq; } | |
| - name: Run GCP E2E tests | |
| env: | |
| GCP_SERVICE_ACCOUNT_EMAIL: ${{ secrets.GCP_SERVICE_ACCOUNT_EMAIL }} | |
| run: | | |
| source build/test/env | |
| export DOWNLOAD_URL="${{ inputs.download_url }}" | |
| export JFROG_OIDC_PROVIDER_NAME="${GCP_JFROG_OIDC_PROVIDER_NAME}" | |
| bash build/test/runner.sh build/test/cases/gcp-*.yaml | |