mirror of
https://gitlab.com/signalytic/client-external/streamline/streamline-emr.git
synced 2026-09-11 18:51:31 +00:00
build separate x86_64/aarch64 packages and explicitly define images
This commit is contained in:
@@ -0,0 +1 @@
|
|||||||
|
streamline-emr:2.0=registry.gitlab.com/signalytic/client-external/streamline/streamline-emr/arm64:2.0
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
streamline-emr:2.0=registry.gitlab.com/signalytic/client-external/streamline/streamline-emr/amd64:2.0
|
||||||
+57
-38
@@ -41,51 +41,70 @@ else
|
|||||||
VERSION_NAME="unknown"
|
VERSION_NAME="unknown"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
OUTPUT_NAME="$PACKAGE_NAME-$VERSION_NAME-$(arch)"
|
# build for each relevant platform
|
||||||
OUTPUT_FILE="$OUTPUT_NAME.tar.bz2"
|
for platform in "linux/amd64" "linux/arm64"; do
|
||||||
OUTPUT_PATH="$OUTPUT_DIR/$OUTPUT_FILE"
|
echo "preparing package for platform $platform"
|
||||||
|
if [ "$platform" == "linux/amd64" ];then
|
||||||
# create a new temp directory to stage files
|
pkg_arch="x86_64"
|
||||||
for i in {1..9999};do
|
elif [ "$platform" == "linux/arm64" ];then
|
||||||
STAGING_DIR="tmp-staging-$i"
|
pkg_arch="aarch64"
|
||||||
if [ ! -d $STAGING_DIR ]; then
|
else
|
||||||
break
|
echo "unexpected platform '$platform'"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
done
|
OUTPUT_NAME="$PACKAGE_NAME-$VERSION_NAME-${pkg_arch}"
|
||||||
if [ -d $STAGING_DIR ]; then
|
OUTPUT_FILE="$OUTPUT_NAME.tar.bz2"
|
||||||
echo "Failed to generate temp staging dir"
|
OUTPUT_PATH="$OUTPUT_DIR/$OUTPUT_FILE"
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# add files
|
# create a new temp directory to stage files
|
||||||
mkdir ${STAGING_DIR}
|
for i in {1..9999};do
|
||||||
cp ${PROJECT_ROOT}/install.sh ${STAGING_DIR}/
|
STAGING_DIR="tmp-staging-$i"
|
||||||
cp -a ${PROJECT_ROOT}/root ${STAGING_DIR}/
|
if [ ! -d $STAGING_DIR ]; then
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if [ -d $STAGING_DIR ]; then
|
||||||
|
echo "Failed to generate temp staging dir"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# add images
|
# add files
|
||||||
IMAGES_DIR=${STAGING_DIR}/images
|
mkdir ${STAGING_DIR}
|
||||||
mkdir -p ${IMAGES_DIR}
|
cp ${PROJECT_ROOT}/install.sh ${STAGING_DIR}/
|
||||||
i=0
|
cp -a ${PROJECT_ROOT}/root ${STAGING_DIR}/
|
||||||
for image in $(find root/ -name docker-compose.yml | xargs grep 'image:.*' | awk '{print $2}');do
|
|
||||||
i=$((i+1))
|
|
||||||
name="image${i}.img"
|
|
||||||
echo "addding '$name' -> '$image'"
|
|
||||||
docker pull $image
|
|
||||||
docker save -o ${IMAGES_DIR}/$name $image
|
|
||||||
done
|
|
||||||
|
|
||||||
# setup output directory and cleanup old files if necessary
|
# add images
|
||||||
mkdir -p $OUTPUT_DIR
|
IMAGES_DIR=${STAGING_DIR}/images
|
||||||
rm -rf $OUTPUT_PATH
|
mkdir -p ${IMAGES_DIR}
|
||||||
|
i=0
|
||||||
|
# read image list from file (e.g. 'images-aarch64')
|
||||||
|
# images are listed as SAVED_TAG=SOURCE_IMAGE
|
||||||
|
for image in $(cat ${PROJECT_ROOT}/images-${pkg_arch});do
|
||||||
|
i=$((i+1))
|
||||||
|
name="image${i}.img"
|
||||||
|
path="${IMAGES_DIR}/${name}"
|
||||||
|
IFS=\= read -r dest source <<< "${image}"
|
||||||
|
echo "pulling image '${source}' (${platform})"
|
||||||
|
docker pull --platform ${platform} ${source}
|
||||||
|
echo "tagging image as '${dest}'"
|
||||||
|
docker tag ${source} ${dest}
|
||||||
|
echo "saving to '${path}'"
|
||||||
|
docker save -o ${path} $dest
|
||||||
|
done
|
||||||
|
|
||||||
pushd $STAGING_DIR > /dev/null
|
# setup output directory and cleanup old files if necessary
|
||||||
tar -cjf $OUTPUT_PATH *
|
mkdir -p $OUTPUT_DIR
|
||||||
popd > /dev/null
|
rm -rf $OUTPUT_PATH
|
||||||
|
|
||||||
# cleanup staging files
|
pushd $STAGING_DIR > /dev/null
|
||||||
rm -r $STAGING_DIR
|
tar -cjf $OUTPUT_PATH *
|
||||||
|
popd > /dev/null
|
||||||
|
|
||||||
echo "output: $OUTPUT_PATH"
|
# cleanup staging files
|
||||||
|
rm -r $STAGING_DIR
|
||||||
|
|
||||||
|
echo "output: $OUTPUT_PATH"
|
||||||
|
done
|
||||||
|
|
||||||
popd > /dev/null
|
popd > /dev/null
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
version: '3.9'
|
version: '3.9'
|
||||||
services:
|
services:
|
||||||
streamline-emr:
|
streamline-emr:
|
||||||
image: registry.gitlab.com/signalytic/client-external/streamline/streamline-emr:2.0
|
image: streamline-emr:2.0
|
||||||
container_name: ${CONTAINER_NAME:-streamline-emr}
|
container_name: ${CONTAINER_NAME:-streamline-emr}
|
||||||
volumes:
|
volumes:
|
||||||
- "${DATA_DIR:-/var/signalytic/clientapps/streamline/streamline-emr/data}:/var/lib/mysql"
|
- "${DATA_DIR:-/var/signalytic/clientapps/streamline/streamline-emr/data}:/var/lib/mysql"
|
||||||
|
|||||||
Reference in New Issue
Block a user