Upload #14
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: Upload | |
on: | |
workflow_run: | |
workflows: [Rust] | |
types: | |
- completed | |
permissions: | |
checks: write | |
contents: read | |
pull-requests: write | |
jobs: | |
upload: | |
runs-on: ubuntu-latest | |
if: > | |
github.event.workflow_run.event == 'pull_request' && | |
github.event.workflow_run.conclusion == 'success' | |
env: | |
PAPERAGE_PASSPHRASE: supersecret | |
steps: | |
- uses: actions/checkout@v3 | |
- name: 'Download artifact' | |
uses: actions/github-script@v6 | |
with: | |
script: | | |
var artifacts = await github.rest.actions.listWorkflowRunArtifacts({ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
run_id: ${{github.event.workflow_run.id }}, | |
name: "visual-snapshots" | |
}); | |
var matchArtifact = artifacts.data.artifacts[0]; | |
var download = await github.rest.actions.downloadArtifact({ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
artifact_id: matchArtifact.id, | |
archive_format: 'zip', | |
}); | |
var fs = require('fs'); | |
fs.writeFileSync('${{github.workspace}}/visual-snapshots.zip', Buffer.from(download.data)); | |
- name: Create directory | |
run: mkdir -p visual-snapshots | |
- name: Unzip artifact | |
run: unzip visual-snapshots.zip -d ./visual-snapshots | |
- name: Display structure of downloaded files | |
run: ls -R visual-snapshots/ | |
- name: Set variables | |
run: | | |
PR_NUMBER=$(cat ./visual-snapshots/PR.txt) | |
echo "PR_NUMBER=$PR_NUMBER" >> $GITHUB_ENV | |
- name: Upload to B2 | |
uses: shallwefootball/s3-upload-action@master | |
id: B2 | |
with: | |
aws_key_id: ${{ secrets.AWS_KEY_ID }} | |
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY}} | |
aws_bucket: ${{ vars.AWS_BUCKET }} | |
endpoint: ${{ vars.AWS_ENDPOINT }} | |
source_dir: "visual-snapshots" | |
destination_dir: "30-days/${{ github.repository }}/${{ github.run_id }}" | |
- name: Generate snapshots comment | |
run: ./bin/snapshots-comment '${{steps.B2.outputs.object_locations}}' | |
- uses: marocchino/sticky-pull-request-comment@v2 | |
if: ${{ env.PR_NUMBER != '' }} | |
with: | |
number: ${{ env.PR_NUMBER }} | |
header: "Visual Snapshots" | |
path: "./visual-snapshots.tmp" | |
- name: Job summary (visuals) | |
run: cat visual-snapshots.tmp > $GITHUB_STEP_SUMMARY |