changeset 46:a45844994a67

distinguishing docker-based builds between buster and bullseye
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 19 Aug 2021 10:36:34 +0200
parents 53efee735396
children ad348691c27d
files Resources/debian-bullseye-compile.sh Resources/debian-buster-compile.sh Resources/debian-internal.sh Resources/debian-stable-compile.sh Resources/debian-stable-internal.sh
diffstat 5 files changed, 101 insertions(+), 68 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Resources/debian-bullseye-compile.sh	Thu Aug 19 10:36:34 2021 +0200
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##
+## This script compiles the plugin for Debian bullseye, in static
+## mode.
+##
+
+set -ex
+
+if [ "$1" != "Debug" -a "$1" != "Release" ]; then
+    echo "Please provide build type: Debug or Release"
+    exit -1
+fi
+
+if [ -t 1 ]; then
+    # TTY is available => use interactive mode
+    DOCKER_FLAGS='-i'
+fi
+
+ROOT_DIR=`dirname $(readlink -f $0)`/..
+
+# Always make sure we use the latest version of Debian bullseye
+docker pull debian:bullseye
+
+mkdir -p ${ROOT_DIR}/debian-bullseye
+
+docker run -t ${DOCKER_FLAGS} --rm \
+    -v ${ROOT_DIR}:/source:ro \
+    -v ${ROOT_DIR}/debian-bullseye:/target:rw \
+    debian:bullseye \
+    bash /source/Resources/debian-internal.sh $1 $(id -u) $(id -g)
+
+ls -l ${ROOT_DIR}/debian-bullseye/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Resources/debian-buster-compile.sh	Thu Aug 19 10:36:34 2021 +0200
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+##
+## This script compiles the plugin for Debian buster, in static
+## mode. The resulting binaries can be used in the Docker images of
+## Orthanc, as those are also based on Debian buster:
+## https://github.com/jodogne/OrthancDocker/blob/master/orthanc/Dockerfile
+##
+
+set -ex
+
+if [ "$1" != "Debug" -a "$1" != "Release" ]; then
+    echo "Please provide build type: Debug or Release"
+    exit -1
+fi
+
+if [ -t 1 ]; then
+    # TTY is available => use interactive mode
+    DOCKER_FLAGS='-i'
+fi
+
+ROOT_DIR=`dirname $(readlink -f $0)`/..
+
+# Always make sure we use the latest version of Debian buster
+docker pull debian:buster
+
+mkdir -p ${ROOT_DIR}/debian-buster
+
+docker run -t ${DOCKER_FLAGS} --rm \
+    -v ${ROOT_DIR}:/source:ro \
+    -v ${ROOT_DIR}/debian-buster:/target:rw \
+    debian:buster \
+    bash /source/Resources/debian-internal.sh $1 $(id -u) $(id -g)
+
+ls -l ${ROOT_DIR}/debian-buster/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Resources/debian-internal.sh	Thu Aug 19 10:36:34 2021 +0200
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+set -ex
+
+BUILD_TYPE=$1
+USER_ID=$2
+GROUP_ID=$3
+
+# Create the same user and group than the one who is running the
+# "./debian-{distro}-compile.sh" script on the hosting system (*)
+groupadd -g ${GROUP_ID} -r orthanc
+useradd -u ${USER_ID} -r -g orthanc orthanc
+
+# Static build using the root user
+apt-get update
+apt-get install -y cmake build-essential unzip mercurial
+
+mkdir /tmp/build
+cd /tmp/build
+
+cp -r /source /tmp/source-writeable
+cmake /tmp/source-writeable \
+    -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
+    -DSTATIC_BUILD=ON \
+    -DCMAKE_INSTALL_PREFIX=/target 
+
+make -j`nproc`
+
+# Copy the installation to the host filesystem, using the
+# newly-created user "orthanc" (*) that corresponds to the user who is
+# running "./debian-{distro}-compile.sh" script. This allows to avoid
+# files owned by the "root" user on the host filesystem.
+su -c "cp /tmp/build/libOrthancGoogleCloudPlatform.so /target" orthanc
--- a/Resources/debian-stable-compile.sh	Wed Jun 23 09:03:43 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-#!/bin/bash
-
-##
-## This script compiles the plugin for Debian stable, in static
-## mode. The resulting binaries can be used in the Docker images of
-## Orthanc, as those are also based on Debian stable:
-## https://github.com/jodogne/OrthancDocker/blob/master/orthanc/Dockerfile
-##
-
-set -ex
-
-if [ "$1" != "Debug" -a "$1" != "Release" ]; then
-    echo "Please provide build type: Debug or Release"
-    exit -1
-fi
-
-if [ -t 1 ]; then
-    # TTY is available => use interactive mode
-    DOCKER_FLAGS='-i'
-fi
-
-ROOT_DIR=`dirname $(readlink -f $0)`/..
-
-# Always make sure we use the latest version of Debian stable
-docker pull debian:stable
-
-mkdir -p ${ROOT_DIR}/debian-stable
-
-docker run -t ${DOCKER_FLAGS} --rm \
-    -v ${ROOT_DIR}:/source:ro \
-    -v ${ROOT_DIR}/debian-stable:/target:rw \
-    debian:stable \
-    bash /source/Resources/debian-stable-internal.sh $1 $(id -u) $(id -g)
-
-ls -l ${ROOT_DIR}/debian-stable/
--- a/Resources/debian-stable-internal.sh	Wed Jun 23 09:03:43 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#!/bin/bash
-
-set -ex
-
-BUILD_TYPE=$1
-USER_ID=$2
-GROUP_ID=$3
-
-# Create the same user and group than the one who is running the
-# "./debian-stable-compile.sh" script on the hosting system (*)
-groupadd -g ${GROUP_ID} -r orthanc
-useradd -u ${USER_ID} -r -g orthanc orthanc
-
-# Static build using the root user
-apt-get update
-apt-get install -y cmake build-essential unzip mercurial
-
-mkdir /tmp/build
-cd /tmp/build
-
-cp -r /source /tmp/source-writeable
-cmake /tmp/source-writeable \
-    -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
-    -DSTATIC_BUILD=ON \
-    -DCMAKE_INSTALL_PREFIX=/target 
-
-make -j`nproc`
-
-# Copy the installation to the host filesystem, using the
-# newly-created user "orthanc" (*) that corresponds to the user who is
-# running "./debian-stable-compile.sh" script. This allows to avoid
-# files owned by the "root" user on the host filesystem.
-su -c "cp /tmp/build/libOrthancGoogleCloudPlatform.so /target" orthanc