From: Alexandru Avadanii Date: Tue, 25 Jun 2019 15:46:42 +0000 (+0200) Subject: [docker] Add sonobuoy multiarch image build X-Git-Tag: 2.0.0~67^2 X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=commitdiff_plain;h=6b937d0dc0f36596c9bc1ef8766ba7363451458d;hp=6b937d0dc0f36596c9bc1ef8766ba7363451458d;p=validation.git [docker] Add sonobuoy multiarch image build Upstream sonobuoy lacks 2 images for AArch64 architecture, so build our own multiarch amd64 (x86_64) + arm64 (AArch64) images for: - sonobuoy-plugin-systemd-logs (tag version 'latest'); - kube-conformance (tag version 'v1.11'); The new images will be pushed to Dockerhub as: - akraino/validation:sonobuoy-plugin-systemd-logs-latest - akraino/validation:kube-conformance-v1.11 Since upstream Dockerfiles require small changes for AArch64 support, implement a new patching mechanism via new make targets in `docker/build.mk`: - .submodules_init * initializes the (newly added) git submodules in this repository and pulls the pinned-down commit for each submodule; - .submodules_patched * Applies patches found in the `patches` and/or `patches/` subdirectories for each submodule (using `git am -3`), so we can apply AArch64-specific changes only on arm64 platforms; - .submodules_clean * Un-applies patches by resetting each git submodule to its pinned-down commit; To add support for pre-build actions like submodules init + patching, turn `.build` make target into a double-colon target and extend it for the two new containers accordingly. To prevent tox verify failures, adjust ui .eslintrc and tox.ini to remove the git submodules first (second one being a temporary workaround until ci-management allows configuring verify jobs with git submodule handling disabled). JIRA: VAL-24 Change-Id: Ibfeb3551e44e82fdade2886985ca4577b7d32522 Signed-off-by: Alexandru Avadanii ---