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
95 changes: 59 additions & 36 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,9 @@ parameters:
publish_contract_artifacts_dispatch:
type: boolean
default: false
stale_check_dispatch:
type: boolean
default: false

orbs:
go: circleci/go@1.8.0
Expand Down Expand Up @@ -347,7 +350,7 @@ jobs:
machine:
image: <<pipeline.parameters.base_image>>
resource_class: "<<parameters.resource_class>>"
docker_layer_caching: true # we rely on this for faster builds, and actively warm it up for builds with common stages
docker_layer_caching: true # we rely on this for faster builds, and actively warm it up for builds with common stages
steps:
- checkout
- attach_workspace:
Expand Down Expand Up @@ -458,7 +461,7 @@ jobs:
docker save -o /tmp/docker_images/<<parameters.docker_name>>.tar $IMAGE_NAME
- persist_to_workspace:
root: /tmp/docker_images
paths: # only write the one file, to avoid concurrent workspace-file additions
paths: # only write the one file, to avoid concurrent workspace-file additions
- "<<parameters.docker_name>>.tar"
- when:
condition: "<<parameters.release>>"
Expand All @@ -471,11 +474,11 @@ jobs:
condition:
or:
- and:
- "<<parameters.publish>>"
- "<<parameters.release>>"
- "<<parameters.publish>>"
- "<<parameters.release>>"
- and:
- "<<parameters.publish>>"
- equal: [develop, << pipeline.git.branch >>]
- "<<parameters.publish>>"
- equal: [develop, << pipeline.git.branch >>]
steps:
- gcp-oidc-authenticate:
service_account_email: GCP_SERVICE_ATTESTOR_ACCOUNT_EMAIL
Expand Down Expand Up @@ -1000,8 +1003,7 @@ jobs:
steps:
- checkout
- setup_remote_docker
- run:
make -C op-program verify-reproducibility
- run: make -C op-program verify-reproducibility
- notify-failures-on-develop:
mentions: "@proofs-team"

Expand Down Expand Up @@ -1053,7 +1055,7 @@ jobs:
- checkout
- unless:
condition:
equal: [ "develop", << pipeline.git.branch >> ]
equal: ["develop", << pipeline.git.branch >>]
steps:
- run:
# Scan changed files in PRs, block on new issues only (existing issues ignored)
Expand Down Expand Up @@ -1109,7 +1111,7 @@ jobs:
paths:
- "/go/pkg/mod"

bedrock-go-tests: # just a helper, that depends on all the actual test jobs
bedrock-go-tests: # just a helper, that depends on all the actual test jobs
docker:
# Use a smaller base image to avoid pulling the huge ci-builder
# image which is not needed for this job and sometimes misses
Expand Down Expand Up @@ -1271,17 +1273,29 @@ jobs:
command: |
goreleaser release --clean -f ./<<parameters.module>>/<<parameters.filename>>

stale-check:
docker:
- image: cimg/python:3.11
steps:
- run:
name: Run Stale Check Script
command: |
git clone --branch main --depth 1 https://github.com/ethereum-optimism/circleci-utils.git /tmp/circleci-utils
cd /tmp/circleci-utils/stale-check
pip3 install -r requirements.txt
python3 stale-check.py --repo "ethereum-optimism/${CIRCLE_PROJECT_REPONAME}" --github-token "${STALE_GITHUB_TOKEN}"

workflows:
main:
when:
and:
- or:
# Trigger on new commits
- equal: [ webhook, << pipeline.trigger_source >> ]
- equal: [webhook, << pipeline.trigger_source >>]
# Trigger on manual triggers if explicitly requested
- equal: [ true, << pipeline.parameters.main_dispatch >> ]
- equal: [true, << pipeline.parameters.main_dispatch >>]
- not:
equal: [ scheduled_pipeline, << pipeline.trigger_source >> ]
equal: [scheduled_pipeline, << pipeline.trigger_source >>]
jobs:
- go-mod-download
- contracts-bedrock-build:
Expand Down Expand Up @@ -1425,7 +1439,7 @@ workflows:
notify: true
matrix:
parameters:
mips_word_size: [ 32, 64 ]
mips_word_size: [32, 64]
- cannon-build-test-vectors
- todo-issues:
name: todo-issues-check
Expand All @@ -1434,8 +1448,7 @@ workflows:
name: shell-check
# We don't need the `exclude` key as the orb detects the `.shellcheckrc`
dir: .
ignore-dirs:
./packages/contracts-bedrock/lib
ignore-dirs: ./packages/contracts-bedrock/lib

