diff --git a/.circleci/config.yml b/.circleci/config.yml index 20a0bb53b0..d92d493c45 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -26,7 +26,20 @@ executors: working_directory: ~/repos/celo-monorepo/packages/celotool environment: GO_VERSION: "1.16.4" - CELO_MONOREPO_BRANCH_TO_TEST: master + # CELO_MONOREPO_COMMIT_OR_BRANCH should point to a monorepo commit which is known to work, so that + # our CI doesn't break due to another team making changes in monorepo. + # * It should be updated when: + # (a) changes or additions are made to the blockchain e2e tests in celo-monorepo, or + # (b) a new contracts release has been merged to monorepo's master + # In the latter case, we need to check whether the new contract release breaks things and update the mycelo + # contracts ABI and migrations accordingly if necessary. + # * When updating it, update the comment with (a) the branch or commit hash, (b) the date of the change, and + # (c) the contracts release it includes (`RELEASE_TAG` in the monorepo) + + # b16a2d472a7cf24858f9d8b33a7185c8b81a261a is the current commit on master as of August 25, 2021, and + # includes contracts release 5 (core-contracts.v5) + CELO_MONOREPO_COMMIT_OR_BRANCH: b16a2d472a7cf24858f9d8b33a7185c8b81a261a + GITHUB_RSA_FINGERPRINT: SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8 jobs: build-geth: @@ -210,8 +223,10 @@ jobs: set -e mkdir ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts ssh-keygen -F github.com -l -f ~/.ssh/known_hosts | grep "github.com RSA ${GITHUB_RSA_FINGERPRINT}" - git clone --depth 1 https://github.com/celo-org/celo-monorepo.git celo-monorepo -b ${CELO_MONOREPO_BRANCH_TO_TEST} + git clone --depth 1 https://github.com/celo-org/celo-monorepo.git celo-monorepo cd celo-monorepo + git fetch --depth 1 origin ${CELO_MONOREPO_COMMIT_OR_BRANCH} + git checkout ${CELO_MONOREPO_COMMIT_OR_BRANCH} yarn install || yarn install yarn build --scope @celo/celotool --include-filtered-dependencies - run: