diff --git a/Jenkins/Dockerfile b/Jenkins/Dockerfile index 6fee9849e..e9129de7b 100644 --- a/Jenkins/Dockerfile +++ b/Jenkins/Dockerfile @@ -18,7 +18,6 @@ FROM ${EDITOR_DOCKER_IMAGE} # - is needed for libvulkan1 to work # - otherwise vulkaninfo fails with: # vulkan-tools-1.2.131.1+dfsg1/vulkaninfo/vulkaninfo.h:371: failed with ERROR_INCOMPATIBLE_DRIVER) -# - but including this in the image breaks Unity trying to use Vulkan as well # osslsigncode: # - is needed by build-simulator.sh script when building for windows: # Jenkins/build-simulator.sh: osslsigncode sign @@ -37,13 +36,15 @@ RUN set -ex \ && apt-get update \ && DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \ libvulkan1 \ + mesa-vulkan-drivers \ osslsigncode \ uuid-runtime \ + vulkan-tools \ zip \ && apt-get clean -# Don't use Xvfg and call Unity directly (we run it on servers with Xorg running and DISPLAY set), show /opt/unity/image-info-lgsvl.source content before calling Unity -RUN sed -i 's#xvfb-run -ae /dev/stdout "$UNITY_PATH/Editor/Unity" -batchmode "$@"#echo "Running Unity Editor from docker image:" \&\& cat /opt/unity/image-info-lgsvl.source \&\& /opt/unity/Editor/Unity "$@"#g' /usr/bin/unity-editor +# Don't use Xvfb and call Unity directly (we run it on servers with Xorg running and DISPLAY set), show /opt/unity/image-info-lgsvl.source content before calling Unity +RUN sed -i 's#xvfb-run -ae /dev/stdout "$UNITY_PATH/Editor/Unity" -batchmode "$@"#echo "Running Unity Editor from docker image:" \&\& cat /opt/unity/image-info-lgsvl.source \&\& echo "/opt/unity/Editor/Unity \"$@\"" \&\& /opt/unity/Editor/Unity "$@"#g' /usr/bin/unity-editor # NB. This is overwritten when launched by docker with --gpus=N option # or Kubernetes with resources.limits.nvidia.com/gpu=N XXX <= confirm not overridden by K8s if not specified. diff --git a/Jenkins/Jenkinsfile b/Jenkins/Jenkinsfile index 2a91bf5bc..6a585d539 100644 --- a/Jenkins/Jenkinsfile +++ b/Jenkins/Jenkinsfile @@ -90,7 +90,7 @@ pipeline { UNITY_SERIAL = credentials("UNITY_SERIAL") UNITY_VERSION = "2020.3.3f1" UNITY_DOCKER_IMAGE = "${GITLAB_HOST}:4567/hdrp/unityci/editor-lgsvl" - UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-5-gbb48ea6__build__28" + UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-4-g07a8336__build__30" CODE_SIGNING_PASSWORD = credentials("LGSVL_CODE_SIGNING_PASSWORD") PYTHONUNBUFFERED = "1" DISPLAY = ":0" diff --git a/Jenkins/Jenkinsfile-Bundles b/Jenkins/Jenkinsfile-Bundles index 961c4e897..bb2bf0315 100644 --- a/Jenkins/Jenkinsfile-Bundles +++ b/Jenkins/Jenkinsfile-Bundles @@ -39,7 +39,7 @@ pipeline { UNITY_SERIAL = credentials("UNITY_SERIAL") UNITY_VERSION = "2020.3.3f1" UNITY_DOCKER_IMAGE = "${GITLAB_HOST}:4567/hdrp/unityci/editor-lgsvl" - UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-5-gbb48ea6__build__28" + UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-4-g07a8336__build__30" PYTHONUNBUFFERED = "1" DISPLAY = ":0" JENKINS_BUILD_ID = "${BUILD_ID}" diff --git a/Jenkins/Jenkinsfile-Bundles-Release b/Jenkins/Jenkinsfile-Bundles-Release index 4b5e509c0..b62ab8fc2 100644 --- a/Jenkins/Jenkinsfile-Bundles-Release +++ b/Jenkins/Jenkinsfile-Bundles-Release @@ -39,7 +39,7 @@ pipeline { UNITY_SERIAL = credentials("UNITY_SERIAL") UNITY_VERSION = "2020.3.3f1" UNITY_DOCKER_IMAGE = "${GITLAB_HOST}:4567/hdrp/unityci/editor-lgsvl" - UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-5-gbb48ea6__build__28" + UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-4-g07a8336__build__30" PYTHONUNBUFFERED = "1" DISPLAY = ":0" JENKINS_BUILD_ID = "${BUILD_ID}" diff --git a/Jenkins/Jenkinsfile-Release b/Jenkins/Jenkinsfile-Release index 082eb8164..1007c675a 100644 --- a/Jenkins/Jenkinsfile-Release +++ b/Jenkins/Jenkinsfile-Release @@ -79,7 +79,7 @@ pipeline { UNITY_SERIAL = credentials("UNITY_SERIAL") UNITY_VERSION = "2020.3.3f1" UNITY_DOCKER_IMAGE = "${GITLAB_HOST}:4567/hdrp/unityci/editor-lgsvl" - UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-5-gbb48ea6__build__28" + UNITY_DOCKER_IMAGE_TAG = "2020.3.3f1-v0.15-4-g07a8336__build__30" CODE_SIGNING_PASSWORD = credentials("LGSVL_CODE_SIGNING_PASSWORD") PYTHONUNBUFFERED = "1" DISPLAY = ":0" diff --git a/Jenkins/README.md b/Jenkins/README.md index c35c2b00a..0e8e4d438 100644 --- a/Jenkins/README.md +++ b/Jenkins/README.md @@ -19,7 +19,7 @@ export UNITY_PASSWORD=... export UNITY_SERIAL=... export UNITY_VERSION="2020.3.3f1" export UNITY_DOCKER_IMAGE="hdrp/unityci/editor-lgsvl" -export UNITY_DOCKER_IMAGE_TAG="2020.3.3f1-v0.15-5-gbb48ea6__build__28" +export UNITY_DOCKER_IMAGE_TAG="2020.3.3f1-v0.15-4-g07a8336__build__30" export PYTHONUNBUFFERED=1 export UID export CODE_SIGNING_FILE=/dev/urandom @@ -69,7 +69,7 @@ To setup Pipeline CI job on jenkins following global environment variables are r * `UNITY_VERSION` - Version of Unity, ex: `2020.3.3f1` * `GITLAB_HOST` - hostname of GitLab instance, ex: `gitlab.example.com` * `UNITY_DOCKER_IMAGE` - name of Docker image, ex: `gitlab.example.com:4567/hdrp/simulator` -* `UNITY_DOCKER_IMAGE_TAG` - tag of Docker image with Unity, ex: `2020.3.3f1-v0.15-5-gbb48ea6__build__28` +* `UNITY_DOCKER_IMAGE_TAG` - tag of Docker image with Unity, ex: `2020.3.3f1-v0.15-4-g07a8336__build__30` * `SIMULATOR_ENVIRONMENTS` - comma separated list of environment bundles to build, ex: `CubeTown,SanFrancisco` * `SIMULATOR_VEHICLES` - comma separated list of vehicle bundles to build, ex: `Car1,Car2` * `S3_BUCKET_NAME` - AWS S3 bucket name to where upload bundles diff --git a/Jenkins/build-bundles.sh b/Jenkins/build-bundles.sh index a07ea284e..9752b9024 100755 --- a/Jenkins/build-bundles.sh +++ b/Jenkins/build-bundles.sh @@ -93,7 +93,6 @@ function build_bundle { echo "Building bundle (${BUNDLE}/${BUNDLES}) $*" if [ ! -d .external-assets/$1/$2 ] ; then echo "ERROR: Bundle source doesn't exist in .external-assets/$1/$2" - exit 1 else mkdir -p Assets/External/$1 mv .external-assets/$1/$2 Assets/External/$1 @@ -119,7 +118,6 @@ function build_bundle { mv Assets/External/$1/$2 .external-assets/$1/$2 if [ ! -f AssetBundles/$1/*_$2 ] ; then echo "ERROR: Bundle $1 $2 wasn't created in AssetBundles/$1/*_$2" - exit 1 else echo "INFO: Bundle $1 $2 succeeded to build" fi @@ -204,6 +202,8 @@ OK=0 # maybe drop -e before the next section, because "|| true" is needed after # each grep which doesn't match anything (including grep -c), and also after # expr 0 + 0, which prints 0, but returns 1 as return status +echo +echo echo "Build bundles summary:" for assetType in Environments Vehicles Sensors Bridges; do if [ -f unity-build-bundles-${assetType}.log ] ; then