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 # ==================================================================
@@ -112,53 +117,16 @@ jobs:
112117 # ==================================================================
113118 replay-tests :
114119 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@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
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@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
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@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
152- with :
153- name : jacoco-fast-replay-tests-exec-file
154- path : arithmetization/build/jacoco/fastReplayTests.exec
120+ uses : ./.github/workflows/reusable-fast-replay-tests.yml
121+ with :
122+ tests-with-ssh : ${{ inputs.tests-with-ssh || false}}
155123
156124 # ==================================================================
157125 # Publish release post tests
158126 # ==================================================================
159- publish :
160- needs : [ build ]
161- if : github.event_name != 'pull_request'
127+ publish-conditional-to-units-and-replay-tests :
128+ needs : [ build, unit-tests-prague, replay-tests ]
129+ if : ${{ github.event_name != 'pull_request' && inputs.wait-for-tests-bef-publish == 'true'}}
162130 runs-on : gha-runner-scale-set-ubuntu-22.04-amd64-med
163131 env :
164132 architecture : " amd64"
@@ -176,3 +144,24 @@ jobs:
176144 env :
177145 CLOUDSMITH_USER : ${{ secrets.CLOUDSMITH_USER }}
178146 CLOUDSMITH_API_KEY : ${{ secrets.CLOUDSMITH_API_KEY }}
147+
148+ publish-as-soon-as-ready :
149+ needs : [ build ]
150+ if : ${{ github.event_name != 'pull_request' && inputs.wait-for-tests-bef-publish == 'false'}}
151+ runs-on : gha-runner-scale-set-ubuntu-22.04-amd64-med
152+ env :
153+ architecture : " amd64"
154+ GRADLE_OPTS : " -Xmx6g -Dorg.gradle.parallel=true -Dorg.gradle.workers.max=4"
155+
156+ steps :
157+ - name : Checkout
158+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
159+
160+ - name : Setup Environment
161+ uses : ./.github/actions/setup-environment
162+
163+ - name : Publish Java artifacts
164+ run : ./gradlew publish
165+ env :
166+ CLOUDSMITH_USER : ${{ secrets.CLOUDSMITH_USER }}
167+ CLOUDSMITH_API_KEY : ${{ secrets.CLOUDSMITH_API_KEY }}
0 commit comments