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: Deploy cosmwasm contracts to Contestine testnet | |
on: | |
push: | |
branches: | |
- "main" | |
- "466-initiate-btp-node-for-archway-on-icon-testnet" | |
jobs: | |
deploy-contracts-testnet: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
# Install and setup go | |
- name: Set up Go 1.19 | |
uses: actions/setup-go@v2 | |
with: | |
go-version: 1.19 | |
# setup gopath | |
- name: Set PATH | |
run: | | |
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH | |
shell: bash | |
- name: Import GPG key | |
uses: crazy-max/ghaction-import-gpg@v5 | |
with: | |
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} | |
fingerprint: "DAAFA799CBEEB98A9E9F27B9CB74C586AEC1A809" | |
trust_level: 5 | |
# - name: Install stable toolchain | |
# uses: actions-rs/toolchain@v1 | |
# with: | |
# toolchain: 1.69.0 | |
# target: wasm32-unknown-unknown | |
# override: true | |
# profile: minimal | |
# - name: Cache Rust dependencies | |
# uses: Swatinem/rust-cache@v2 | |
- name: Download and Install archwayd | |
working-directory: contracts/cosmwasm-vm/archway | |
run: make install | |
- name: Retrieve the secret and decode it to a file | |
env: | |
CONSTANTINE_TESTNET_KEY: ${{ secrets.CONSTANTINE_TESTNET_KEY }} | |
CONSTANTINE_PASSPHRASE: ${{ secrets.CONSTANTINE_PASSPHRASE }} | |
run: | | |
archwayd keys list | |
gpg --list-secret-keys | |
pass init DAAFA799CBEEB98A9E9F27B9CB74C586AEC1A809 | |
echo "Installing expect" | |
sudo apt-get update >/dev/null | |
sudo apt-get install expect >/dev/null | |
echo $CONSTANTINE_TESTNET_KEY | base64 -d > key.json | |
echo "$CONSTANTINE_PASSPHRASE" | /home/runner/go/bin/archwayd keys import constantine3_wallet key.json | |
# which expect | |
# /usr/bin/expect <<EOD | |
# set timeout 60 | |
# spawn /home/runner/go/bin/archwayd keys import constantine3_wallet key.json | |
# expect "Enter passphrase to decrypt your key:" | |
# send "12345678\r" | |
# expect eof | |
# EOD | |
# echo "CONSTANTINE_PASSPHRASE" | archwayd keys import constantine3_wallet key.json | |
archwayd keys list | |
# - name: Compile WASM | |
# run: | | |
# rustup component add rustfmt --toolchain 1.69.0-x86_64-unknown-linux-gnu | |
# rustup component add clippy --toolchain 1.69.0-x86_64-unknown-linux-gnu | |
# bash ./optimize_build.sh | |
# - name: Check WASM Size | |
# run: | | |
# max_size=800 | |
# echo "Check if size of wasm file exceeds $max_size kilobytes..." | |
# for file in artifacts/*.wasm | |
# do | |
# size=$(du -k "$file" | awk '{print $1}') | |
# if [[ $size -gt $max_size ]]; then | |
# echo "Error: $file : $size KB has exceeded maximum contract size limit of 800KB." | |
# exit 1 | |
# fi | |
# echo "$file : $size KB" | |
# done | |
# echo "The size of all contracts is well within the 800 KB limit." | |
# - name: Deploy WASM | |
# run: | | |
# container=$(docker ps --format '{{.Names}}') | |
# rm -rf artifacts/cw_common.wasm | |
# cp -r {artifacts,scripts/deploy_cosmwasm.sh} contracts/cosmwasm-vm/archway/contracts | |
# docker ps -a | |
# docker exec $container chmod +x /contracts/deploy_cosmwasm.sh | |
# docker exec $container /contracts/deploy_cosmwasm.sh |