Commit 81250fb4 authored by mergify[bot]'s avatar mergify[bot] Committed by GitHub

Merge branch 'develop' into action-l2-sequencer

parents 4005ebb1 0fbfe821
---
'@eth-optimism/sdk': patch
---
Adds contract addresses for the Bedrock Alpha testnet
...@@ -2,4 +2,4 @@ ...@@ -2,4 +2,4 @@
'@eth-optimism/ci-builder': patch '@eth-optimism/ci-builder': patch
--- ---
Install slither from a specific commit hash Pin slither version to 0.9.0
...@@ -145,7 +145,7 @@ jobs: ...@@ -145,7 +145,7 @@ jobs:
working_directory: packages/contracts-bedrock working_directory: packages/contracts-bedrock
- run: - run:
name: upload coverage name: upload coverage
command: codecov --verbose --clean --flag contracts-bedrock-forge command: codecov --verbose --clean --flag contracts-bedrock-tests
environment: environment:
FOUNDRY_PROFILE: ci FOUNDRY_PROFILE: ci
- run: - run:
...@@ -190,6 +190,9 @@ jobs: ...@@ -190,6 +190,9 @@ jobs:
description: Regex matching dependent packages description: Regex matching dependent packages
type: string type: string
default: this-package-does-not-exist default: this-package-does-not-exist
coverage_flag:
description: Coverage flag name
type: string
docker: docker:
- image: ethereumoptimism/ci-builder:latest - image: ethereumoptimism/ci-builder:latest
resource_class: large resource_class: large
...@@ -214,9 +217,7 @@ jobs: ...@@ -214,9 +217,7 @@ jobs:
working_directory: packages/<<parameters.package_name>> working_directory: packages/<<parameters.package_name>>
- run: - run:
name: Upload coverage name: Upload coverage
command: | command: codecov --verbose --clean --flag <<parameters.coverage_flag>>
echo <<parameters.package_name>> # TEMP for debugging
codecov --verbose --clean --flag <<parameters.package_name>>
bedrock-go-tests: bedrock-go-tests:
docker: docker:
...@@ -637,17 +638,20 @@ workflows: ...@@ -637,17 +638,20 @@ workflows:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: common-ts-tests name: common-ts-tests
coverage_flag: common-ts-tests
package_name: common-ts package_name: common-ts
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: contracts-tests name: contracts-tests
coverage_flag: contracts-tests
package_name: contracts package_name: contracts
dependencies: hardhat-deploy-config dependencies: hardhat-deploy-config
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: core-utils-tests name: core-utils-tests
coverage_flag: core-utils-tests
package_name: core-utils package_name: core-utils
requires: requires:
- yarn-monorepo - yarn-monorepo
...@@ -659,54 +663,63 @@ workflows: ...@@ -659,54 +663,63 @@ workflows:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: actor-tests-tests name: actor-tests-tests
coverage_flag: actor-tests-tests
package_name: actor-tests package_name: actor-tests
dependencies: "(core-utils|sdk)" dependencies: "(core-utils|sdk)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: contracts-governance-tests name: contracts-governance-tests
coverage_flag: contracts-governance-tests
package_name: contracts-governance package_name: contracts-governance
dependencies: "(core-utils|sdk)" dependencies: "(core-utils|sdk)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: contracts-periphery-tests name: contracts-periphery-tests
coverage_flag: contracts-periphery-tests
package_name: contracts-periphery package_name: contracts-periphery
dependencies: "(contracts|contracts-bedrock|core-utils|hardhat-deploy-config)" dependencies: "(contracts|contracts-bedrock|core-utils|hardhat-deploy-config)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: dtl-tests name: dtl-tests
coverage_flag: dtl-tests
package_name: data-transport-layer package_name: data-transport-layer
dependencies: "(common-ts|contracts|core-utils)" dependencies: "(common-ts|contracts|core-utils)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: drippie-mon-tests name: drippie-mon-tests
coverage_flag: drippie-mon-tests
package_name: drippie-mon package_name: drippie-mon
dependencies: "(common-ts|contracts-periphery|core-utils|sdk)" dependencies: "(common-ts|contracts-periphery|core-utils|sdk)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: fault-detector-tests name: fault-detector-tests
coverage_flag: fault-detector-tests
package_name: fault-detector package_name: fault-detector
dependencies: "(common-ts|contracts|core-utils|sdk)" dependencies: "(common-ts|contracts|core-utils|sdk)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: message-relayer-tests name: message-relayer-tests
coverage_flag: message-relayer-tests
package_name: message-relayer package_name: message-relayer
dependencies: "(common-ts|core-utils|sdk)" dependencies: "(common-ts|core-utils|sdk)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: replica-healthcheck-tests name: replica-healthcheck-tests
coverage_flag: replica-healthcheck-tests
package_name: replica-healthcheck package_name: replica-healthcheck
dependencies: "(common-ts|core-utils)" dependencies: "(common-ts|core-utils)"
requires: requires:
- yarn-monorepo - yarn-monorepo
- js-lint-test: - js-lint-test:
name: sdk-tests name: sdk-tests
coverage_flag: sdk-tests
package_name: sdk package_name: sdk
dependencies: "(contracts|core-utils)" dependencies: "(contracts|core-utils)"
requires: requires:
......
...@@ -7,6 +7,10 @@ LDFLAGSSTRING +=-X main.GitDate=$(GITDATE) ...@@ -7,6 +7,10 @@ LDFLAGSSTRING +=-X main.GitDate=$(GITDATE)
LDFLAGSSTRING +=-X main.GitVersion=$(GITVERSION) LDFLAGSSTRING +=-X main.GitVersion=$(GITVERSION)
LDFLAGS := -ldflags "$(LDFLAGSSTRING)" LDFLAGS := -ldflags "$(LDFLAGSSTRING)"
# Note: Requires legacy contracts to be built before
# running and binding-related Make targets.
SCC_ABI_ARTIFACT = ../packages/contracts/artifacts/contracts/L1/rollup/StateCommitmentChain.sol/StateCommitmentChain.json
indexer: indexer:
env GO111MODULE=on go build -v $(LDFLAGS) ./cmd/indexer env GO111MODULE=on go build -v $(LDFLAGS) ./cmd/indexer
...@@ -19,8 +23,28 @@ test: ...@@ -19,8 +23,28 @@ test:
lint: lint:
golangci-lint run ./... golangci-lint run ./...
bindings: bindings-scc
bindings-scc:
$(eval temp := $(shell mktemp))
cat $(SCC_ABI_ARTIFACT) \
| jq -r .bytecode > $(temp)
cat $(SCC_ABI_ARTIFACT) \
| jq .abi \
| abigen --pkg scc \
--abi - \
--out bindings/scc/statecommitmentchain.go \
--type StateCommitmentChain \
--bin $(temp)
rm $(temp)
.PHONY: \ .PHONY: \
indexer \ indexer \
bindings \
bindings-scc \
clean \ clean \
test \ test \
lint lint
This diff is collapsed.
...@@ -48,19 +48,12 @@ RUN apt-get update && \ ...@@ -48,19 +48,12 @@ RUN apt-get update && \
apt-get install -y nodejs && \ apt-get install -y nodejs && \
npm i -g yarn && \ npm i -g yarn && \
npm i -g depcheck && \ npm i -g depcheck && \
pip install slither-analyzer==0.9.0 && \
go install gotest.tools/gotestsum@latest && \ go install gotest.tools/gotestsum@latest && \
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.48.0 && \ curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.48.0 && \
curl -fLSs https://raw.githubusercontent.com/CircleCI-Public/circleci-cli/master/install.sh | bash && \ curl -fLSs https://raw.githubusercontent.com/CircleCI-Public/circleci-cli/master/install.sh | bash && \
chmod +x /usr/local/bin/check-changed chmod +x /usr/local/bin/check-changed
# Install a specific version of slither. The current release does not work with our
# forge test contracts.
WORKDIR /opt
RUN git clone https://github.com/crytic/slither && \
cd slither && \
git checkout 90d13cd3883404a86ef4b3dd6af4d5c234e69a54 && \
python3 setup.py install
RUN echo "downloading solidity compilers" && \ RUN echo "downloading solidity compilers" && \
curl -o solc-linux-amd64-v0.5.17+commit.d19bba13 -sL https://binaries.soliditylang.org/linux-amd64/solc-linux-amd64-v0.5.17+commit.d19bba13 && \ curl -o solc-linux-amd64-v0.5.17+commit.d19bba13 -sL https://binaries.soliditylang.org/linux-amd64/solc-linux-amd64-v0.5.17+commit.d19bba13 && \
curl -o solc-linux-amd64-v0.8.9+commit.e5eed63a -sL https://binaries.soliditylang.org/linux-amd64/solc-linux-amd64-v0.8.9+commit.e5eed63a && \ curl -o solc-linux-amd64-v0.8.9+commit.e5eed63a -sL https://binaries.soliditylang.org/linux-amd64/solc-linux-amd64-v0.8.9+commit.e5eed63a && \
......
...@@ -30,6 +30,7 @@ export enum L2ChainID { ...@@ -30,6 +30,7 @@ export enum L2ChainID {
OPTIMISM_HARDHAT_LOCAL = 31337, OPTIMISM_HARDHAT_LOCAL = 31337,
OPTIMISM_HARDHAT_DEVNET = 17, OPTIMISM_HARDHAT_DEVNET = 17,
OPTIMISM_BEDROCK_LOCAL_DEVNET = 901, OPTIMISM_BEDROCK_LOCAL_DEVNET = 901,
OPTIMISM_BEDROCK_ALPHA_TESTNET = 28528,
} }
/** /**
......
...@@ -23,6 +23,7 @@ export const DEPOSIT_CONFIRMATION_BLOCKS: { ...@@ -23,6 +23,7 @@ export const DEPOSIT_CONFIRMATION_BLOCKS: {
[L2ChainID.OPTIMISM_HARDHAT_LOCAL]: 2 as const, [L2ChainID.OPTIMISM_HARDHAT_LOCAL]: 2 as const,
[L2ChainID.OPTIMISM_HARDHAT_DEVNET]: 2 as const, [L2ChainID.OPTIMISM_HARDHAT_DEVNET]: 2 as const,
[L2ChainID.OPTIMISM_BEDROCK_LOCAL_DEVNET]: 2 as const, [L2ChainID.OPTIMISM_BEDROCK_LOCAL_DEVNET]: 2 as const,
[L2ChainID.OPTIMISM_BEDROCK_ALPHA_TESTNET]: 12 as const,
} }
export const CHAIN_BLOCK_TIMES: { export const CHAIN_BLOCK_TIMES: {
...@@ -146,6 +147,22 @@ export const CONTRACT_ADDRESSES: { ...@@ -146,6 +147,22 @@ export const CONTRACT_ADDRESSES: {
}, },
l2: DEFAULT_L2_CONTRACT_ADDRESSES, l2: DEFAULT_L2_CONTRACT_ADDRESSES,
}, },
[L2ChainID.OPTIMISM_BEDROCK_ALPHA_TESTNET]: {
l1: {
AddressManager: '0xb4e08DcE1F323608229265c9d4125E22a4B9dbAF' as const,
L1CrossDomainMessenger:
'0x838a6DC4E37CA45D4Ef05bb776bf05eEf50798De' as const,
L1StandardBridge: '0xFf94B6C486350aD92561Ba09bad3a59df764Da92' as const,
StateCommitmentChain:
'0x0000000000000000000000000000000000000000' as const,
CanonicalTransactionChain:
'0x0000000000000000000000000000000000000000' as const,
BondManager: '0x0000000000000000000000000000000000000000' as const,
OptimismPortal: '0xA581Ca3353DB73115C4625FFC7aDF5dB379434A8' as const,
L2OutputOracle: '0x3A234299a14De50027eA65dCdf1c0DaC729e04A6' as const,
},
l2: DEFAULT_L2_CONTRACT_ADDRESSES,
},
} }
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment