diff options
Diffstat (limited to 'infra/nncc/config/docker.configuration')
-rw-r--r-- | infra/nncc/config/docker.configuration | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/infra/nncc/config/docker.configuration b/infra/nncc/config/docker.configuration new file mode 100644 index 000000000..7078585a2 --- /dev/null +++ b/infra/nncc/config/docker.configuration @@ -0,0 +1,46 @@ +DOCKER_IMAGE_NAME=${DOCKER_IMAGE_NAME:-nnas} +echo "Using docker image ${DOCKER_IMAGE_NAME}" + +if [ -z "`docker images ${DOCKER_IMAGE_NAME}`" ]; then + echo "Need docker image!" + exit 1 +fi + +HOST_PATH="$NNCC_PROJECT_PATH" +DOCKER_PATH="$NNCC_PROJECT_PATH" + +export GIT_SSL_NO_VERIFY=1 + +DOCKER_VOLUMES=" -v $HOST_PATH:$DOCKER_PATH" + +DOCKER_ENV_VARS+=" -e http_proxy" +DOCKER_ENV_VARS+=" -e no_proxy" +DOCKER_ENV_VARS+=" -e GIT_SSL_NO_VERIFY" +DOCKER_ENV_VARS+=" -e CAFFE_URL" +DOCKER_ENV_VARS+=" -e GTEST_URL" +DOCKER_ENV_VARS+=" -e EIGEN_URL" +DOCKER_ENV_VARS+=" -e GEMMLOWP_URL" +DOCKER_ENV_VARS+=" -e FLATBUFFERS_URL" +DOCKER_ENV_VARS+=" -e FARMHASH_URL" +DOCKER_ENV_VARS+=" -e NEON2SSE_URL" +DOCKER_ENV_VARS+=" -e TENSORFLOW_URL" + +DOCKER_ENV_VARS+=" -e NNCC_WORKSPACE" + +DOCKER_RUN_OPTS="${DOCKER_OPTS}" +DOCKER_RUN_OPTS+=" --rm" +DOCKER_RUN_OPTS+=" -w $DOCKER_PATH" + +function docker_cleanup() +{ + # Newly created files during during docker run can have different ownership. + # This may cause some problems, for example, some jenkins slaves or developers + # can't remove built files due to lack of permission. + # To address this issue, let's change owner of all files + # in nncc to owner of nncc. + NNCC_OWNER_UID=$(stat -c "%u" $HOST_PATH) + NNCC_OWNER_GID=$(stat -c "%g" $HOST_PATH) + + CMD="chown -R $NNCC_OWNER_UID:$NNCC_OWNER_GID $DOCKER_PATH" + docker run $DOCKER_RUN_OPTS $DOCKER_ENV_VARS $DOCKER_VOLUMES $DOCKER_IMAGE_NAME $CMD +} |