1414 required : true
1515 type : string
1616 default : " v1.2.3"
17+ wait-for-tests-bef-publish :
18+ description : ' If "false", the release jar will be published when ready without waiting for the unit and replay tests to pass.'
19+ required : false
20+ type : string
21+ default : ' true'
1722
1823jobs :
1924 # ==================================================================
7277 # ==================================================================
7378 # Unit Tests
7479 # ==================================================================
75- unit-tests-london :
76- needs : [ build ]
77- uses : ./.github/workflows/reusable-unit-tests.yml
78- with :
79- zkevm_fork : LONDON
80- tests-with-ssh : false
81-
82- unit-tests-paris :
83- needs : [ build ]
84- uses : ./.github/workflows/reusable-unit-tests.yml
85- with :
86- zkevm_fork : PARIS
87- tests-with-ssh : false
88-
89- unit-tests-shanghai :
90- needs : [ build ]
91- uses : ./.github/workflows/reusable-unit-tests.yml
92- with :
93- zkevm_fork : SHANGHAI
94- tests-with-ssh : false
95-
96- unit-tests-cancun :
97- needs : [ build ]
98- uses : ./.github/workflows/reusable-unit-tests.yml
99- with :
100- zkevm_fork : CANCUN
101- tests-with-ssh : false
102-
10380 unit-tests-prague :
10481 needs : [ build ]
10582 uses : ./.github/workflows/reusable-unit-tests.yml
@@ -112,53 +89,16 @@ jobs:
11289 # ==================================================================
11390 replay-tests :
11491 needs : [ build ]
115- runs-on : gha-runner-scale-set-ubuntu-22.04-amd64-xxl
116- steps :
117- - name : Checkout repository
118- uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
119- with :
120- submodules : false
121-
122- - name : Setup Environment
123- uses : ./.github/actions/setup-environment
124- with :
125- enable-ssh : false
126-
127- - name : Run replay tests
128- run : GOMEMLIMIT=26GiB ./gradlew :arithmetization:fastReplayTests
129- env :
130- JAVA_OPTS : -Dorg.gradle.daemon=false
131- JUNIT_TESTS_PARALLELISM : 4
132- GOCORSET_FLAGS : -b1024 -v --ansi-escapes=false --report --air
133- ZKEVM_FORK : LONDON
134-
135- - name : Upload test report
136- if : ${{ always() }}
137- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
138- with :
139- name : replay-tests-report
140- path : arithmetization/build/reports/tests/**/*
141-
142- - name : Upload jacoco fast replay tests coverage report
143- if : always()
144- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
145- with :
146- name : jacoco-fast-replay-tests-coverage-report
147- path : arithmetization/build/reports/jacoco/jacocoFastReplayTestsReport/**/*
148-
149- - name : Upload jacoco fast replay tests exec file
150- if : always()
151- uses : actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
152- with :
153- name : jacoco-fast-replay-tests-exec-file
154- path : arithmetization/build/jacoco/fastReplayTests.exec
92+ uses : ./.github/workflows/reusable-fast-replay-tests.yml
93+ with :
94+ tests-with-ssh : ${{ inputs.tests-with-ssh || false}}
15595
15696 # ==================================================================
15797 # Publish release post tests
15898 # ==================================================================
159- publish :
160- needs : [ build ]
161- if : github.event_name != 'pull_request'
99+ publish-conditional-to-units-and-replay-tests :
100+ needs : [ build, unit-tests-prague, replay-tests ]
101+ if : github.event_name != 'pull_request' && wait-for-tests-bef-publish == 'true'
162102 runs-on : gha-runner-scale-set-ubuntu-22.04-amd64-med
163103 env :
164104 architecture : " amd64"
@@ -176,3 +116,24 @@ jobs:
176116 env :
177117 CLOUDSMITH_USER : ${{ secrets.CLOUDSMITH_USER }}
178118 CLOUDSMITH_API_KEY : ${{ secrets.CLOUDSMITH_API_KEY }}
119+
120+ publish-as-soon-as-ready :
121+ needs : [ build ]
122+ if : github.event_name != 'pull_request' && wait-for-tests-bef-publish == 'false'
123+ runs-on : gha-runner-scale-set-ubuntu-22.04-amd64-med
124+ env :
125+ architecture : " amd64"
126+ GRADLE_OPTS : " -Xmx6g -Dorg.gradle.parallel=true -Dorg.gradle.workers.max=4"
127+
128+ steps :
129+ - name : Checkout
130+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
131+
132+ - name : Setup Environment
133+ uses : ./.github/actions/setup-environment
134+
135+ - name : Publish Java artifacts
136+ run : ./gradlew publish
137+ env :
138+ CLOUDSMITH_USER : ${{ secrets.CLOUDSMITH_USER }}
139+ CLOUDSMITH_API_KEY : ${{ secrets.CLOUDSMITH_API_KEY }}
0 commit comments