-
Notifications
You must be signed in to change notification settings - Fork 24
76 lines (69 loc) · 2.34 KB
/
push-to-r2.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
name: temporary R2 bucket upload
#
#on:
# push:
# branches:
# - main
# workflow_dispatch:
# inputs:
# branch:
# description: Github branch to checkout for compilation
# required: true
# default: main
# type: string
# commit-hash:
# description: Commit hash to checkout
# required: false
# default: ""
# type: string
on:
push:
branches:
- feat/add-commit-hash-support-to-r2-action
jobs:
compile-and-upload:
name: Compile contracts and push to R2
runs-on: ubuntu-22.04
permissions:
contents: write
packages: write
id-token: write
steps:
- name: Determine branch and commit hash
id: get-branch-and-commit
run: |
commit_hash="1ebaae763d2f78bae7f0cfc7efb7591a9885e3c9"
echo "branch=main" >> $GITHUB_OUTPUT
echo "commit_hash=$commit_hash" >> $GITHUB_OUTPUT
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: "0"
path: axelar-amplifier
submodules: recursive
ref: ${{ steps.get-branch-and-commit.outputs.branch }}
- name: Checkout specific commit if provided
run: |
cd axelar-amplifier
git checkout ${{ steps.get-branch-and-commit.outputs.commit_hash }}
- name: Compile amplifier contracts
id: compile-contracts
run: |
cd axelar-amplifier
docker run --rm -v "$(pwd)":/code \
--mount type=volume,source="$(basename "$(pwd)")_cache",target=/code/target \
--mount type=volume,source=registry_cache,target=/usr/local/cargo/registry \
cosmwasm/optimizer:0.16.0
commit_hash=$(git rev-parse --short HEAD)
cd ..
mkdir -p ./artifacts/$commit_hash/
cp -R axelar-amplifier/artifacts/* ./artifacts/$commit_hash/
echo "wasm-directory=./artifacts" >> $GITHUB_OUTPUT
- uses: ryand56/r2-upload-action@latest
with:
r2-account-id: ${{ secrets.R2_ACCOUNT_ID }}
r2-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID_CF }}
r2-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_CF }}
r2-bucket: ${{ secrets.R2_BUCKET }}
source-dir: ${{ steps.compile-contracts.outputs.wasm-directory }}
destination-dir: ./pre-releases/ampd/contracts/