go-release-deployer:
jobs:
Expand All @@ -1452,7 +1465,7 @@ workflows:
release:
when:
not:
equal: [ scheduled_pipeline, << pipeline.trigger_source >> ]
equal: [scheduled_pipeline, << pipeline.trigger_source >>]
jobs:
# Wait for approval on the release
- hold:
Expand Down Expand Up @@ -1545,7 +1558,7 @@ workflows:

scheduled-todo-issues:
when:
equal: [ build_four_hours, <<pipeline.schedule.name>> ]
equal: [build_four_hours, <<pipeline.schedule.name>>]
jobs:
- todo-issues:
name: todo-issue-checks
Expand All @@ -1554,7 +1567,7 @@ workflows:

scheduled-fpp:
when:
equal: [ build_hourly, <<pipeline.schedule.name>> ]
equal: [build_hourly, <<pipeline.schedule.name>>]
jobs:
- fpp-verify:
context:
Expand All @@ -1564,19 +1577,20 @@ workflows:
develop-publish-contract-artifacts:
when:
or:
- equal: [ "develop", <<pipeline.git.branch>> ]
- equal: [ true, <<pipeline.parameters.publish_contract_artifacts_dispatch>> ]
- equal: ["develop", <<pipeline.git.branch>>]
- equal:
[true, <<pipeline.parameters.publish_contract_artifacts_dispatch>>]
jobs:
- publish-contract-artifacts

develop-fault-proofs:
when:
and:
- or:
- equal: [ "develop", <<pipeline.git.branch>> ]
- equal: [ true, <<pipeline.parameters.fault_proofs_dispatch>> ]
- equal: ["develop", <<pipeline.git.branch>>]
- equal: [true, <<pipeline.parameters.fault_proofs_dispatch>>]
- not:
equal: [ scheduled_pipeline, << pipeline.trigger_source >> ]
equal: [scheduled_pipeline, << pipeline.trigger_source >>]
jobs:
- go-mod-download
- cannon-prestate
Expand Down Expand Up @@ -1606,10 +1620,10 @@ workflows:
when:
and:
- or:
- equal: [ "develop", <<pipeline.git.branch>> ]
- equal: [ true, <<pipeline.parameters.kontrol_dispatch>> ]
- equal: ["develop", <<pipeline.git.branch>>]
- equal: [true, <<pipeline.parameters.kontrol_dispatch>>]
- not:
equal: [ scheduled_pipeline, << pipeline.trigger_source >> ]
equal: [scheduled_pipeline, << pipeline.trigger_source >>]
jobs:
- kontrol-tests:
context:
Expand All @@ -1619,8 +1633,8 @@ workflows:
scheduled-cannon-full-tests:
when:
or:
- equal: [ build_four_hours, <<pipeline.schedule.name>> ]
- equal: [ true, << pipeline.parameters.cannon_full_test_dispatch >> ]
- equal: [build_four_hours, <<pipeline.schedule.name>>]
- equal: [true, << pipeline.parameters.cannon_full_test_dispatch >>]
jobs:
- contracts-bedrock-build:
skip_pattern: test
Expand All @@ -1632,14 +1646,14 @@ workflows:
- slack
matrix:
parameters:
mips_word_size: [ 32, 64 ]
mips_word_size: [32, 64]

scheduled-docker-publish:
when:
or:
- equal: [ build_hourly, <<pipeline.schedule.name>> ]
- equal: [build_hourly, <<pipeline.schedule.name>>]
# Trigger on manual triggers if explicitly requested
- equal: [ true, << pipeline.parameters.docker_publish_dispatch >> ]
- equal: [true, << pipeline.parameters.docker_publish_dispatch >>]
jobs:
- docker-build:
matrix:
Expand Down Expand Up @@ -1690,10 +1704,19 @@ workflows:
scheduled-preimage-reproducibility:
when:
or:
- equal: [build_daily, <<pipeline.schedule.name>> ]
- equal: [build_daily, <<pipeline.schedule.name>>]
# Trigger on manual triggers if explicitly requested
- equal: [ true, << pipeline.parameters.reproducibility_dispatch >> ]
- equal: [true, << pipeline.parameters.reproducibility_dispatch >>]
jobs:
- preimage-reproducibility:
context:
slack
context: slack

scheduled-stale-check:
when:
or:
- equal: [build_daily, <<pipeline.schedule.name>>]
# Trigger on manual triggers if explicitly requested
- equal: [true, << pipeline.parameters.stale_check_dispatch >>]
jobs:
- stale-check:
context: github-token-stale-check
18 changes: 0 additions & 18 deletions .github/workflows/close-stale.yml

This file was deleted.

69 changes: 0 additions & 69 deletions .github/workflows/tag-service.yml

This file was deleted.