Chown the directories added into container in test_from_dockerfile. #521
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Since bundler v2.5.0, if the
frozen
option is not specified via CLI or config, bundler will 'touch' the Gemfile.lock to update timestamps. This will fail in test_from_dockerfile since the app-src is added into the container with ownership of root:root.Ideally, we expect the directory is writeable, so adjust ownership via the Containerfile ADD --chown=: instruction.
Commit in bundler that introduced this behavior:
rubygems/rubygems@b08f2f1
Fixes for 3.3 test_from_dockerfile tests in #507 .
There are other alternatives, such as adding the --frozen, however supplying that is deprecated, so there would need to be an additional step that would use set and then we are depending on the behavior of bundler, which I personally don't like. I find it better to just own the directory. Other alternative is just chowning Gemfile.lock and leave the rest of the directory be.