Skip to content

[Preview] Implementing footer caching with introducing single cache o… #13

[Preview] Implementing footer caching with introducing single cache o…

[Preview] Implementing footer caching with introducing single cache o… #13

Workflow file for this run

name: Build and upload S3 seekable stream JARs to S3a treatment bucket
# Controls when the action will run. Invokes the workflow on push events but only for the main branch
on:
push:
branches: [ main ]
env:
AWS_REGION : ${{ vars.AWS_REGION }} # Change to reflect your region
S3_BUCKET : ${{ vars.S3_BUCKET }}
STATE_MACHINE_ARN : ${{ secrets.STATE_MACHINE_ARN }}
ROLE_TO_ASSUME: ${{ secrets.ASSUME_ROLE_ARN }}
STATE_MACHINE_INPUT_S3A: ${{ vars.STATE_MACHINE_INPUT_S3A }}
STATE_MACHINE_INPUT_S3FILEIO: ${{ vars.STATE_MACHINE_INPUT_S3FILEIO }}
# Permission can be added at job level or workflow level
permissions:
id-token: write # This is required for requesting the JWT
contents: read # This is required for actions/checkout
jobs:
BuildAndUploadJarToS3:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@417ae3ccd767c252f5661f1ace9f835f9654f2b5 # v3.1.0
- name: Build with Gradle
run: |
./gradlew build
./gradlew uberJar
- name: Configure aws credentials
uses: aws-actions/[email protected]
with:
role-to-assume: ${{ env.ROLE_TO_ASSUME }}
role-session-name: GitHub_to_AWS_via_FederatedOIDC
aws-region: ${{ env.AWS_REGION }}
- name: Upload common JAR to S3a treatment bucket
run: aws s3 cp common/build/libs/common-uber.jar s3://${{ env.S3_BUCKET }}/s3a/common-1.0.0.jar
- name: Upload common JAR to S3FileIO treatment bucket
run: aws s3 cp common/build/libs/common.jar s3://${{ env.S3_BUCKET }}/s3fileio/common.jar
- name: Upload input-stream JAR to S3a treatment bucket
run: aws s3 cp input-stream/build/libs/input-stream-uber.jar s3://${{ env.S3_BUCKET }}/s3a/input-stream-1.0.0.jar
- name: Upload input-stream JAR to S3FileIO treatment bucket
run: aws s3 cp input-stream/build/libs/input-stream.jar s3://${{ env.S3_BUCKET }}/s3fileio/input-stream.jar
- name: Upload object-client JAR to S3a treatment bucket
run: aws s3 cp object-client/build/libs/object-client-uber.jar s3://${{ env.S3_BUCKET }}/s3a/object-client-1.0.0.jar
- name: Upload object-client JAR to S3FileIO treatment bucket
run: aws s3 cp object-client/build/libs/object-client.jar s3://${{ env.S3_BUCKET }}/s3fileio/object-client.jar
- name: Trigger S3A Benchmarks
run: aws stepfunctions start-execution --state-machine-arn ${{ env.STATE_MACHINE_ARN }} --input ${{ env.STATE_MACHINE_INPUT_S3A }}
- name: Trigger S3FileIO Benchmarks
run: aws stepfunctions start-execution --state-machine-arn ${{ env.STATE_MACHINE_ARN }} --input ${{ env.STATE_MACHINE_INPUT_S3FILEIO }}