blob: 7078585a2d5e25ff5661568c4897a1d77c254315 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
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
}
|