2c09054c4b
Arbitrary labels could be added as `make` parameter `LABEL=`, which is used in att-comdev/cicd Jenkins pipelines. Sample parameter: 'LABEL=org.label-schema.vcs-url=${GERRIT_CHANGE_URL} \ --label org.label-schema.base-image=${base_sha256}' Sample usage: See Jenkinsfile files under images/ directory in att-comdev/cicd repo. In addition to that, if `COMMIT` variable is undefined when invoking `make`, we use result of `git rev-parse HEAD` command, which should output latest git commit ID. [0] https://github.com/att-comdev/cicd Change-Id: I9193ca03cb3970e3a3e1cb64ff643a4d24543636
38 lines
1.3 KiB
Bash
Executable File
38 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
set -x
|
|
|
|
UBUNTU_REPO=${UBUNTU_REPO:-""}
|
|
TRUSTED_UBUNTU_REPO=${TRUSTED_UBUNTU_REPO:-"no"}
|
|
ALLOW_UNATHENTICATED=${ALLOW_UNAUTHENTICATED:-"false"}
|
|
PIP_INDEX_URL=${PIP_INDEX_URL:-""}
|
|
PIP_TRUSTED_HOST=${PIP_TRUSTED_HOST:-""}
|
|
|
|
ADDL_BUILD_ARGS=""
|
|
|
|
if [[ ! -z "${UBUNTU_REPO}" ]]
|
|
then
|
|
ADDL_BUILD_ARGS="${ADDL_BUILD_ARGS} --build-arg UBUNTU_REPO=${UBUNTU_REPO}"
|
|
ADDL_BUILD_ARGS="${ADDL_BUILD_ARGS} --build-arg TRUSTED_UBUNTU_REPO=${TRUSTED_UBUNTU_REPO}"
|
|
ADDL_BUILD_ARGS="${ADDL_BUILD_ARGS} --build-arg ALLOW_UNAUTHENTICATED=${ALLOW_UNAUTHENTICATED}"
|
|
fi
|
|
|
|
if [[ ! -z "${PIP_INDEX_URL}" ]]
|
|
then
|
|
ADDL_BUILD_ARGS="${ADDL_BUILD_ARGS}| --build-arg PIP_INDEX_URL=${PIP_INDEX_URL}"
|
|
ADDL_BUILD_ARGS="${ADDL_BUILD_ARGS}| --build-arg PIP_TRUSTED_HOST=${PIP_TRUSTED_HOST}"
|
|
fi
|
|
|
|
docker build --network host -t ${IMAGE} --label ${LABEL} \
|
|
--label org.opencontainers.image.revision=${COMMIT} \
|
|
--label org.opencontainers.image.created="$(date --rfc-3339=seconds --utc)" \
|
|
--label org.opencontainers.image.title=${IMAGE_NAME} \
|
|
-f images/drydock/Dockerfile \
|
|
${ADDL_BUILD_ARGS} \
|
|
--build-arg BUILD_DIR=${BUILD_DIR} \
|
|
--build-arg http_proxy=${http_proxy} \
|
|
--build-arg https_proxy=${https_proxy} \
|
|
--build-arg HTTP_PROXY=${HTTP_PROXY} \
|
|
--build-arg HTTPS_PROXY=${HTTPS_PROXY} \
|
|
--build-arg no_proxy=${no_proxy} \
|
|
--build-arg NO_PROXY=${NO_PROXY} .
|