-
Notifications
You must be signed in to change notification settings - Fork 44
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
"bob dev" does not work intuitively with binary artifacts when source comes from tags/commits #106
Labels
Comments
jkloetzke
added a commit
to jkloetzke/bob
that referenced
this issue
Feb 5, 2017
When working with "bob dev" the developer expects to be able to change any of the involved sources, call bob again and it will rebuild with the changes. If binary artifacts are used and the sources are deterministic this was not true anymore. The problem was that Bob treated deterministic sources different. For these the actual sources were irrelevant and the binary artifact was downloaded just by looking at the configured tag/commit. Starting with this commit Bob doesn't treat tags/commit special anymore. Bob will always checkout all involved sources first, create a hash sum and use that as the access key for the binary artifact. This has already been the behavior for checkouts from branches. As this changes the calculation of the build-id any artifacts that were built from tags will be incompatible with previous versions of Bob. Fixes BobBuildTool#106.
Merged
jkloetzke
added a commit
to jkloetzke/bob
that referenced
this issue
Feb 6, 2017
When working with "bob dev" the developer expects to be able to change any of the involved sources, call bob again and it will rebuild with the changes. If binary artifacts are used and the sources are deterministic this was not true anymore. The problem was that Bob treated deterministic sources different. For these the actual sources were irrelevant and the binary artifact was downloaded just by looking at the configured tag/commit. Starting with this commit Bob doesn't treat tags/commit special anymore. Bob will always checkout all involved sources first, create a hash sum and use that as the access key for the binary artifact. This has already been the behavior for checkouts from branches. As this changes the calculation of the build-id any artifacts that were built from tags will be incompatible with previous versions of Bob. Fixes BobBuildTool#106.
jkloetzke
added a commit
to jkloetzke/bob
that referenced
this issue
Feb 10, 2017
When working with "bob dev" the developer expects to be able to change any of the involved sources, call bob again and it will rebuild with the changes. If binary artifacts are used and the sources are deterministic this was not true anymore. The problem was that Bob treated deterministic sources different. For these the actual sources were irrelevant and the binary artifact was downloaded just by looking at the configured tag/commit. Starting with this commit Bob doesn't treat tags/commit special anymore. Bob will always checkout all involved sources first, create a hash sum and use that as the access key for the binary artifact. This has already been the behavior for checkouts from branches. As this changes the calculation of the build-id any artifacts that were built from tags will be incompatible with previous versions of Bob. Fixes BobBuildTool#106.
jkloetzke
added a commit
to jkloetzke/bob
that referenced
this issue
Feb 12, 2017
When working with "bob dev" the developer expects to be able to change any of the involved sources, call bob again and it will rebuild with the changes. If binary artifacts are used and the sources are deterministic this was not true anymore. The problem was that Bob treated deterministic sources different. For these the actual sources were irrelevant and the binary artifact was downloaded just by looking at the configured tag/commit. Starting with this commit Bob doesn't treat tags/commit special anymore. Bob will always checkout all involved sources first, create a hash sum and use that as the access key for the binary artifact. This has already been the behavior for checkouts from branches. As this changes the calculation of the build-id any artifacts that were built from tags will be incompatible with previous versions of Bob. Fixes BobBuildTool#106.
rhubert
pushed a commit
to rhubert/bob
that referenced
this issue
Feb 14, 2017
When working with "bob dev" the developer expects to be able to change any of the involved sources, call bob again and it will rebuild with the changes. If binary artifacts are used and the sources are deterministic this was not true anymore. The problem was that Bob treated deterministic sources different. For these the actual sources were irrelevant and the binary artifact was downloaded just by looking at the configured tag/commit. Starting with this commit Bob doesn't treat tags/commit special anymore. Bob will always checkout all involved sources first, create a hash sum and use that as the access key for the binary artifact. This has already been the behavior for checkouts from branches. As this changes the calculation of the build-id any artifacts that were built from tags will be incompatible with previous versions of Bob. Fixes BobBuildTool#106.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
When working with "bob dev" the developer expects to be able to change any of the involved sources, call bob again and it will rebuild with the changes. If binary artifacts are used and the sources are deterministic this is not true anymore. The problem is that Bob treats deterministic sources different. For these the actual sources are irrelevant and the binary artifact is downloaded just by looking at the configured tag/commit.
Steps to reproduce with bob-tutorials/binary-repository:
Instead of tripping over the #error Bob will happily download the artifact for "root":
Possible fixes:
This will always checkout all involved sources first, create a hash sum and use that as the access key for the binary artifact. This is already the behavior for checkouts from branches.
For packages that have their sources checked out it is verified that they were not modified by the user. This validates that the downloaded artifact can be used.
In release mode Bob could use the current defintion to download artifacts as early as possible. In develop mode Bob could use the source-based build-id to behave like in 1.
The text was updated successfully, but these errors were encountered: