build: add --validate=repro reproducibility check#3872
Conversation
fbb85f6 to
4d56471
Compare
4d56471 to
a865b2b
Compare
|
I dug into the CI failures and they were mostly a single root cause fanning out across the matrix, plus one integration panic and docs drift.
Locally verified: |
Thanks, but please submit separate PRs |
3297ff0 to
a865b2b
Compare
469034b to
525a179
Compare
|
Per review feedback, I split the follow-up CI fixes into separate PRs and kept this PR focused on Split PRs:
|
db34a07 to
98acfd7
Compare
|
@AkihiroSuda sorry for the trouble. Could you please approve the CI when you get a chance? |
|
Looks like the lint checks are failing across all platforms. I’ll patch the issues and push a follow-up commit shortly. |
98acfd7 to
586fb10
Compare
Fix gofmt import ordering so golangci-lint passes across the validate (lint, *) matrix. Signed-off-by: Lohit Kolluri <lohitkolluri@gmail.com>
586fb10 to
9d52c9e
Compare
|
@AkihiroSuda I tracked down the CI failures, it turned out one file just needed a quick formatting cleanup. I fixed that and pushed an updated (squashed) commit to this PR. CI should be Green now. |
|
@AkihiroSuda looks like CI is passing on all 3 PR's |
|
Thanks for working on this, but we need to pause this PR for now. The proposal in #2053 is still being discussed afaik. We have not yet aligned on whether this belongs in the Buildx CLI, whether it should live elsewhere such as the GitHub Action, or what the final flag/API shape should be. Per our contributing guidelines, this kind of large or high-impact changes should be coordinated with maintainers before submitting an implementation PR. Adding a new Please continue the design discussion in #2053 and wait for maintainer agreement on the scope and UX before opening or continuing implementation PRs. Otherwise we spend maintainer review and CI time on code that may not be accepted. I'm going to close this PR for now. Once the proposal is approved and the expected behavior is clearly defined, a focused implementation PR would be welcome. |
|
Understood that this needs maintainer alignment first. I’ll stop work on this PR and continue the design discussion in issue #2053 . Once there’s agreement on the expected behavior, I’m happy to come back with a smaller, focused implementation PR that matches it. |
Summary
--validateflag and implement--validate=repro.--no-cache.SOURCE_DATE_EPOCHis not explicitly set, it is pinned for both runs to make the digest comparison meaningful.Test plan
go test ./commands/...go build ./cmd/buildxCloses #2053