diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index bfa6ef6..db56447 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -92,7 +92,10 @@ jobs: AWS_BUCKET: ${{ vars.AWS_BUCKET }} FILENAME: ${{ steps.filename.outputs.filename }} run: | - aws s3 cp ./ui-test.gif s3://${AWS_BUCKET}/${FILENAME} \ + aws s3api put-object \ + --bucket ${AWS_BUCKET} \ + --key ${FILENAME} \ + --body ./ui-test.gif \ --tagging "expiration=90days&Source=github-actions&Type=pr-demo-video" \ --acl public-read - name: Generate file URL diff --git a/CI_CD.md b/CI_CD.md index 2799e46..ffc3f4f 100644 --- a/CI_CD.md +++ b/CI_CD.md @@ -262,7 +262,7 @@ aws s3api get-bucket-lifecycle-configuration --bucket YOUR_BUCKET_NAME - `Source=github-actions` - Identifies source of upload - `Type=pr-demo-video` - Categorizes the object type - **S3 lifecycle rule**: Automatically deletes objects tagged with `expiration=90days` after 90 days -- **Upload mechanism**: AWS CLI is installed via Python pip, authentication is configured via `aws-actions/configure-aws-credentials@v4` GitHub Action, then `aws s3 cp` is used with object tagging support +- **Upload mechanism**: AWS CLI v2 is installed directly, authentication is configured via `aws-actions/configure-aws-credentials@v4` GitHub Action, then `aws s3api put-object` is used with object tagging support - **gh-pages video**: `video.mp4` in gh-pages branch is served from GitHub Pages, not S3, so it persists indefinitely #### Required AWS Credentials @@ -278,7 +278,7 @@ The S3 bucket must have: - Object tagging enabled - Lifecycle policy configured as described above -The workflow uses AWS CLI installed via Python pip and `aws-actions/configure-aws-credentials@v4` action for secure credential management. +The workflow uses AWS CLI v2 installed directly and `aws-actions/configure-aws-credentials@v4` action for secure credential management. ## Troubleshooting