-
Notifications
You must be signed in to change notification settings - Fork 413
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(docker-build): pass additional workspace directory #1975
feat(docker-build): pass additional workspace directory #1975
Conversation
.try_into() | ||
.unwrap() | ||
}) | ||
.unwrap_or_else(|| program_metadata.workspace_root.clone()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add a sanity check here for ensuring the workspace directory is indeed a parent of the program?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could but there could be the case like ours where the guest program is separate cargo workspace project and parent directory which we want to be top level directory to be used in the docker mount would be cargo workspace. There could be need to make guest program separate workspace root since cargo patches can be applied to workspace root only.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Im not sure I follow, how could you compile a program without mounting its parent?
I don't mean direct child, just use Path::starts_with
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for this suggestion and sorry for the delay. I left a few nits, also you can optionally allow maintainers to push to your branch, and ill get this over the line. |
edc79bf
to
0cb3614
Compare
0cb3614
to
b24a62a
Compare
* chore: bump docker image * chore: bump patches * fix: workflow docker gnark install toolchain * fix: bump examples patch * fix: clean up install logic * fix: remove ed-consesnus patch * fix: test mod vis * fix: examples * fix: docker ci (#230) * chore: bump docker image * chore: bump patches * fix: workflow docker gnark install toolchain * fix: bump examples patch * fix: clean up install logic * fix * fix ci --------- Co-authored-by: nhtyy <[email protected]> * doc updates * chore: book + tracing (#1932) * fix: book deploy workflow * add versioned docs * chore: don't skip deploy step * try symlink gcc per rocksdb rec * try add fix for ARM musl targets * fix: need seperate musl setups arm vs x86 * combine old arm musl setup * feat: v4.0.1 (#1941) Co-authored-by: Ratan Kaliani <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * fix: macos-12 runners deprecated * improve docs regarding new memory argument * resolve comments * fix(book): commit yarn lock file (#1960) * feat: display the correct proof type in SP1ProofWithPublicValues::bytes() (#1964) * fix(ci): cache paths not found in book workflow * fix(ci): correct cache usage for book (#1965) * fix(ci): fix big int version to avoid msrv (#1966) * chore: include rustc --version stderr in panic (#1968) * fix(sdk): implemented verify for EnvProver (#1963) * perf: rm vec allocs from words conversions (#1972) * feat(sdk): proof timeout fix (#1971) * feat: don't checkout submodules when doing `cargo prove new --evm` (#1976) * fix(sdk): retry network request proof (#1977) * feat(sdk): Turn off `alloy-*` crate features by default (#1980) * docs: add audit report for v4, fix typo (#1988) * docs: improve precompile security docs (#1991) * fix: Write diagnostics to stderr (vs stdout) (#1978) * fix(examples): check next validators hash in tendermint program (#1992) * feat(docker-build): pass additional workspace directory (#1975) * chore: ignore generated by Intellij-based IDEs. (#1986) * docs: add GitHub token usage example in installation guide (#1984) * feat: remove deprecated #[clap] attribute (#1898) * chore: rm redundant to_vec (#1970) * chore(clippy): misc clippy fixes (#1969) * fix: use downloadable go directive 1.22.0 (#1967) * chore: reorder impl members to match trait definition (#1985) * fix: deferred checkpoints optimization (#1973) Co-authored-by: N <[email protected]> * fix(ci): clippy + fmt (#1997) * fix: typo in prover network docs (#1998) * test: check syscalls are actually emitted (#1981) * perf(prover): powers of alpha (#2000) Co-authored-by: nhtyy <[email protected]> Co-authored-by: Yuwen Zhang <[email protected]> Co-authored-by: jtguibas <[email protected]> Co-authored-by: Ratan Kaliani <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: rkm0959 <[email protected]> Co-authored-by: Aurélien <[email protected]> Co-authored-by: Matthias Seitz <[email protected]> Co-authored-by: srdtrk <[email protected]> Co-authored-by: Matt Stam <[email protected]> Co-authored-by: Ivan Mikushin <[email protected]> Co-authored-by: Abishek Bashyal <[email protected]> Co-authored-by: DevOrbitlabs <[email protected]> Co-authored-by: Gengar <[email protected]> Co-authored-by: crStiv <[email protected]> Co-authored-by: Chris T. <[email protected]> * nit --------- Co-authored-by: nhtyy <[email protected]> Co-authored-by: Yuwen Zhang <[email protected]> Co-authored-by: jtguibas <[email protected]> Co-authored-by: Ratan Kaliani <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: rkm0959 <[email protected]> Co-authored-by: Aurélien <[email protected]> Co-authored-by: Matthias Seitz <[email protected]> Co-authored-by: srdtrk <[email protected]> Co-authored-by: Matt Stam <[email protected]> Co-authored-by: Ivan Mikushin <[email protected]> Co-authored-by: Abishek Bashyal <[email protected]> Co-authored-by: DevOrbitlabs <[email protected]> Co-authored-by: Gengar <[email protected]> Co-authored-by: crStiv <[email protected]> Co-authored-by: Chris T. <[email protected]>
* chore: bump docker image * chore: bump patches * fix: workflow docker gnark install toolchain * fix: bump examples patch * fix: clean up install logic * fix: remove ed-consesnus patch * fix: test mod vis * fix: examples * fix: docker ci (#230) * chore: bump docker image * chore: bump patches * fix: workflow docker gnark install toolchain * fix: bump examples patch * fix: clean up install logic * fix * fix ci --------- Co-authored-by: nhtyy <[email protected]> * doc updates * chore: book + tracing (#1932) * fix: book deploy workflow * add versioned docs * chore: don't skip deploy step * try symlink gcc per rocksdb rec * try add fix for ARM musl targets * fix: need seperate musl setups arm vs x86 * combine old arm musl setup * feat: v4.0.1 (#1941) Co-authored-by: Ratan Kaliani <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * fix: macos-12 runners deprecated * improve docs regarding new memory argument * resolve comments * fix(book): commit yarn lock file (#1960) * feat: display the correct proof type in SP1ProofWithPublicValues::bytes() (#1964) * fix(ci): cache paths not found in book workflow * fix(ci): correct cache usage for book (#1965) * fix(ci): fix big int version to avoid msrv (#1966) * chore: include rustc --version stderr in panic (#1968) * fix(sdk): implemented verify for EnvProver (#1963) * perf: rm vec allocs from words conversions (#1972) * feat(sdk): proof timeout fix (#1971) * feat: don't checkout submodules when doing `cargo prove new --evm` (#1976) * fix(sdk): retry network request proof (#1977) * feat(sdk): Turn off `alloy-*` crate features by default (#1980) * docs: add audit report for v4, fix typo (#1988) * docs: improve precompile security docs (#1991) * fix: Write diagnostics to stderr (vs stdout) (#1978) * fix(examples): check next validators hash in tendermint program (#1992) * feat(docker-build): pass additional workspace directory (#1975) * chore: ignore generated by Intellij-based IDEs. (#1986) * docs: add GitHub token usage example in installation guide (#1984) * feat: remove deprecated #[clap] attribute (#1898) * chore: rm redundant to_vec (#1970) * chore(clippy): misc clippy fixes (#1969) * fix: use downloadable go directive 1.22.0 (#1967) * chore: reorder impl members to match trait definition (#1985) * fix: deferred checkpoints optimization (#1973) Co-authored-by: N <[email protected]> * fix(ci): clippy + fmt (#1997) * fix: typo in prover network docs (#1998) * test: check syscalls are actually emitted (#1981) * perf(prover): powers of alpha (#2000) Co-authored-by: nhtyy <[email protected]> Co-authored-by: Yuwen Zhang <[email protected]> Co-authored-by: jtguibas <[email protected]> Co-authored-by: Ratan Kaliani <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: rkm0959 <[email protected]> Co-authored-by: Aurélien <[email protected]> Co-authored-by: Matthias Seitz <[email protected]> Co-authored-by: srdtrk <[email protected]> Co-authored-by: Matt Stam <[email protected]> Co-authored-by: Ivan Mikushin <[email protected]> Co-authored-by: Abishek Bashyal <[email protected]> Co-authored-by: DevOrbitlabs <[email protected]> Co-authored-by: Gengar <[email protected]> Co-authored-by: crStiv <[email protected]> Co-authored-by: Chris T. <[email protected]> * fix: counts and small shape fixing (#2007) * patch lock --------- Co-authored-by: nhtyy <[email protected]> Co-authored-by: Yuwen Zhang <[email protected]> Co-authored-by: jtguibas <[email protected]> Co-authored-by: Ratan Kaliani <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: rkm0959 <[email protected]> Co-authored-by: Aurélien <[email protected]> Co-authored-by: Matthias Seitz <[email protected]> Co-authored-by: srdtrk <[email protected]> Co-authored-by: Matt Stam <[email protected]> Co-authored-by: Ivan Mikushin <[email protected]> Co-authored-by: Abishek Bashyal <[email protected]> Co-authored-by: DevOrbitlabs <[email protected]> Co-authored-by: Gengar <[email protected]> Co-authored-by: crStiv <[email protected]> Co-authored-by: Chris T. <[email protected]> Co-authored-by: umadayal <[email protected]>
Motivation
In the current docker build it only mounts the guest-program workspace root and any relative import like this will not work.
Solution
Extend the BuildArgs, to make the workspace directory that docker mounts configurable instead of guest-program workspace root
PR Checklist