Re: [Qemu-devel] [PATCH v3 02/24] docker: add --include-files argument to 'build' command

2017-05-26 Thread Philippe Mathieu-Daudé

On 05/24/2017 02:34 AM, Fam Zheng wrote:

On Wed, 05/24 13:21, Fam Zheng wrote:

diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index 6ddc6e4c2a..68cca25f89 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -237,6 +237,11 @@ class BuildCommand(SubCommand):
 help="""Specify a binary that will be copied to the
 container together with all its dependent
 libraries""")
+parser.add_argument("--extra-files", "-f", nargs='*',
+help="""Specify files that will be sent to the
+Docker daemon. The daemon will copy those files 
into
+the built image. The ADD directive of the 
Dockerfile
+specify where a file is placed into the image""")


Or more precisely, "The daemon will copy these files into the docker build
directory, which can be copied to the built image with ADD directives in
Dockerfile"?


Hmm, not copied by daemon, maybe "The files will be sent...". But you have the
idea.


I tried to keep it simple like this:
"Specify files that will be copied in the Docker image, fulfilling the 
ADD directives from the Dockerfile"




Re: [Qemu-devel] [PATCH v3 02/24] docker: add --include-files argument to 'build' command

2017-05-23 Thread Fam Zheng
On Wed, 05/24 13:21, Fam Zheng wrote:
> > diff --git a/tests/docker/docker.py b/tests/docker/docker.py
> > index 6ddc6e4c2a..68cca25f89 100755
> > --- a/tests/docker/docker.py
> > +++ b/tests/docker/docker.py
> > @@ -237,6 +237,11 @@ class BuildCommand(SubCommand):
> >  help="""Specify a binary that will be copied 
> > to the
> >  container together with all its dependent
> >  libraries""")
> > +parser.add_argument("--extra-files", "-f", nargs='*',
> > +help="""Specify files that will be sent to the
> > +Docker daemon. The daemon will copy those 
> > files into
> > +the built image. The ADD directive of the 
> > Dockerfile
> > +specify where a file is placed into the 
> > image""")
> 
> Or more precisely, "The daemon will copy these files into the docker build
> directory, which can be copied to the built image with ADD directives in
> Dockerfile"?

Hmm, not copied by daemon, maybe "The files will be sent...". But you have the
idea.

Fam



Re: [Qemu-devel] [PATCH v3 02/24] docker: add --include-files argument to 'build' command

2017-05-23 Thread Fam Zheng
On Sun, 05/21 00:29, Philippe Mathieu-Daudé wrote:
> Signed-off-by: Philippe Mathieu-Daudé 
> ---
>  tests/docker/Makefile.include |  5 -
>  tests/docker/docker.py| 12 +---
>  2 files changed, 13 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
> index 03eda37bf4..fe1a9a53ff 100644
> --- a/tests/docker/Makefile.include
> +++ b/tests/docker/Makefile.include
> @@ -51,6 +51,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
>   $(SRC_PATH)/tests/docker/docker.py build qemu:$* $< \
>   $(if $V,,--quiet) $(if $(NOCACHE),--no-cache) \
>   $(if $(NOUSER),,--add-current-user) \
> + $(if $(EXTRA_FILES),--extra-files $(EXTRA_FILES))\
>   $(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\
>   "BUILD","$*")
>  
> @@ -107,6 +108,8 @@ docker:
>   @echo 'NOUSER   Define to disable adding current user 
> to containers passwd.'
>   @echo 'NOCACHE=1Ignore cache when build images.'
>   @echo 'EXECUTABLE=Include executable in image.'
> + @echo 'EXTRA_FILES=" [... ]"'
> + @echo ' Include extra files in image.'
>  
>  # This rule if for directly running against an arbitrary docker target.
>  # It is called by the expanded docker targets (e.g. make
> diff --git a/tests/docker/docker.py b/tests/docker/docker.py
> index 6ddc6e4c2a..68cca25f89 100755
> --- a/tests/docker/docker.py
> +++ b/tests/docker/docker.py
> @@ -237,6 +237,11 @@ class BuildCommand(SubCommand):
>  help="""Specify a binary that will be copied to 
> the
>  container together with all its dependent
>  libraries""")
> +parser.add_argument("--extra-files", "-f", nargs='*',
> +help="""Specify files that will be sent to the
> +Docker daemon. The daemon will copy those files 
> into
> +the built image. The ADD directive of the 
> Dockerfile
> +specify where a file is placed into the image""")

Or more precisely, "The daemon will copy these files into the docker build
directory, which can be copied to the built image with ADD directives in
Dockerfile"?

