Skip to content

docker, cli, lang: Deterministic and verifiable builds#100

Merged
armaniferrante merged 7 commits into
masterfrom
armani/verify
Mar 9, 2021
Merged

docker, cli, lang: Deterministic and verifiable builds#100
armaniferrante merged 7 commits into
masterfrom
armani/verify

Conversation

@armaniferrante

@armaniferrante armaniferrante commented Mar 8, 2021

Copy link
Copy Markdown
Contributor

Features

  • adds --verifiable flag to anchor build --verifiable and anchor launch --verifiable, which runs the build inside a docker image so that the output binary is deterministic (assuming one uses a Cargo.lock file)
  • adds anchor verify <program-id> command, checking the deterministic build from source of the local anchor program matches what is deployed at the given program-id on chain.

@armaniferrante armaniferrante marked this pull request as ready for review March 9, 2021 13:39
@armaniferrante armaniferrante merged commit a7b092a into master Mar 9, 2021
@armaniferrante armaniferrante deleted the armani/verify branch March 9, 2021 13:40
@fanatid

fanatid commented Jul 10, 2021

Copy link
Copy Markdown
Contributor

I can be boring but while system dependencies are not pinning too there is a high probability that builds will not be deterministic.

@armaniferrante

Copy link
Copy Markdown
Contributor Author

@fanatid I assume this can be overcome? I haven't run into this yet.

Otter-0x4ka5h pushed a commit to Otter-0x4ka5h/anchor that referenced this pull request Mar 25, 2026
@jamie-osec jamie-osec added this to the Pre-1.0 milestone Jun 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants