Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1257,6 +1257,21 @@ jobs:
when: on_fail
- notify-failures-on-develop

contracts-bedrock-upload:
machine: true
resource_class: ethereum-optimism/latitude-1
steps:
- utils/checkout-with-mise:
checkout-method: blobless
- install-contracts-dependencies
- check-changed:
patterns: contracts-bedrock
- get-target-branch
- run:
name: upload selectors
command: just update-selectors
working_directory: packages/contracts-bedrock

contracts-bedrock-checks:
docker:
- image: <<pipeline.parameters.default_docker_image>>
Expand Down Expand Up @@ -1296,6 +1311,8 @@ jobs:
command: size-check
- run-contracts-check:
command: unused-imports-check-no-build
- run-contracts-check:
command: strict-pragma-check-no-build
- run-contracts-check:
command: validate-spacers-no-build
- run-contracts-check:
Expand Down Expand Up @@ -2597,6 +2614,11 @@ workflows:
- contracts-bedrock-build
context:
- circleci-repo-readonly-authenticated-github-token
- contracts-bedrock-upload:
requires:
- contracts-bedrock-build
context:
- circleci-repo-readonly-authenticated-github-token
- diff-fetcher-forge-artifacts:
context:
- circleci-repo-readonly-authenticated-github-token
Expand Down Expand Up @@ -3243,7 +3265,7 @@ workflows:
- op-acceptance-tests:
name: memory-all
gate: "" # Empty gate = gateless mode
no_output_timeout: 80m # Keep this less than 90m to avoid CircleCI timeout
no_output_timeout: 120m # Allow longer runs for memory-all gate
context:
- circleci-repo-readonly-authenticated-github-token
- slack
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/protected.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,14 +61,15 @@ jobs:
- cannon
- op-dripper
- op-interop-mon
uses: ethereum-optimism/factory/.github/workflows/docker-bake.yaml@2ff3f9bba03d59a6ad10fdf660ed253f53956188
uses: ethereum-optimism/factory/.github/workflows/docker-bake.yaml@753bcd4284a6d36eac6e31df2492015ab8650331
with:
image_name: ${{ matrix.image_name }}
bake_file: docker-bake.hcl
target: ${{ matrix.image_name }}
tag: ${{ needs.prep.outputs.sanitised_ref_name }}
gcp_project_id: ${{ vars.GCP_PROJECT_ID_OPLABS_TOOLS_ARTIFACTS }}
registry: us-docker.pkg.dev/oplabs-tools-artifacts/oss
attest: true
env: |
GIT_VERSION=${{ fromJson(needs.prep.outputs.versions)[matrix.image_name] }}
KONA_VERSION=${{ needs.prep.outputs.kona_version }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/unprotected.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,14 @@ jobs:
- cannon
- op-dripper
- op-interop-mon
uses: ethereum-optimism/factory/.github/workflows/docker-bake.yaml@2ff3f9bba03d59a6ad10fdf660ed253f53956188
uses: ethereum-optimism/factory/.github/workflows/docker-bake.yaml@753bcd4284a6d36eac6e31df2492015ab8650331
with:
image_name: ${{ matrix.image_name }}
bake_file: docker-bake.hcl
target: ${{ matrix.image_name }}
tag: 24h
registry: ttl.sh/${{ github.sha }}
push_provenance: false
attest: false
env: |
GIT_VERSION=${{ fromJson(needs.prep.outputs.versions)[matrix.image_name] }}
KONA_VERSION=${{ needs.prep.outputs.kona_version }}
Expand Down
2 changes: 1 addition & 1 deletion op-acceptance-tests/justfile
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ acceptance-test devnet="" gate="base":
"--validators" "./acceptance-tests.yaml"
"--exclude-gates" "flake-shake"
"--allow-skips"
"--timeout" "60m"
"--timeout" "120m"
"--orchestrator" "$ORCHESTRATOR"
"--show-progress"
)
Expand Down
7 changes: 2 additions & 5 deletions op-acceptance-tests/scripts/ci_flake_shake_prepare_slack.sh
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,8 @@ if [ -f "$PROMO_JSON" ]; then
($meta.date // "") as $date |
($meta.gate // "flake-shake") as $gate |
($meta.pr_url // "") as $pr_url |
( if (($meta.flake_gate_tests // 0) == 0) then
[
{"type":"header","text":{"type":"plain_text","text":":partywizard: Acceptance Tests: Flake-Shake — Gate Empty"}},
{"type":"section","text":{"type":"mrkdwn","text":"No tests in flake-shake gate; nothing to promote. Artifacts: <\($job)|CircleCI Job>"}}
]
( if (($meta|length) > 0 and ($meta.flake_gate_tests // 0) == 0) then
[]
elif ($root.candidates|length) == 0 then
[
{"type":"header","text":{"type":"plain_text","text":":partywizard: Acceptance Tests: No Flake-Shake Promotion Candidates — \(if $date != "" then $date else (now|strftime("%Y-%m-%d")) end)"}},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
//go:build !ci

// use a tag prefixed with "!". Such tag ensures that the default behaviour of this test would be to be built/run even when the go toolchain (go test) doesn't specify any tag filter.
package conductor

import (
Expand Down
10 changes: 5 additions & 5 deletions op-acceptance-tests/tests/base/disputegame_v2/smoke_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-challenger/game/fault/contracts/gameargs"
challengerTypes "github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
"github.com/ethereum-optimism/optimism/op-devstack/devtest"
"github.com/ethereum-optimism/optimism/op-devstack/presets"
)
Expand All @@ -15,18 +15,18 @@ func TestSmoke(gt *testing.T) {
require := t.Require()
dgf := sys.DisputeGameFactory()

gameArgs := dgf.GameArgs(challengerTypes.PermissionedGameType)
gameArgs := dgf.GameArgs(gameTypes.PermissionedGameType)
require.NotEmpty(gameArgs, "game args is must be set for permissioned v2 dispute games")
_, err := gameargs.Parse(gameArgs)
require.NoError(err, "Permissioned game args invalid")

gameArgs = dgf.GameArgs(challengerTypes.CannonGameType)
gameArgs = dgf.GameArgs(gameTypes.CannonGameType)
require.NotEmpty(gameArgs, "game args is must be set for cannon v2 dispute games")
_, err = gameargs.Parse(gameArgs)
require.NoError(err, "Permissionless game args invalid")

permissionedGame := dgf.GameImpl(challengerTypes.PermissionedGameType)
permissionedGame := dgf.GameImpl(gameTypes.PermissionedGameType)
require.NotEmpty(permissionedGame.Address, "permissioned game impl must be set")
cannonGame := dgf.GameImpl(challengerTypes.CannonGameType)
cannonGame := dgf.GameImpl(gameTypes.CannonGameType)
require.NotEmpty(cannonGame.Address, "cannon game impl must be set")
}
4 changes: 2 additions & 2 deletions op-acceptance-tests/tests/base/withdrawal/cannon/init_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-acceptance-tests/tests/base/withdrawal"
"github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
)

func TestMain(m *testing.M) {
withdrawal.InitWithGameType(m, types.CannonGameType)
withdrawal.InitWithGameType(m, gameTypes.CannonGameType)
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-acceptance-tests/tests/base/withdrawal"
faultTypes "github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
)

func TestWithdrawal_Cannon(gt *testing.T) {
withdrawal.TestWithdrawal(gt, faultTypes.CannonGameType)
withdrawal.TestWithdrawal(gt, gameTypes.CannonGameType)
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-acceptance-tests/tests/base/withdrawal"
"github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
)

func TestMain(m *testing.M) {
withdrawal.InitWithGameType(m, types.CannonKonaGameType)
withdrawal.InitWithGameType(m, gameTypes.CannonKonaGameType)
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-acceptance-tests/tests/base/withdrawal"
faultTypes "github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
)

func TestWithdrawal_CannonKona(gt *testing.T) {
withdrawal.TestWithdrawal(gt, faultTypes.CannonKonaGameType)
withdrawal.TestWithdrawal(gt, gameTypes.CannonKonaGameType)
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-acceptance-tests/tests/base/withdrawal"
"github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
)

func TestMain(m *testing.M) {
withdrawal.InitWithGameType(m, types.PermissionedGameType)
withdrawal.InitWithGameType(m, gameTypes.PermissionedGameType)
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"testing"

"github.com/ethereum-optimism/optimism/op-acceptance-tests/tests/base/withdrawal"
faultTypes "github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
)

func TestWithdrawal_Permissioned(gt *testing.T) {
withdrawal.TestWithdrawal(gt, faultTypes.PermissionedGameType)
withdrawal.TestWithdrawal(gt, gameTypes.PermissionedGameType)
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ package withdrawal
import (
"testing"

faultTypes "github.com/ethereum-optimism/optimism/op-challenger/game/fault/types"
gameTypes "github.com/ethereum-optimism/optimism/op-challenger/game/types"
"github.com/ethereum-optimism/optimism/op-devstack/compat"
"github.com/ethereum-optimism/optimism/op-devstack/devtest"
"github.com/ethereum-optimism/optimism/op-devstack/presets"
"github.com/ethereum-optimism/optimism/op-service/eth"
)

func InitWithGameType(m *testing.M, gameType faultTypes.GameType) {
func InitWithGameType(m *testing.M, gameType gameTypes.GameType) {
presets.DoMain(m,
presets.WithCompatibleTypes(compat.SysGo),
presets.WithMinimal(),
Expand All @@ -25,7 +25,7 @@ func InitWithGameType(m *testing.M, gameType faultTypes.GameType) {
)
}

func TestWithdrawal(gt *testing.T, gameType faultTypes.GameType) {
func TestWithdrawal(gt *testing.T, gameType gameTypes.GameType) {
t := devtest.SerialT(gt)
sys := presets.NewMinimal(t)
require := sys.T.Require()
Expand Down
Loading