Skip to content

Commit

Permalink
Merge branch 'release/core-contracts/12' into arthurgousset/refactor/…
Browse files Browse the repository at this point in the history
…foundry-version-env-variable
  • Loading branch information
arthurgousset committed Jul 2, 2024
2 parents c53516f + 3a0a771 commit 71afc79
Show file tree
Hide file tree
Showing 66 changed files with 793 additions and 507 deletions.
5 changes: 1 addition & 4 deletions .github/workflows/celo-monorepo.yml
Original file line number Diff line number Diff line change
Expand Up @@ -195,10 +195,7 @@ jobs:
timeout-minutes: 60
needs: [install-dependencies, lint-checks]
if: |
github.base_ref == 'master' ||
github.base_ref == 'release/core-contracts/**' ||
contains(github.base_ref, 'staging') ||
contains(github.base_ref, 'production') ||
github.base_ref == 'master' || contains(github.base_ref, 'release') || contains(github.base_ref, 'staging') || contains(github.base_ref, 'production') ||
contains(needs.install-dependencies.outputs.all_modified_files, 'packages/protocol') ||
contains(needs.install-dependencies.outputs.all_modified_files, 'packages/typescript') ||
contains(needs.install-dependencies.outputs.all_modified_files, ',package.json') ||
Expand Down
74 changes: 55 additions & 19 deletions .github/workflows/protocol-devchain-anvil.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,18 @@ on:
branches:
- master
- 'release/**'
tags:
- core-contracts.v*
pull_request:
branches: [release/core-contracts/*, master]
paths:
- 'packages/protocol/**'
workflow_dispatch:
inputs:
npm_tag:
description: 'NPM TAG e.g. alpha, pre-merge (default: canary) '
required: true
type: string

env:
# Increment these to force cache rebuilding
Expand Down Expand Up @@ -64,6 +76,14 @@ jobs:
})
).data[0];
core.setOutput("number", result ? result.number : "");
const result = (
await github.rest.repos.listPullRequestsAssociatedWithCommit({
commit_sha: context.sha,
owner: context.repo.owner,
repo: context.repo.repo,
})
).data[0];
core.setOutput("number", result ? result.number : "");
- name: Set PR Number
id: set_pr_number
Expand All @@ -90,6 +110,29 @@ jobs:
id: date
run: echo "::set-output name=date::$(date +'%Y-%m-%d')"

- name: Akeyless Get Secrets
id: get_auth_token
uses: docker://us-west1-docker.pkg.dev/devopsre/akeyless-public/akeyless-action:latest
with:
api-url: https://api.gateway.akeyless.celo-networks-dev.org
access-id: p-kf9vjzruht6l
static-secrets: '{"/static-secrets/NPM/npm-publish-token":"NPM_TOKEN"}'

- uses: actions/setup-node@v4
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org'

- name: 'Setup yarn'
shell: bash
run: |
npm install --global yarn
source ~/.bashrc
- name: 'Install packages'
shell: bash
run: yarn

- name: Generate migrations and run devchain
if: success() || failure()
run: ./scripts/foundry/create_and_migrate_anvil_devchain.sh
Expand All @@ -107,11 +150,14 @@ jobs:
sanitized_ref_name=$(echo "${{ github.ref_name }}" | tr -cd '[:alnum:]-_')
echo "sanitized_ref_name=${sanitized_ref_name}" >> $GITHUB_ENV
- name: Set package.json version based on GitHub ref
run: |
VERSION=${{ env.PR_NUMBER }}
echo "Setting version to 0.0.$VERSION"
jq ".version = \"0.0.$VERSION\"" .tmp/package.json > .tmp/temp.json && mv .tmp/temp.json .tmp/package.json
- name:
Determine release type and version (or dry run)
# This is what sets the RELEASE_TYPE and RELEASE_VERSION env variables
run: yarn --silent determine-release-version >> "$GITHUB_ENV"
working-directory: packages/protocol
env:
GITHUB_TAG: ${{ github.ref_name }}
NPM_PACKAGE: '@celo/devchain-anvil'

- name: Upload devchain as artifact
uses: actions/upload-artifact@v4
Expand All @@ -122,23 +168,13 @@ jobs:
# https://docs.github.com/en/actions/learn-github-actions/usage-limits-billing-and-administration#artifact-and-log-retention-policy
retention-days: 90

- name: Akeyless Get Secrets
id: get_auth_token
uses: docker://us-west1-docker.pkg.dev/devopsre/akeyless-public/akeyless-action:latest
with:
api-url: https://api.gateway.akeyless.celo-networks-dev.org
access-id: p-kf9vjzruht6l
static-secrets: '{"/static-secrets/NPM/npm-publish-token":"NPM_TOKEN"}'

- uses: actions/setup-node@v4
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org'

- name: Publish @celo/devchain-anvil
run: |
cat package.json
npm publish --access public
npm publish $RELEASE_TYPE $DRY_RUN --access public
working-directory: packages/protocol/.tmp
env:
RELEASE_TYPE: --tag ${{ env.RELEASE_TYPE != '' && env.RELEASE_TYPE || 'canary' }}
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
NODE_AUTH_TOKEN: ${{ env.NPM_TOKEN }}
DRY_RUN: ${{ env.RELEASE_VERSION == '' && '--dry-run' || '' }}
1 change: 1 addition & 0 deletions .github/workflows/publish-contracts-abi-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ jobs:
working-directory: packages/protocol
env:
GITHUB_TAG: ${{ github.ref_name }}
NPM_PACKAGE: "@celo/contracts"
NPM_TAG: ${{ inputs.npm_tag }}
- name: 'Build packages'
shell: bash
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -69,4 +69,4 @@
"@types/bn.js": "4.11.6",
"bignumber.js": "9.0.0"
}
}
}
3 changes: 3 additions & 0 deletions packages/protocol/artifacts/Proxy/Readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# About this folder

This folder has files for the init code and bytecode used with the Celo smart contracts.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x60806040526004361061004a5760003560e01c806303386ba31461015e57806342404e07146101e0578063bb913f4114610211578063d29d44ee14610244578063f7e6af8014610277575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190206000190180546001600160a01b0381166100d5576040805162461bcd60e51b8152602060048201526015602482015274139bc8125b5c1b195b595b9d185d1a5bdb881cd95d605a1b604482015290519081900360640190fd5b6100de8161028c565b61012a576040805162461bcd60e51b8152602060048201526018602482015277496e76616c696420636f6e7472616374206164647265737360401b604482015290519081900360640190fd5b60405136810160405236600082376000803683855af43d604051818101604052816000823e82801561015a578282f35b8282fd5b6101de6004803603604081101561017457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561019f57600080fd5b8201836020820111156101b157600080fd5b803590602001918460018302840111640100000000831117156101d357600080fd5b5090925090506102c8565b005b3480156101ec57600080fd5b506101f56103f8565b604080516001600160a01b039092168252519081900360200190f35b34801561021d57600080fd5b506101de6004803603602081101561023457600080fd5b50356001600160a01b0316610432565b34801561025057600080fd5b506101de6004803603602081101561026757600080fd5b50356001600160a01b031661055c565b34801561028357600080fd5b506101f56105cc565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906102c057508115155b949350505050565b6102d06105cc565b6001600160a01b0316336001600160a01b03161461032c576040805162461bcd60e51b815260206004820152601460248201527339b2b73232b9103bb0b9903737ba1037bbb732b960611b604482015290519081900360640190fd5b61033583610432565b60006060846001600160a01b031684846040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610394576040519150601f19603f3d011682016040523d82523d6000602084013e610399565b606091505b509092509050816103f1576040805162461bcd60e51b815260206004820152601e60248201527f696e697469616c697a6174696f6e2063616c6c6261636b206661696c65640000604482015290519081900360640190fd5b5050505050565b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c019020600019015490565b61043a6105cc565b6001600160a01b0316336001600160a01b031614610496576040805162461bcd60e51b815260206004820152601460248201527339b2b73232b9103bb0b9903737ba1037bbb732b960611b604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c019020600019016104d58261028c565b610521576040805162461bcd60e51b8152602060048201526018602482015277496e76616c696420636f6e7472616374206164647265737360401b604482015290519081900360640190fd5b8181556040516001600160a01b038316907fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d1390600090a25050565b6105646105cc565b6001600160a01b0316336001600160a01b0316146105c0576040805162461bcd60e51b815260206004820152601460248201527339b2b73232b9103bb0b9903737ba1037bbb732b960611b604482015290519081900360640190fd5b6105c9816105fc565b50565b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b81529051908190036013019020600019015490565b6001600160a01b03811661064b576040805162461bcd60e51b815260206004820152601160248201527006f776e65722063616e6e6f74206265203607c1b604482015290519081900360640190fd5b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b8152905190819003601301812060001901828155906001600160a01b038316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a2505056fea265627a7a72315820d93b9ae9f89be1a3432fe1940ce86486d20d664507dc9e5a46cc955a803e321364736f6c63430005110032
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
0x608060405234801561001057600080fd5b50610023336001600160e01b0361002816565b6100e6565b6001600160a01b038116610077576040805162461bcd60e51b815260206004820152601160248201527006f776e65722063616e6e6f74206265203607c1b604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e000000000000000000000000008152905190819003601301812060001901828155906001600160a01b038316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a25050565b6106e5806100f56000396000f3fe60806040526004361061004a5760003560e01c806303386ba31461015e57806342404e07146101e0578063bb913f4114610211578063d29d44ee14610244578063f7e6af8014610277575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190206000190180546001600160a01b0381166100d5576040805162461bcd60e51b8152602060048201526015602482015274139bc8125b5c1b195b595b9d185d1a5bdb881cd95d605a1b604482015290519081900360640190fd5b6100de8161028c565b61012a576040805162461bcd60e51b8152602060048201526018602482015277496e76616c696420636f6e7472616374206164647265737360401b604482015290519081900360640190fd5b60405136810160405236600082376000803683855af43d604051818101604052816000823e82801561015a578282f35b8282fd5b6101de6004803603604081101561017457600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561019f57600080fd5b8201836020820111156101b157600080fd5b803590602001918460018302840111640100000000831117156101d357600080fd5b5090925090506102c8565b005b3480156101ec57600080fd5b506101f56103f8565b604080516001600160a01b039092168252519081900360200190f35b34801561021d57600080fd5b506101de6004803603602081101561023457600080fd5b50356001600160a01b0316610432565b34801561025057600080fd5b506101de6004803603602081101561026757600080fd5b50356001600160a01b031661055c565b34801561028357600080fd5b506101f56105cc565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708181148015906102c057508115155b949350505050565b6102d06105cc565b6001600160a01b0316336001600160a01b03161461032c576040805162461bcd60e51b815260206004820152601460248201527339b2b73232b9103bb0b9903737ba1037bbb732b960611b604482015290519081900360640190fd5b61033583610432565b60006060846001600160a01b031684846040518083838082843760405192019450600093509091505080830381855af49150503d8060008114610394576040519150601f19603f3d011682016040523d82523d6000602084013e610399565b606091505b509092509050816103f1576040805162461bcd60e51b815260206004820152601e60248201527f696e697469616c697a6174696f6e2063616c6c6261636b206661696c65640000604482015290519081900360640190fd5b5050505050565b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c019020600019015490565b61043a6105cc565b6001600160a01b0316336001600160a01b031614610496576040805162461bcd60e51b815260206004820152601460248201527339b2b73232b9103bb0b9903737ba1037bbb732b960611b604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c019020600019016104d58261028c565b610521576040805162461bcd60e51b8152602060048201526018602482015277496e76616c696420636f6e7472616374206164647265737360401b604482015290519081900360640190fd5b8181556040516001600160a01b038316907fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d1390600090a25050565b6105646105cc565b6001600160a01b0316336001600160a01b0316146105c0576040805162461bcd60e51b815260206004820152601460248201527339b2b73232b9103bb0b9903737ba1037bbb732b960611b604482015290519081900360640190fd5b6105c9816105fc565b50565b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b81529051908190036013019020600019015490565b6001600160a01b03811661064b576040805162461bcd60e51b815260206004820152601160248201527006f776e65722063616e6e6f74206265203607c1b604482015290519081900360640190fd5b604080517232b4b8189c9b1b97383937bc3c9730b236b4b760691b8152905190819003601301812060001901828155906001600160a01b038316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a2505056fea265627a7a72315820d93b9ae9f89be1a3432fe1940ce86486d20d664507dc9e5a46cc955a803e321364736f6c63430005110032
Loading

0 comments on commit 71afc79

Please sign in to comment.