From ec17f91bd42894d78b2d6dc2cf20a9f1159d755e Mon Sep 17 00:00:00 2001 From: Mathieu Benoit Date: Sun, 25 Oct 2020 02:28:41 -0400 Subject: [PATCH] [FIX] docker can checkout specific commit, like a tag --- docker/Dockerfile.prod.pkg | 12 ++++++++---- script/docker_build.sh | 2 +- script/update_manifest_dev.sh | 2 +- script/update_manifest_local_dev.sh | 2 +- script/update_manifest_local_experimental.sh | 2 +- script/update_manifest_local_prod.sh | 2 +- script/update_manifest_prod.sh | 2 +- 7 files changed, 14 insertions(+), 10 deletions(-) diff --git a/docker/Dockerfile.prod.pkg b/docker/Dockerfile.prod.pkg index 78820ca..4334e1d 100644 --- a/docker/Dockerfile.prod.pkg +++ b/docker/Dockerfile.prod.pkg @@ -2,7 +2,9 @@ FROM technolibre/erplibre-base:1.1.0 ENV REPO_MANIFEST_URL http://git.erplibre.ca/ERPLibre ARG WORKING_BRANCH +ARG WORKING_HASH ENV BRANCH_ERPLIBRE $WORKING_BRANCH +ENV COMMIT_ERPLIBRE $WORKING_HASH RUN cat /etc/os-release @@ -12,13 +14,15 @@ RUN mkdir ~/.ssh/ && \ echo "StrictHostKeyChecking no" >> ~/.ssh/config && \ apt update && \ apt install ssh-client git -y --no-install-recommends && \ - rm -rf /var/lib/apt/lists/* + rm -rf /var/lib/apt/lists/* RUN cd ; mkdir -p .bin/ && \ git config --global color.ui false && \ - git config --global user.email "foo@bar.io" && \ - git config --global user.name "Foo Bar" && \ - git clone $REPO_MANIFEST_URL -b $BRANCH_ERPLIBRE $ODOO_PREFIX + git config --global user.email "foo@bar.io" && \ + git config --global user.name "Foo Bar" && \ + if [ "$BRANCH_ERPLIBRE" = "HEAD" ]; then git clone $REPO_MANIFEST_URL $ODOO_PREFIX ; else git clone $REPO_MANIFEST_URL -b $BRANCH_ERPLIBRE $ODOO_PREFIX; fi && \ + cd $ODOO_PREFIX && \ + git checkout $COMMIT_ERPLIBRE RUN cd $ODOO_PREFIX && \ python -m venv .venv diff --git a/script/docker_build.sh b/script/docker_build.sh index 4af24e2..cf2bc7e 100755 --- a/script/docker_build.sh +++ b/script/docker_build.sh @@ -16,7 +16,7 @@ done cd docker -ARGS="${ARGS} --build-arg=WORKING_BRANCH=$(git rev-parse --abbrev-ref HEAD)" +ARGS="${ARGS} --build-arg=WORKING_BRANCH=$(git rev-parse --abbrev-ref HEAD) --build-arg=WORKING_HASH=$(git rev-parse --verify HEAD)" set -e diff --git a/script/update_manifest_dev.sh b/script/update_manifest_dev.sh index 0ad02ac..12d75a4 100755 --- a/script/update_manifest_dev.sh +++ b/script/update_manifest_dev.sh @@ -6,6 +6,6 @@ #EL_MANIFEST_DEV="./manifest/default.dev.xml" # Update git-repo -./.venv/repo init -u http://git.erplibre.ca/ERPLibre -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_DEV} +./.venv/repo init -u http://git.erplibre.ca/ERPLibre -b $(git rev-parse --verify HEAD) -m ${EL_MANIFEST_DEV} #./.venv/repo sync --force-sync ./.venv/repo sync --force-sync -v diff --git a/script/update_manifest_local_dev.sh b/script/update_manifest_local_dev.sh index f33661b..b9ccb75 100755 --- a/script/update_manifest_local_dev.sh +++ b/script/update_manifest_local_dev.sh @@ -9,7 +9,7 @@ git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose & DAEMON_PID=$! -./.venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_DEV} +./.venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --verify HEAD) -m ${EL_MANIFEST_DEV} ./.venv/repo sync -v --force-sync -m ${EL_MANIFEST_DEV} kill ${DAEMON_PID} diff --git a/script/update_manifest_local_experimental.sh b/script/update_manifest_local_experimental.sh index 7a8c71a..b96121f 100755 --- a/script/update_manifest_local_experimental.sh +++ b/script/update_manifest_local_experimental.sh @@ -10,7 +10,7 @@ git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose & DAEMON_PID=$! -./.venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_EXP} +./.venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --verify HEAD) -m ${EL_MANIFEST_EXP} ./.venv/repo sync -v --force-sync -m ${EL_MANIFEST_EXP} kill ${DAEMON_PID} diff --git a/script/update_manifest_local_prod.sh b/script/update_manifest_local_prod.sh index 4d26aa3..501ef68 100755 --- a/script/update_manifest_local_prod.sh +++ b/script/update_manifest_local_prod.sh @@ -9,7 +9,7 @@ git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose & DAEMON_PID=$! -./.venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --abbrev-ref HEAD) -m ${EL_MANIFEST_PROD} +./.venv/repo init -u git://127.0.0.1:9418/ -b $(git rev-parse --verify HEAD) -m ${EL_MANIFEST_PROD} ./.venv/repo sync -v -m ${EL_MANIFEST_PROD} kill ${DAEMON_PID} diff --git a/script/update_manifest_prod.sh b/script/update_manifest_prod.sh index 70a701e..b9f5ba0 100755 --- a/script/update_manifest_prod.sh +++ b/script/update_manifest_prod.sh @@ -6,6 +6,6 @@ #EL_MANIFEST_DEV="./manifest/default.dev.xml" # Update git-repo -./.venv/repo init -u http://git.erplibre.ca/ERPLibre -b $(git rev-parse --abbrev-ref HEAD) +./.venv/repo init -u http://git.erplibre.ca/ERPLibre -b $(git rev-parse --verify HEAD) #./.venv/repo sync --force-sync ./.venv/repo sync -v