-
Notifications
You must be signed in to change notification settings - Fork 177
Use standard archive/tar instead of docker's untar implementation #435
Conversation
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Update code owners according to current project setup 😉
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
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.
Question : Why is it required ?
- What are the reasons behind moving away form
github.com/docker/docker/pkg/archive
? - If it's related to
lchown
, I'm pretty sure usingTarOptions
fieldNoLchown
should work. - If not, I still believe it's better to fix/contribute upstream (it's even in the same
docker
org…) that duplicate this code.
e004ebd
to
79f639b
Compare
@vdemeester The long story is that:
The idea is to be able to run this test with just a
That was my first guess. The problem here is that according to
My concern with this is that from what it looks, Given that, one possibility of contribution for the upstream would be add a new func in Talking with @silvin-lubecki, he came with a simplier solution, that consists in just iterate through the entries in the archive, instead of really extracting and iterating through it. |
We should probably be careful replacing this package; there may be special cases for backward compatibility in this package @tonistiigi @dmcgowan |
@vdemeester And what about now? |
d60659b
to
ddbedfd
Compare
If the voting app is deployed using production params, the result service fails to deploy as port 80 already is taken by vote service Steps to reproduce: voting-app$ docker-app render --parameters-files voting-app.dockerapp/parameters/production.yml | docker stack deploy --compose-file - voting Signed-off-by: Andreas Amstutz <andreasamstutz@gmail.com>
Signed-off-by: Andreas Amstutz <andreasamstutz@gmail.com>
Correct build instruction for experimental build
Closes docker#448 Signed-off-by: Andreas Amstutz <andreasamstutz@gmail.com>
Add missing 'TraverseChildren: true' in the cobra.Command
fix port '80' is already in use (voting-app production params)
Signed-off-by: Joe Abbey <joe.abbey@gmail.com>
Improving installer scripts
* Fix tag generation by truncating the git sha. * Fix saving cnab base image to a global tmp directory and put it in a local git ignored directory (_build). * Remove the cnab base image from the CI local daemon * Load invocation image directly instead of using a make target. Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Install command also detects if the argument is a Docker Application Package. It will then bundle it and run the CNAB action Install. It is now a CNAB installer, and all the docker-app deployment logic is moved to the docker-app backend binary run in cmd/run/install.go. The installation is added in the duffle claim store. * Rename deploy command to install (with still alias to deploy) Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
It will run the Uninstall CNAB action in the cmd/run/uninstall.go to remove a Docker Application Package deployment. Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
For a Docker Application Package, it will run a "docker stack services" on the deployed stack. Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
*Fix running docker-app validate only on application package examples and skip CNAB examples. Signed-off-by: Christopher Crone <christopher.crone@docker.com>
…xt has not been specified. Factorize credentialset and target-context flags. Extract all helper functions to their own go file. Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Introduce CNAB core commands All outstanding issues will be done on followups. We also need to rebase every other PRs targeting the CNAB branch
58d17c4
to
6c84a2b
Compare
Please sign your commits following these rules: $ git clone -b "std-untar" git@github.com:ulyssessouza/app.git somewhere
$ cd somewhere
$ git rebase -i HEAD~842357813216
editor opens
change each 'pick' to 'edit'
save the file and quit
$ git commit --amend -s --no-edit
$ git rebase --continue # and repeat the amend for each commit
$ git push -f Amending updates the existing PR. You DO NOT need to open a new one. |
Codecov Report
@@ Coverage Diff @@
## cnab-preview #435 +/- ##
===============================================
Coverage ? 59.04%
===============================================
Files ? 56
Lines ? 2803
Branches ? 0
===============================================
Hits ? 1655
Misses ? 931
Partials ? 217
Continue to review full report at Codecov.
|
Closing it since it has been merged by #443 |
!!! Note that this PR is implemented based in another !!!
The only 2 exclusive files on this PR are:
- What I did
Substitute docker's untar package with a standard golang implementation
- How I did it
Adapted an implementation of untar to fit our needs and use it in
TestPackInvocationImageContext
- How to verify it
Tests on packing_test.go passing without the need of running inside a container (just with
make test
and notmake -f docker.Makefile test
)- Description for the changelog
Substitute docker's untar package with a standard golang implementation
- A picture of a cute animal