>  parser.add_argument("--add-current-user", "-u", dest="user",
>  action="store_true",
>  help="Add the current user to image's passwd")
> @@ -270,10 +275,11 @@ class BuildCommand(SubCommand):
>  print "%s exited with code %d" % (docker_pre, rc)
>  return 1
>  
> -# Do we include a extra binary?
> +# Include files used by ADD directives found within the 
> Dockerfile.
>  if args.include_executable:
> -_copy_binary_with_libs(args.include_executable,
> -   docker_dir)
> +_copy_binary_with_libs(args.include_executable, docker_dir)
> +for filename in args.extra_files or []:
> +_copy_with_mkdir(filename, docker_dir)
>  
>  argv += ["--build-arg=" + k.lower() + "=" + v
>  for k, v in os.environ.iteritems()
> -- 
> 2.11.0
> 



Re: [Qemu-devel] [PATCH v3 02/24] docker: add --include-files argument to 'build' command

2017-05-22 Thread Alex Bennée

Philippe Mathieu-Daudé  writes:

> Signed-off-by: Philippe Mathieu-Daudé 

Reviewed-by: Alex Bennée 

> ---
>  tests/docker/Makefile.include |  5 -
>  tests/docker/docker.py| 12 +---
>  2 files changed, 13 insertions(+), 4 deletions(-)
>
> diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
> index 03eda37bf4..fe1a9a53ff 100644
> --- a/tests/docker/Makefile.include
> +++ b/tests/docker/Makefile.include
> @@ -51,6 +51,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
>   $(SRC_PATH)/tests/docker/docker.py build qemu:$* $< \
>   $(if $V,,--quiet) $(if $(NOCACHE),--no-cache) \
>   $(if $(NOUSER),,--add-current-user) \
> + $(if $(EXTRA_FILES),--extra-files $(EXTRA_FILES))\
>   $(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\
>   "BUILD","$*")
>
> @@ -107,6 +108,8 @@ docker:
>   @echo 'NOUSER   Define to disable adding current user 
> to containers passwd.'
>   @echo 'NOCACHE=1Ignore cache when build images.'
>   @echo 'EXECUTABLE=Include executable in image.'
> + @echo 'EXTRA_FILES=" [... ]"'
> + @echo ' Include extra files in image.'
>
>  # This rule if for directly running against an arbitrary docker target.
>  # It is called by the expanded docker targets (e.g. make
> diff --git a/tests/docker/docker.py b/tests/docker/docker.py
> index 6ddc6e4c2a..68cca25f89 100755
> --- a/tests/docker/docker.py
> +++ b/tests/docker/docker.py
> @@ -237,6 +237,11 @@ class BuildCommand(SubCommand):
>  help="""Specify a binary that will be copied to 
> the
>  container together with all its dependent
>  libraries""")
> +parser.add_argument("--extra-files", "-f", nargs='*',
> +help="""Specify files that will be sent to the
> +Docker daemon. The daemon will copy those files 
> into
> +the built image. The ADD directive of the 
> Dockerfile
> +specify where a file is placed into the image""")
>  parser.add_argument("--add-current-user", "-u", dest="user",
>  action="store_true",
>  help="Add the current user to image's passwd")
> @@ -270,10 +275,11 @@ class BuildCommand(SubCommand):
>  print "%s exited with code %d" % (docker_pre, rc)
>  return 1
>
> -# Do we include a extra binary?
> +# Include files used by ADD directives found within the 
> Dockerfile.
>  if args.include_executable:
> -_copy_binary_with_libs(args.include_executable,
> -   docker_dir)
> +_copy_binary_with_libs(args.include_executable, docker_dir)
> +for filename in args.extra_files or []:
> +_copy_with_mkdir(filename, docker_dir)
>
>  argv += ["--build-arg=" + k.lower() + "=" + v
>  for k, v in os.environ.iteritems()


--
Alex Bennée



[Qemu-devel] [PATCH v3 02/24] docker: add --include-files argument to 'build' command

2017-05-20 Thread Philippe Mathieu-Daudé
Signed-off-by: Philippe Mathieu-Daudé 
---
 tests/docker/Makefile.include |  5 -
 tests/docker/docker.py| 12 +---
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 03eda37bf4..fe1a9a53ff 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -51,6 +51,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
$(SRC_PATH)/tests/docker/docker.py build qemu:$* $< \
$(if $V,,--quiet) $(if $(NOCACHE),--no-cache) \
$(if $(NOUSER),,--add-current-user) \
+   $(if $(EXTRA_FILES),--extra-files $(EXTRA_FILES))\
$(if $(EXECUTABLE),--include-executable=$(EXECUTABLE)),\
"BUILD","$*")
 
@@ -107,6 +108,8 @@ docker:
@echo 'NOUSER   Define to disable adding current user 
to containers passwd.'
@echo 'NOCACHE=1Ignore cache when build images.'
@echo 'EXECUTABLE=Include executable in image.'
+   @echo 'EXTRA_FILES=" [... ]"'
+   @echo ' Include extra files in image.'
 
 # This rule if for directly running against an arbitrary docker target.
 # It is called by the expanded docker targets (e.g. make
diff --git a/tests/docker/docker.py b/tests/docker/docker.py
index 6ddc6e4c2a..68cca25f89 100755
--- a/tests/docker/docker.py
+++ b/tests/docker/docker.py
@@ -237,6 +237,11 @@ class BuildCommand(SubCommand):
 help="""Specify a binary that will be copied to the
 container together with all its dependent
 libraries""")
+parser.add_argument("--extra-files", "-f", nargs='*',
+help="""Specify files that will be sent to the
+Docker daemon. The daemon will copy those files 
into
+the built image. The ADD directive of the 
Dockerfile
+specify where a file is placed into the image""")
 parser.add_argument("--add-current-user", "-u", dest="user",
 action="store_true",
 help="Add the current user to image's passwd")
@@ -270,10 +275,11 @@ class BuildCommand(SubCommand):
 print "%s exited with code %d" % (docker_pre, rc)
 return 1
 
-# Do we include a extra binary?
+# Include files used by ADD directives found within the Dockerfile.
 if args.include_executable:
-_copy_binary_with_libs(args.include_executable,
-   docker_dir)
+_copy_binary_with_libs(args.include_executable, docker_dir)
+for filename in args.extra_files or []:
+_copy_with_mkdir(filename, docker_dir)
 
 argv += ["--build-arg=" + k.lower() + "=" + v
 for k, v in os.environ.iteritems()
-- 
2.11.0