11-- Autogenerates any pre-reqs for monorepo triage execution
22-- Keep these rules lean! They have to run unconditionally.
33
4+
5+ let Prelude = ../ External / Prelude. dhall
6+
7+ let List / concatMap = Prelude.List. concatMap
8+
49let SelectFiles = ../ Lib / SelectFiles. dhall
510
611let Cmd = ../ Lib / Cmds. dhall
@@ -37,6 +42,7 @@ let Spec =
3742 , config_json_gz_url : Text
3843 , version : Text
3944 , suffix : Text
45+ , precomputed_block_prefix : Optional Text
4046 }
4147 , default =
4248 { codenames = [ DebianVersions.DebVersion. Bullseye ]
@@ -45,6 +51,8 @@ let Spec =
4551 , config_json_gz_url =
4652 " https://storage.googleapis.com/o1labs-gitops-infrastructure/devnet/devnet-state-dump-3NK4eDgbkCjKj9fFUXVkrJXsfpfXzJySoAvrFJVCropPW7LLF14F-676026c4d4d2c18a76b357d6422a06f932c3ef4667a8fd88717f68b53fd6b2d7.json.gz"
4753 , suffix = " "
54+ , version = " \\ \$MINA_DEB_VERSION"
55+ , precomputed_block_prefix = None Text
4856 }
4957 }
5058
@@ -55,8 +63,6 @@ let generateDockerForCodename =
5563 -> let image =
5664 Artifacts. fullDockerTag
5765 Artifacts. Tag:: {
58- , version =
59- " ${spec.version}-${DebianVersions.lowerName codename}"
6066 , remove_profile_from_name = True
6167 , network = spec. network
6268 }
@@ -76,13 +82,24 @@ let generateDockerForCodename =
7682 , deb_profile = profile
7783 , deb_repo = DebianRepo.Type. Local
7884 , deb_suffix = Some " hardfork"
85+ , step_key_suffix =
86+ " -${DebianVersions.lowerName codename}-docker-image"
7987 }
8088
8189 let dockerDaemonStep = DockerImage. stepKey dockerDaemonSpec
8290
8391 let dependsOnTest =
8492 [ { name = pipelineName, key = dockerDaemonStep } ]
8593
94+ let precomputed_block_prefix_arg =
95+ merge
96+ { Some =
97+ \ (prefix : Text )
98+ -> " --precomputed-block-prefix " ++ prefix
99+ , None = " "
100+ }
101+ spec. precomputed_block_prefix
102+
86103 in [ MinaArtifact. buildArtifacts
87104 MinaArtifact. MinaBuildSpec:: {
88105 , artifacts =
@@ -118,6 +135,8 @@ let generateDockerForCodename =
118135 , deb_codename = codename
119136 , deb_profile = profile
120137 , deb_repo = DebianRepo.Type. Local
138+ , step_key_suffix =
139+ " -${DebianVersions.lowerName codename}-docker-image"
121140 }
122141 , DockerImage. generateStep
123142 DockerImage. ReleaseSpec:: {
@@ -133,6 +152,8 @@ let generateDockerForCodename =
133152 , deb_repo = DebianRepo.Type. Local
134153 , deb_codename = codename
135154 , deb_suffix = Some " hardfork"
155+ , step_key_suffix =
156+ " -${DebianVersions.lowerName codename}-docker-image"
136157 }
137158 , Command. build
138159 Command. Config:: {
@@ -161,11 +182,13 @@ let generateDockerForCodename =
161182 codename} && source ./buildkite/scripts/export-git-env-vars.sh"
162183 , Cmd. runInDocker
163184 Cmd. Docker:: { image = image }
164- " curl ${spec.config_json_gz_url} > config.json.gz && gunzip config.json.gz && FORKING_FROM_CONFIG_JSON=config.json mina-verify-packaged-fork-config ${Network.lowerName
165- spec.network} config.json /workdir/verification"
185+ " curl ${spec.config_json_gz_url} > config.json.gz && gunzip config.json.gz && FORKING_FROM_CONFIG_JSON=config.json mina-verify-packaged-fork-config --network ${Network.lowerName
186+ spec.network} --fork- config config .json --working-dir /workdir/verification ${precomputed_block_prefix_arg} "
166187 ]
167188 , label = " Verify packaged artifacts"
168- , key = " verify-packaged-artifacts"
189+ , key =
190+ " verify-packaged-artifacts-${DebianVersions.lowerName
191+ codename}"
169192 , target = Size. XLarge
170193 , depends_on = dependsOnTest
171194 }
@@ -188,10 +211,13 @@ let pipeline =
188211 ]
189212 }
190213 , steps =
191- generateDockerForCodename
192- spec
193- DebianVersions.DebVersion. Focal
194- pipelineName
214+ List / concatMap
215+ DebianVersions. DebVersion
216+ Command. Type
217+ ( \ (codename : DebianVersions. DebVersion )
218+ -> generateDockerForCodename spec codename pipelineName
219+ )
220+ spec. codenames
195221 }
196222
197223let generate_hardfork_package =
@@ -200,14 +226,20 @@ let generate_hardfork_package =
200226 -> \ (genesis_timestamp : Optional Text )
201227 -> \ (config_json_gz_url : Text )
202228 -> \ (suffix : Text )
229+ -> \ (version : Optional Text )
230+ -> \ (precomputed_block_prefix : Optional Text )
203231 -> ( pipeline
204232 Spec :: {
205233 , codenames = codenames
206234 , network = network
207- , version = " \\ \$MINA_DEB_VERSION"
235+ , version =
236+ merge
237+ { Some = \ (v : Text ) -> v, None = " \\ \$MINA_DEB_VERSION" }
238+ version
208239 , genesis_timestamp = genesis_timestamp
209240 , config_json_gz_url = config_json_gz_url
210241 , suffix = suffix
242+ , precomputed_block_prefix = precomputed_block_prefix
211243 }
212244 ). pipeline
213245
0 commit comments