-
Notifications
You must be signed in to change notification settings - Fork 29
87 lines (79 loc) · 3.11 KB
/
erc20_transfer_payload.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
77
78
79
80
81
82
83
84
85
86
87
name: Create ERC20 Transfer Payload
on:
workflow_dispatch:
inputs:
token:
description: "Token"
required: true
destination:
description: "Destination Address(or unqiue addrbook string)"
required: true
whole_amount:
description: "Whole Amount (provide either whole_amount or wei_amount)"
required: false
wei_amount:
description: "Wei Amount"
required: false
multisig:
description: "Source Multisig Address (or unique addrbook string)"
required: true
chain_name:
description: "Chain Name. Exists in bal_addresses: One of [base, gnosis, zkevm, avalanche, mainnet, arbitrum, optimism, polygon, sepolia]"
required: true
jobs:
erc20-transfer:
runs-on: ubuntu-latest
outputs:
pull-request-number: ${{ steps.cpr.outputs.pull-request-number }}
pull-request-branch: ${{ steps.generate-branch-name.outputs.branch }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: |
pip install git+https://github.com/BalancerMaxis/[email protected]
- name: Run script
run: |
cd action-scripts
python tx_build_erc20_transfer.py
env:
TOKEN: ${{ github.event.inputs.token }}
DESTINATION: ${{ github.event.inputs.destination }}
WHOLE_AMOUNT: ${{ github.event.inputs.whole_amount }}
WEI_AMOUNT: ${{ github.event.inputs.wei_amount }}
MULTISIG: ${{ github.event.inputs.multisig }}
CHAIN_NAME: ${{ github.event.inputs.chain_name }}
INFURA_KEY: ${{ secrets.INFURA_KEY }}
ALCHEMY_KEY: ${{ secrets.ALCHEMY_KEY }}
- name: Prepare PR title and body
run: |
echo "PR_TITLE=Transfer of $TOKEN to $DESTINATION on $CHAIN_NAME" >> $GITHUB_ENV
echo "PR_BODY=Automatically generated payload to transfer funds. See report that will be generated by CI/CD below. If no report, check action, something is wrong" >> $GITHUB_ENV
env:
TOKEN: ${{ github.event.inputs.token }}
DESTINATION: ${{ github.event.inputs.destination }}
CHAIN_NAME: ${{ github.event.inputs.chain_name }}
- name: Generate branch name
id: generate-branch-name
run: |
echo "::set-output name=branch::${{ github.job }}-$(date +'%Y%m%d%H%M%S')"
- name: Create Pull Request
id: cpr
uses: peter-evans/create-pull-request@v7
with:
title: ${{ env.PR_TITLE }}
body: ${{ env.PR_BODY }}
branch: ${{ steps.generate-branch-name.outputs.branch }}
labels: "Automatic Payload"
delete-branch: true
run_reports:
needs: erc20-transfer
secrets: inherit
uses: "BalancerMaxis/multisig-ops/.github/workflows/run_reports_reusable.yaml@main"
with:
pr_number: ${{ needs.erc20-transfer.outputs.pull-request-number }}
checkout_ref: ${{ needs.erc20-transfer.outputs.pull-request-branch }}