Skip to content

build(deps): bump google.golang.org/api from 0.290.0 to 0.291.0 in the google-cloud group across 1 directory #397

build(deps): bump google.golang.org/api from 0.290.0 to 0.291.0 in the google-cloud group across 1 directory

build(deps): bump google.golang.org/api from 0.290.0 to 0.291.0 in the google-cloud group across 1 directory #397

Workflow file for this run

name: S3 Integration Tests
on:
workflow_dispatch:
inputs:
pr_ref:
description: 'SHA of the PR head commit (for fork PRs)'
required: false
default: ''
pull_request:
push:
branches:
- main
workflow_call:
concurrency:
group: s3-integration
cancel-in-progress: false
jobs:
aws-s3-us-integration:
name: AWS S3 US Integration
runs-on: ubuntu-latest
# Skip fork PRs; run for all other triggers (push, dispatch, workflow_call, schedule, etc.)
if: >
github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name == github.repository
permissions:
statuses: write
env:
REGION_NAME: us-east-1
STACK_NAME: s3cli-iam
S3_ENDPOINT_HOST: https://s3.amazonaws.com
steps:
- name: Checkout code
uses: actions/checkout@v7
with:
ref: ${{ inputs.pr_ref || github.sha }}
- name: Set up test environment
uses: ./.github/actions/go-test-bootstrap
- name: Setup AWS infrastructure
uses: ./.github/actions/s3-integration-setup
with:
access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ env.REGION_NAME }}
stack_name: ${{ env.STACK_NAME }}
- name: Test Static Credentials
uses: ./.github/actions/s3-integration-run
with:
access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ env.REGION_NAME }}
stack_name: ${{ env.STACK_NAME }}
s3_endpoint_host: ${{ env.S3_ENDPOINT_HOST }}
label_filter: 'aws && static && (general || us-east-1)'
test_type: 'aws'
- name: Test IAM Roles
uses: ./.github/actions/s3-integration-run
with:
access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ env.REGION_NAME }}
stack_name: ${{ env.STACK_NAME }}
label_filter: 'aws && iam-role'
test_type: 'aws-iam'
- name: Test Assume Roles
uses: ./.github/actions/s3-integration-run
with:
access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ env.REGION_NAME }}
stack_name: ${{ env.STACK_NAME }}
role_arn: ${{ secrets.AWS_ROLE_ARN }}
label_filter: 'aws && assume-role'
test_type: 'aws-assume'
- name: Teardown AWS infrastructure
if: always()
uses: ./.github/actions/s3-integration-teardown
with:
access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ env.REGION_NAME }}
stack_name: ${{ env.STACK_NAME }}
- name: Report fork PR status
if: always() && inputs.pr_ref != ''
uses: ./.github/actions/report-fork-status
with:
pr_ref: ${{ inputs.pr_ref }}
name: AWS S3 US Integration
aws-s3-regional-integration:
name: AWS S3 ${{ matrix.name }} Integration
runs-on: ubuntu-latest
# Skip fork PRs; run for all other triggers (push, dispatch, workflow_call, schedule, etc.)
if: >
github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name == github.repository
permissions:
statuses: write
strategy:
fail-fast: false
matrix:
include:
- name: Public Read
region_name: us-east-1
stack_name: s3cli-public-bucket
s3_endpoint_host: https://s3.amazonaws.com
label_filter: 'aws && public-read'
use_esc_credentials: false
- name: Frankfurt
region_name: eu-central-1
stack_name: s3cli-private-bucket
s3_endpoint_host: https://s3.eu-central-1.amazonaws.com
label_filter: 'aws && static && general && !requires-default-region'
use_esc_credentials: false
- name: European Sovereign Cloud
region_name: eusc-de-east-1
stack_name: s3cli-private-bucket
s3_endpoint_host: https://s3.eusc-de-east-1.amazonaws.eu
label_filter: 'aws && esc'
use_esc_credentials: true
steps:
- name: Checkout code
uses: actions/checkout@v7
with:
ref: ${{ inputs.pr_ref || github.sha }}
- name: Set up test environment
uses: ./.github/actions/go-test-bootstrap
- name: Setup AWS infrastructure
uses: ./.github/actions/s3-integration-setup
with:
access_key_id: ${{ matrix.use_esc_credentials && secrets.AWS_ESC_ACCESS_KEY_ID || secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ matrix.use_esc_credentials && secrets.AWS_ESC_SECRET_ACCESS_KEY || secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ matrix.region_name }}
stack_name: ${{ matrix.stack_name }}
- name: Run regional tests
uses: ./.github/actions/s3-integration-run
with:
access_key_id: ${{ matrix.use_esc_credentials && secrets.AWS_ESC_ACCESS_KEY_ID || secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ matrix.use_esc_credentials && secrets.AWS_ESC_SECRET_ACCESS_KEY || secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ matrix.region_name }}
stack_name: ${{ matrix.stack_name }}
s3_endpoint_host: ${{ matrix.s3_endpoint_host }}
label_filter: ${{ matrix.label_filter }}
test_type: 'aws'
- name: Teardown AWS infrastructure
if: always()
uses: ./.github/actions/s3-integration-teardown
with:
access_key_id: ${{ matrix.use_esc_credentials && secrets.AWS_ESC_ACCESS_KEY_ID || secrets.AWS_ACCESS_KEY_ID }}
secret_access_key: ${{ matrix.use_esc_credentials && secrets.AWS_ESC_SECRET_ACCESS_KEY || secrets.AWS_SECRET_ACCESS_KEY }}
region_name: ${{ matrix.region_name }}
stack_name: ${{ matrix.stack_name }}
- name: Report fork PR status
if: always() && inputs.pr_ref != ''
uses: ./.github/actions/report-fork-status
with:
pr_ref: ${{ inputs.pr_ref }}
name: AWS S3 ${{ matrix.name }} Integration
s3-compatible-integration:
name: S3 Compatible Integration
runs-on: ubuntu-latest
# Skip fork PRs; run for all other triggers (push, dispatch, workflow_call, schedule, etc.)
if: >
github.event_name != 'pull_request' ||
github.event.pull_request.head.repo.full_name == github.repository
permissions:
statuses: write
steps:
- name: Checkout code
uses: actions/checkout@v7
with:
ref: ${{ inputs.pr_ref || github.sha }}
- name: Set up test environment
uses: ./.github/actions/go-test-bootstrap
- name: Run GCS S3 compatible tests
run: |
export access_key_id="${{ secrets.GCP_ACCESS_KEY_ID }}"
export secret_access_key="${{ secrets.GCP_SECRET_ACCESS_KEY }}"
export bucket_name=storage-cli-test-aws-compat
export s3_endpoint_host=storage.googleapis.com
export s3_endpoint_port=443
export label_filter='s3-compatible'
./.github/scripts/s3/run-integration-s3-compat.sh
- name: Report fork PR status
if: always() && inputs.pr_ref != ''
uses: ./.github/actions/report-fork-status
with:
pr_ref: ${{ inputs.pr_ref }}
name: S3 Compatible Integration