Skip to content

Commit 2ff8262

Browse files
JuArceMauroToscano
andauthored
feat(aggregation_mode): use deterministic build for Risc0 (#1918)
Co-authored-by: MauroFab <[email protected]>
1 parent 252cb52 commit 2ff8262

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

aggregation_mode/build.rs

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
use risc0_build::{DockerOptionsBuilder, GuestOptionsBuilder};
2+
use std::collections::HashMap;
3+
14
// Reference: https://docs.succinct.xyz/docs/sp1/writing-programs/compiling#advanced-build-options-1
25
fn main() {
36
sp1_build::build_program_with_args("./aggregation_programs/sp1", {
@@ -10,5 +13,16 @@ fn main() {
1013
}
1114
});
1215

13-
risc0_build::embed_methods();
16+
// With this containerized build process, we ensure that all builds of the guest code,
17+
// regardless of the machine or local environment, will produce the same ImageID
18+
let docker_options = DockerOptionsBuilder::default().build().unwrap();
19+
// Reference: https://github.com/risc0/risc0/blob/main/risc0/build/src/config.rs#L73-L90
20+
let guest_options = GuestOptionsBuilder::default()
21+
.use_docker(docker_options)
22+
.build()
23+
.unwrap();
24+
risc0_build::embed_methods_with_options(HashMap::from([(
25+
"risc0_aggregation_program",
26+
guest_options,
27+
)]));
1428
}

0 commit comments

Comments
 (0)