From cc5124d3f78487271151c6659a5d946610ba1058 Mon Sep 17 00:00:00 2001 From: Konstantin Dmitriev Date: Nov 02 2016 00:38:39 +0000 Subject: Unified "run.sh" script for docker --- diff --git a/docker/debian-7-32bit/run.sh b/docker/debian-7-32bit/run.sh deleted file mode 100755 index a14cbb8..0000000 --- a/docker/debian-7-32bit/run.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash - -OLDDIR=`pwd` -SCRIPT_DIR=$(cd `dirname "$0"`; pwd) -cd "$OLDDIR" -BASE_DIR=`dirname "$SCRIPT_DIR"` -DATA_DIR="$BASE_DIR/docker-builder-data" - -BUILD_DIR=$DATA_DIR/build - -CONFIG_FILE="$BASE_DIR/config.sh" -PACKET_BUILD_DIR="$BUILD_DIR/packet" -SCRIPT_BUILD_DIR="$BUILD_DIR/script" -if [ -f $CONFIG_FILE ]; then - source $CONFIG_FILE -fi -export PACKET_BUILD_DIR -mkdir -p $PACKET_BUILD_DIR - -docker stop "build-debian-7-32" || true -docker rm "build-debian-7-32" || true - -docker run -it \ - --name "build-debian-7-32" \ - $DOCKER_RUN_OPTIONS \ - --privileged=true \ - -v "$PACKET_BUILD_DIR:/build/packet" \ - -v "$SCRIPT_BUILD_DIR:/build/script" \ - -e PLATFORM=linux-i386 \ - morevna/build-debian-7-32 \ - setarch i686 /build/script/common/manager.sh "$@" - diff --git a/docker/debian-7-64bit/run.sh b/docker/debian-7-64bit/run.sh deleted file mode 100755 index f927d0b..0000000 --- a/docker/debian-7-64bit/run.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash - -OLDDIR=`pwd` -SCRIPT_DIR=$(cd `dirname "$0"`; pwd) -cd "$OLDDIR" -BASE_DIR=`dirname "$SCRIPT_DIR"` -DATA_DIR="$BASE_DIR/docker-builder-data" - -BUILD_DIR=$DATA_DIR/build - -CONFIG_FILE="$BASE_DIR/config.sh" -PACKET_BUILD_DIR="$BUILD_DIR/packet" -SCRIPT_BUILD_DIR="$BUILD_DIR/script" -if [ -f $CONFIG_FILE ]; then - source $CONFIG_FILE -fi -export PACKET_BUILD_DIR -mkdir -p $PACKET_BUILD_DIR - -docker stop "build-debian-7-64" || true -docker rm "build-debian-7-64" || true - -docker run -it \ - --name "build-debian-7-64" \ - --privileged=true \ - $DOCKER_RUN_OPTIONS \ - -v "$PACKET_BUILD_DIR:/build/packet" \ - -v "$SCRIPT_BUILD_DIR:/build/script" \ - morevna/build-debian-7-64 \ - /build/script/common/manager.sh "$@" - diff --git a/docker/run.sh b/docker/run.sh new file mode 100755 index 0000000..4fe7beb --- /dev/null +++ b/docker/run.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +SCRIPT_DIR=$(cd `dirname "$0"`; pwd) +BASE_DIR=`dirname "$SCRIPT_DIR"` +DATA_DIR="$BASE_DIR/docker-builder-data" + +BUILD_DIR=${DATA_DIR}/build + +CONFIG_FILE="$BASE_DIR/config.sh" +PACKET_BUILD_DIR="$BUILD_DIR/packet" +SCRIPT_BUILD_DIR="$BUILD_DIR/script" +if [ -f $CONFIG_FILE ]; then + source $CONFIG_FILE +fi +export PACKET_BUILD_DIR +mkdir -p $PACKET_BUILD_DIR + +if [ -z "${IMAGE}" ];then + export IMAGE=fedora-cross-win +fi + +if [ -z "$TASK" ];then + export TASK=synfig-win +fi + +if [ -z "$ARCH" ];then + export ARCH=64 +fi + + + +export INSTANCE="build-${TASK}-${ARCH}" + +# TODO: Automatically build image if not found + +docker stop "${INSTANCE}" || true +docker rm "${INSTANCE}" || true + + +docker run -it \ + --name "${INSTANCE}" \ + --privileged=true \ + $DOCKER_RUN_OPTIONS \ + -v "${PACKET_BUILD_DIR}:/build/packet" \ + -v "${SCRIPT_BUILD_DIR}:/build/script" \ + morevna/${IMAGE} \ + "$@" diff --git a/publish/update-opentoonz.sh b/publish/update-opentoonz.sh index c0a2d6c..60eb164 100755 --- a/publish/update-opentoonz.sh +++ b/publish/update-opentoonz.sh @@ -2,6 +2,9 @@ set -e +export IMAGE=build-debian-7 +export TASK=opentoonz-linux + OLDDIR=`pwd` BASE_DIR=$(cd `dirname "$0"`; pwd) BASE_DIR=`dirname "$BASE_DIR"` @@ -20,14 +23,14 @@ fi run() { local SCRIPT=$1 local PLATFORM=$2 - local PLATFORM_SUFFIX=$3 + local PLATFORM_SUFFIX=${ARCH}bit echo "" echo "Update opentoonz for $PLATFORM_SUFFIX" echo "" - sudo $SCRIPT update opentoonz-master - sudo $SCRIPT clean_before_do install_release opentoonz-appimage + sudo $SCRIPT /build/script/common/manager.sh update opentoonz-master + sudo $SCRIPT /build/script/common/manager.sh clean_before_do install_release opentoonz-appimage local DIR="$PACKET_BUILD_DIR/$PLATFORM/opentoonz-appimage/install_release" local VERSION_FILE="$PACKET_BUILD_DIR/$PLATFORM/opentoonz-appimage/envdeps_release/version-opentoonz-master" local VERSION=`cat "$VERSION_FILE" | cut -d'-' -f 1` @@ -49,9 +52,13 @@ run() { echo "Version $VERSION-$COMMIT-$PLATFORM_SUFFIX already published" fi } + if [ -z "$1" ] || [ -z "$2" ]; then -run "$BASE_DIR/docker/debian-7-64bit/run.sh" "linux-x64" "64bit" -run "$BASE_DIR/docker/debian-7-32bit/run.sh" "linux-i386" "32bit" +export ARCH=64 +run "$BASE_DIR/docker/run.sh" "linux-x64" +export ARCH=32 +run "$BASE_DIR/docker/run.sh" "linux-i386" else -run "$BASE_DIR/docker/debian-7-$2/run.sh" "$1" "$2" +export ARCH=$2 +run "$BASE_DIR/docker/run.sh" "$1" fi diff --git a/publish/update-synfigstudio.sh b/publish/update-synfigstudio.sh index ffea4c8..4fea6d4 100755 --- a/publish/update-synfigstudio.sh +++ b/publish/update-synfigstudio.sh @@ -2,6 +2,9 @@ set -e +export IMAGE=build-debian-7 +export TASK=synfig-linux + OLDDIR=`pwd` BASE_DIR=$(cd `dirname "$0"`; pwd) BASE_DIR=`dirname "$BASE_DIR"` @@ -20,16 +23,16 @@ fi run() { local SCRIPT=$1 local PLATFORM=$2 - local PLATFORM_SUFFIX=$3 + local PLATFORM_SUFFIX=${ARCH}bit echo "" echo "Update synfigstudio for $PLATFORM_SUFFIX" echo "" - sudo $SCRIPT update synfigetl-master - sudo $SCRIPT update synfigcore-master - sudo $SCRIPT update synfigstudio-master - sudo $SCRIPT clean_before_do install_release synfigstudio-appimage + $SCRIPT /build/script/common/manager.sh update synfigetl-master + $SCRIPT /build/script/common/manager.sh update synfigcore-master + $SCRIPT /build/script/common/manager.sh update synfigstudio-master + $SCRIPT /build/script/common/manager.sh clean_before_do install_release synfigstudio-appimage local DIR="$PACKET_BUILD_DIR/$PLATFORM/synfigstudio-appimage/install_release" local VERSION_FILE="$PACKET_BUILD_DIR/$PLATFORM/synfigstudio-appimage/envdeps_release/version-synfigstudio-master" local VERSION=`cat "$VERSION_FILE" | cut -d'-' -f 1` @@ -53,8 +56,11 @@ if ! ls $PUBLISH_DIR/SynfigStudio-$VERSION-*-$COMMIT-$PLATFORM_SUFFIX.appimage 1 } if [ -z "$1" ] || [ -z "$2" ]; then -run "$BASE_DIR/docker/debian-7-64bit/run.sh" "linux-x64" "64bits" -run "$BASE_DIR/docker/debian-7-32bit/run.sh" "linux-i386" "32bits" +export ARCH=64 +run "$BASE_DIR/docker/run.sh" "linux-x64" +export ARCH=32 +run "$BASE_DIR/docker/run.sh" "linux-i386" else -run "$BASE_DIR/docker/debian-7-$2/run.sh" "$1" "$2" +export ARCH=$2 +run "$BASE_DIR/docker/run.sh" "$1" fi