docker: Allow interrupting packaging jobs with C-c.

Use the recommended exec syntax for the CMD directive in the
Dockerfiles, which invokes the command directly rather than through an
intermediate shell.  Also provide the -i option, but conditionally as
Docker checks if there is a real TTY to connect to, which is not the
case in Jenkins.

* scripts/make-packaging-target.py (PACKAGE_*_DOCKER_RUN_COMMAND)
[IS_SHELL_INTERACTIVE]: Conditionally provide the '-i' option.
(package-*-interactive) <DOCKER_EXTRA_ARGS>: Remove target-specific variable.
(DOCKER_EXTRA_ARGS): Move/rename variable to ...
* Makefile (DOCKER_RUN_EXTRA_ARGS): ... here/this.
(IS_SHELL_INTERACTIVE): New variable.

The rest of this change was automated using the command:

  $ git grep -l CMD | xargs sed -i -E 's,CMD (.*)$,CMD ["\1"],g'

Change-Id: I93ba9ad8115541a7c7f02421384ae01a5b0650ad
18 files changed