Skip to content

Upload files with GCP #18

Upload files with GCP

Upload files with GCP #18

Workflow file for this run

name: Ent
on:
push:
branches: [main]
pull_request:
branches: [main]
# See https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions#example-using-concurrency-to-cancel-any-in-progress-job-or-run
# cc
# xx
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
xtask:
runs-on: ubuntu-20.04
timeout-minutes: 120
steps:
- name: Checkout branch
uses: actions/checkout@v4
with:
fetch-depth: 2
- uses: 'google-github-actions/auth@v2'
with:
credentials_json: ${{ secrets.GCP_SERVICE_ACCOUNT_KEY_JSON }}
- id: 'upload-file'
uses: 'google-github-actions/upload-cloud-storage@v2'
with:
process_gcloudignore: false
path: './buildconfigs'
destination: 'oak-bins/${{ github.sha }}/${{ github.action }}-${{ github.run_id }}-${{ github.run_attempt }}'
# Example of using the output
- id: 'uploaded-files'
env:
files: '${{ steps.upload-file.outputs.uploaded }}'
run: |
set -o errexit
set -o nounset
set -o xtrace
set -o pipefail
bin_name=oak-bins
IFS=,
files_array=($files)
for file in "${files_array[@]}"; do
echo $file
# https://storage.googleapis.com/oak-bins/16df3ddbf14af9b0c5839aece766fb72fcc1c240/upload-file-8754169623-1/buildconfigs/key_xor_test_app.toml
file_url="https://storage.googleapis.com/${bin_name}/${file}"
body=$(cat <<EOF
{
"url": "${file_url}"
}
EOF
)
echo $body
curl --request POST \
--header "Content-Type: application/json" \
--data "${body}" \
https://api.static.space/v1/snapshot
done
unset IFS