Files
spring-tools/.github/workflows/akamai-test.yml
2023-11-10 22:55:16 -05:00

72 lines
2.6 KiB
YAML

name: Test Akamai Upload
on:
workflow_dispatch:
jobs:
akamai-upload:
name: Upload to Akamai
runs-on: ubuntu-latest
steps:
- name: Gen file and upload
id: gen-upload
env:
AWS_ACCESS_KEY_ID: ${{ secrets.TOOLS_CLOUDGATE_ACCESS_KEY }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.TOOLS_CLOUDGATE_SECRET_KEY }}
AWS_DEFAULT_REGION: us-east-1
run: |
role=arn:aws:iam::${{ secrets.TOOLS_CLOUDGATE_ACCOUNT_ID }}:role/${{ secrets.TOOLS_CLOUDGATE_USER }}
export $(printf "AWS_ACCESS_KEY_ID=%s AWS_SECRET_ACCESS_KEY=%s AWS_SESSION_TOKEN=%s" \
$(aws sts assume-role \
--role-arn $role \
--role-session-name gha-upload \
--query "Credentials.[AccessKeyId,SecretAccessKey,SessionToken]" \
--output text))
echo "AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID" >> $GITHUB_ENV
echo "AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY" >> $GITHUB_ENV
echo "AWS_SESSION_TOKEN=$AWS_SESSION_TOKEN" >> $GITHUB_ENV
echo "AWS_DEFAULT_REGION=$AWS_DEFAULT_REGION" >> $GITHUB_ENV
- name: Test Environment
env:
AWS_DEFAULT_REGION: us-east-1
run: |
file="upload-test.txt"
echo 'Upload test file' > $file
cat $file
echo $AWS_SESSION_TOKEN
aws s3 mv ./$file s3://tools-spring-io/test-akamai/$file
aws s3 rm s3://tools-spring-io/test-akamai/$file
akamai-upload-via-script:
name: Upload to Akamai via Script
needs: [ akamai-upload ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9
with:
ref: ${{ inputs.ref }}
sparse-checkout: |
.github
- name: Configure Cloudgate
uses: aws-actions/configure-aws-credentials@010d0da01d0b5a38af31e9c3470dbfdabdecca3a
with:
aws-access-key-id: ${{ secrets.TOOLS_CLOUDGATE_ACCESS_KEY }}
aws-secret-access-key: ${{ secrets.TOOLS_CLOUDGATE_SECRET_KEY }}
role-to-assume: arn:aws:iam::${{ secrets.TOOLS_CLOUDGATE_ACCOUNT_ID }}:role/${{ secrets.TOOLS_CLOUDGATE_USER }}
role-session-name: gha-upload-2
aws-region: us-east-1
role-duration-seconds: 900
role-skip-session-tagging: true
- name: Test Environment
env:
AWS_DEFAULT_REGION: us-east-1
run: |
file="upload-test.txt"
echo 'Upload test file' > $file
cat $file
echo $AWS_SESSION_TOKEN
aws s3 mv ./$file s3://tools-spring-io/test-akamai/$file
aws s3 rm s3://tools-spring-io/test-akamai/$file