Add AWS CLI v2 installation script and integration tests #41
Workflow file for this run
This file contains 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: Run Integ tests | ||
on: | ||
workflow_dispatch: | ||
jobs: | ||
integ-oidc: | ||
permissions: | ||
contents: read | ||
id-token: write | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run OIDC integ tests | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ test for OIDC | ||
uses: ./ | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
role-to-assume: ${{ secrets.SECRETS_OIDC_AWS_ROLE_TO_ASSUME }} | ||
role-duration-seconds: 900 | ||
role-session-name: IntegOidcAssumeRole | ||
role-external-id: ${{ secrets.SECRETS_OIDC_AWS_ROLE_EXTERNAL_ID }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" | ||
integ-oidc-env: | ||
permissions: | ||
contents: read | ||
id-token: write | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run OIDC integ tests with existing invalid env vars | ||
runs-on: ${{ matrix.os }} | ||
env: | ||
AWS_ACCESS_KEY_ID: dummyaccesskeyid | ||
AWS_SECRET_ACCESS_KEY: dummysecretkey | ||
AWS_SESSION_TOKEN: dummytoken | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ test for OIDC | ||
uses: ./ | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
role-to-assume: ${{ secrets.SECRETS_OIDC_AWS_ROLE_TO_ASSUME }} | ||
role-duration-seconds: 900 | ||
role-session-name: IntegOidcAssumeRole | ||
role-external-id: ${{ secrets.SECRETS_OIDC_AWS_ROLE_EXTERNAL_ID }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" | ||
integ-access-keys: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run access key integ tests | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ test for access keys | ||
uses: ./ | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
role-to-assume: ${{ secrets.SECRETS_AWS_ROLE_TO_ASSUME }} | ||
role-session-name: IntegAccessKeysAssumeRole | ||
role-external-id: ${{ secrets.SECRETS_AWS_ROLE_EXTERNAL_ID }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" | ||
integ-access-keys-env: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run access key from env integ tests | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ test for access keys | ||
uses: ./ | ||
env: | ||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
role-to-assume: ${{ secrets.SECRETS_AWS_ROLE_TO_ASSUME }} | ||
role-session-name: IntegAccessKeysAssumeRole | ||
role-external-id: ${{ secrets.SECRETS_AWS_ROLE_EXTERNAL_ID }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" | ||
integ-iam-user: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run IAM User integ tests | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ test for IAM user | ||
uses: ./ | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" | ||
integ-load-test: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run load tests | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ load test | ||
uses: ./ | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
role-to-assume: ${{ secrets.SECRETS_AWS_ROLE_TO_ASSUME }} | ||
role-session-name: IntegLoadTestAssumeRole | ||
role-external-id: ${{ secrets.SECRETS_AWS_ROLE_EXTERNAL_ID }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" | ||
integ-oidc-new: | ||
permissions: | ||
contents: read | ||
id-token: write | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [self-hosted, linux-fargate, windows-latest, ubuntu-latest, macos-latest] | ||
region: [us-west-2, us-east-1, eu-west-1, ap-southeast-1, ap-northeast-1, sa-east-1] | ||
name: Run new OIDC integ tests | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 30 | ||
steps: | ||
- name: "Checkout repository" | ||
uses: actions/checkout@v3 | ||
- name: Log environment variables | ||
run: env | ||
- name: Record start time | ||
run: echo "Start time: $(date)" | ||
- name: Integ test for new OIDC | ||
uses: ./ | ||
with: | ||
aws-region: ${{ matrix.region }} | ||
role-to-assume: ${{ secrets.SECRETS_OIDC_AWS_ROLE_TO_ASSUME }} | ||
role-duration-seconds: 900 | ||
role-session-name: IntegOidcNewAssumeRole | ||
role-external-id: ${{ secrets.SECRETS_OIDC_AWS_ROLE_EXTERNAL_ID }} | ||
- name: Record end time | ||
run: echo "End time: $(date)" |