From 8a48ebf2c51487baaa68f929838c0d0f620a2d34 Mon Sep 17 00:00:00 2001 From: Kay0u Date: Thu, 4 Jul 2019 00:24:20 +0200 Subject: [PATCH] Migration from 11.x to 12.x --- scripts/upgrade | 62 +++++++++++++++++++--------- scripts/upgrade.d/upgrade.11.10.1.sh | 7 ---- scripts/upgrade.d/upgrade.11.10.2.sh | 7 ---- scripts/upgrade.d/upgrade.11.10.4.sh | 7 ---- scripts/upgrade.d/upgrade.11.6.3.sh | 5 --- scripts/upgrade.d/upgrade.11.7.0.sh | 5 --- scripts/upgrade.d/upgrade.11.7.3.sh | 5 --- scripts/upgrade.d/upgrade.11.7.4.sh | 5 --- scripts/upgrade.d/upgrade.11.7.5.sh | 5 --- scripts/upgrade.d/upgrade.11.8.0.sh | 5 --- scripts/upgrade.d/upgrade.11.8.1.sh | 7 ---- scripts/upgrade.d/upgrade.11.9.0.sh | 7 ---- scripts/upgrade.d/upgrade.11.9.1.sh | 7 ---- scripts/upgrade.d/upgrade.11.9.4.sh | 7 ---- scripts/upgrade.d/upgrade.11.9.8.sh | 7 ---- scripts/upgrade.d/upgrade.11.sh | 7 ++++ 16 files changed, 49 insertions(+), 106 deletions(-) delete mode 100644 scripts/upgrade.d/upgrade.11.10.1.sh delete mode 100644 scripts/upgrade.d/upgrade.11.10.2.sh delete mode 100644 scripts/upgrade.d/upgrade.11.10.4.sh delete mode 100644 scripts/upgrade.d/upgrade.11.6.3.sh delete mode 100644 scripts/upgrade.d/upgrade.11.7.0.sh delete mode 100644 scripts/upgrade.d/upgrade.11.7.3.sh delete mode 100644 scripts/upgrade.d/upgrade.11.7.4.sh delete mode 100644 scripts/upgrade.d/upgrade.11.7.5.sh delete mode 100644 scripts/upgrade.d/upgrade.11.8.0.sh delete mode 100644 scripts/upgrade.d/upgrade.11.8.1.sh delete mode 100644 scripts/upgrade.d/upgrade.11.9.0.sh delete mode 100644 scripts/upgrade.d/upgrade.11.9.1.sh delete mode 100644 scripts/upgrade.d/upgrade.11.9.4.sh delete mode 100644 scripts/upgrade.d/upgrade.11.9.8.sh create mode 100644 scripts/upgrade.d/upgrade.11.sh diff --git a/scripts/upgrade b/scripts/upgrade index 0a2d52f..31cf5e1 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -236,32 +236,54 @@ if [ "$upgrade_type" == "UPGRADE_APP" ] then ynh_script_progression --message="Setting up source files..." --weight=200 + current_version=$(grep gitlab-ce /opt/gitlab/version-manifest.txt | cut -d' ' -f2) + + # Load the last available version source ./upgrade.d/upgrade.last.sh - cp ../conf/$architecture.src.default ../conf/$architecture.src - ynh_replace_string --match_string="__VERSION__" --replace_string="$gitlab_version" --target_file="../conf/$architecture.src" - ynh_replace_string --match_string="__SOURCE_FILENAME__" --replace_string="$gitlab_filename" --target_file="../conf/$architecture.src" + last_version=$gitlab_version + last_major_version=${gitlab_version%%.*} - if [ $architecture = "x86-64" ]; then - ynh_replace_string --match_string="__SHA256_SUM__" --replace_string="$gitlab_x86_64_source_sha256" --target_file="../conf/$architecture.src" - elif [ $architecture = "arm" ]; then - ynh_replace_string --match_string="__SHA256_SUM__" --replace_string="$gitlab_arm_source_sha256" --target_file="../conf/$architecture.src" - fi + # While the current version is not the last version, do an upgrade + while [ "$last_version" != "$current_version" ] + do - tempdir="$(mktemp -d)" + current_major_version=${current_version%%.*} - ynh_setup_source --dest_dir=$tempdir --source_id=$architecture - - if [ ${PACKAGE_CHECK_EXEC:-0} -eq 1 ]; then - if ! ynh_exec_warn_less dpkg -i $tempdir/$gitlab_filename ; - then # This command will fail in lxc env - ynh_replace_string --match_string="command \"sysctl -e --system\"" --replace_string="command \"sysctl -e --system || true\"" --target_file="$final_path/embedded/cookbooks/package/resources/sysctl.rb" - ynh_exec_warn_less dpkg --configure gitlab-ce + # If the current version has the same major version than the next one, + # then it's the last upgrade to do + if [ "$last_major_version" -eq "$current_major_version" ]; then + current_major_version=last fi - else - ynh_exec_warn_less dpkg -i $tempdir/$gitlab_filename - fi - ynh_exec_warn_less ynh_secure_remove --file="$tempdir" + source ./upgrade.d/upgrade.$current_major_version.sh + cp ../conf/$architecture.src.default ../conf/$architecture.src + ynh_replace_string --match_string="__VERSION__" --replace_string="$gitlab_version" --target_file="../conf/$architecture.src" + ynh_replace_string --match_string="__SOURCE_FILENAME__" --replace_string="$gitlab_filename" --target_file="../conf/$architecture.src" + + if [ $architecture = "x86-64" ]; then + ynh_replace_string --match_string="__SHA256_SUM__" --replace_string="$gitlab_x86_64_source_sha256" --target_file="../conf/$architecture.src" + elif [ $architecture = "arm" ]; then + ynh_replace_string --match_string="__SHA256_SUM__" --replace_string="$gitlab_arm_source_sha256" --target_file="../conf/$architecture.src" + fi + + tempdir="$(mktemp -d)" + + ynh_setup_source --dest_dir=$tempdir --source_id=$architecture + + if [ ${PACKAGE_CHECK_EXEC:-0} -eq 1 ]; then + if ! ynh_exec_warn_less dpkg -i $tempdir/$gitlab_filename ; + then # This command will fail in lxc env + ynh_replace_string --match_string="command \"sysctl -e --system\"" --replace_string="command \"sysctl -e --system || true\"" --target_file="$final_path/embedded/cookbooks/package/resources/sysctl.rb" + ynh_exec_warn_less dpkg --configure gitlab-ce + fi + else + ynh_exec_warn_less dpkg -i $tempdir/$gitlab_filename + fi + + ynh_exec_warn_less ynh_secure_remove --file="$tempdir" + + current_version=$(grep gitlab-ce /opt/gitlab/version-manifest.txt | cut -d' ' -f2) + done fi #================================================= diff --git a/scripts/upgrade.d/upgrade.11.10.1.sh b/scripts/upgrade.d/upgrade.11.10.1.sh deleted file mode 100644 index 366e291..0000000 --- a/scripts/upgrade.d/upgrade.11.10.1.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.10.1" - -gitlab_x86_64_source_sha256="cffde1c3875c2864c3e954dd1077acde3cc87d8f8963309d2ac4455d621748eb" - -gitlab_arm_source_sha256="f414dbfaa074843c0f693e8d5cd63d6fd913c7a39358ebcb55f5be664aaf5916" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.10.2.sh b/scripts/upgrade.d/upgrade.11.10.2.sh deleted file mode 100644 index f004207..0000000 --- a/scripts/upgrade.d/upgrade.11.10.2.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.10.2" - -gitlab_x86_64_source_sha256="40732062a4f6f70043d7cb56c647b23353c8bf7ed42cf676f77d0376237b8736" - -gitlab_arm_source_sha256="204d30853de173569718e045d2d7ac6fba266aa0f14e345a5ba431bfbf3daea6" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.10.4.sh b/scripts/upgrade.d/upgrade.11.10.4.sh deleted file mode 100644 index 3955ac6..0000000 --- a/scripts/upgrade.d/upgrade.11.10.4.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.10.4" - -gitlab_x86_64_source_sha256="0c1875b86a819fc48aa0ba6df0d5e322d633056ec73dfd10a2973c48cbbd2f6a" - -gitlab_arm_source_sha256="fa551e0a01dfba22857acdc91a19e5340fc4e595085dcde07afed4bce5ea4239" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.6.3.sh b/scripts/upgrade.d/upgrade.11.6.3.sh deleted file mode 100644 index d809e94..0000000 --- a/scripts/upgrade.d/upgrade.11.6.3.sh +++ /dev/null @@ -1,5 +0,0 @@ -gitlab_version="11.6.3" - -gitlab_x86_64_source_sha256="5a990a76c1656ddd42673562d8bd1be106a835331a2ce976d405c536a5567485" - -gitlab_arm_source_sha256="3b1d1c650df8722d0b63b5db3e6c2440ea70224deeca0621a9c5226a06079d2e" diff --git a/scripts/upgrade.d/upgrade.11.7.0.sh b/scripts/upgrade.d/upgrade.11.7.0.sh deleted file mode 100644 index 6c4706e..0000000 --- a/scripts/upgrade.d/upgrade.11.7.0.sh +++ /dev/null @@ -1,5 +0,0 @@ -gitlab_version="11.7.0" - -gitlab_x86_64_source_sha256="5a989b1e664494e6de139064b349fe9b22f37d5edd2918a4968fdf5e818a10c4" - -gitlab_arm_source_sha256="558e6b3cf87bd5c8b3dee567b2557ee6cc3fb40655cc6dabe5531c94cf27b99d" diff --git a/scripts/upgrade.d/upgrade.11.7.3.sh b/scripts/upgrade.d/upgrade.11.7.3.sh deleted file mode 100644 index bf713c5..0000000 --- a/scripts/upgrade.d/upgrade.11.7.3.sh +++ /dev/null @@ -1,5 +0,0 @@ -gitlab_version="11.7.3" - -gitlab_x86_64_source_sha256="9c15fbbc4de7fb22ec4d3b120bdb32d65d8d329e453a80065031fbb5bb45b7cb" - -gitlab_arm_source_sha256="36cd946387d2f1a262e8bb92c76e1db34be09c1a4e6983938f2e9c45813614c8" diff --git a/scripts/upgrade.d/upgrade.11.7.4.sh b/scripts/upgrade.d/upgrade.11.7.4.sh deleted file mode 100644 index 7e7a24d..0000000 --- a/scripts/upgrade.d/upgrade.11.7.4.sh +++ /dev/null @@ -1,5 +0,0 @@ -gitlab_version="11.7.4" - -gitlab_x86_64_source_sha256="ac207cfc2507be9d23ed2ebdcadbf743e45832abd235b6c73ecf370f9497e6c8" - -gitlab_arm_source_sha256="3378b91a7707f6788929c9fe00bc16072de5c9c5546270a55b9863bec86c74d0" diff --git a/scripts/upgrade.d/upgrade.11.7.5.sh b/scripts/upgrade.d/upgrade.11.7.5.sh deleted file mode 100644 index 10bfefc..0000000 --- a/scripts/upgrade.d/upgrade.11.7.5.sh +++ /dev/null @@ -1,5 +0,0 @@ -gitlab_version="11.7.5" - -gitlab_x86_64_source_sha256="bed16a7fdbbc80055ef1784221d70254eb5bda70891a61fe18f818f2f36ed0d4" - -gitlab_arm_source_sha256="92eed427abe3f2ccc509aed38cfee447e3e853fbe0d89620f165189e3741a9c1" diff --git a/scripts/upgrade.d/upgrade.11.8.0.sh b/scripts/upgrade.d/upgrade.11.8.0.sh deleted file mode 100644 index 1651adc..0000000 --- a/scripts/upgrade.d/upgrade.11.8.0.sh +++ /dev/null @@ -1,5 +0,0 @@ -gitlab_version="11.8.0" - -gitlab_x86_64_source_sha256="fd0a5c0adac65a731eebdfbecccee8f7f6274922a32ca1a01980ae09a3fdd499" - -gitlab_arm_source_sha256="4633bab56c78bcf745cac342fd327085461406ab87d197461d477ce67c15f24d" diff --git a/scripts/upgrade.d/upgrade.11.8.1.sh b/scripts/upgrade.d/upgrade.11.8.1.sh deleted file mode 100644 index 39b0bf5..0000000 --- a/scripts/upgrade.d/upgrade.11.8.1.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.8.1" - -gitlab_x86_64_source_sha256="ee670ddbad60bdd10d93749593a25a62f1d10f2b232da70b8e42081778b9a36b" - -gitlab_arm_source_sha256="582a5ed77ef50a16377a00f403a6b8f425e8fb98593be95fb0f7cb6db8e5629d" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.9.0.sh b/scripts/upgrade.d/upgrade.11.9.0.sh deleted file mode 100644 index efc07d1..0000000 --- a/scripts/upgrade.d/upgrade.11.9.0.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.9.0" - -gitlab_x86_64_source_sha256="13dcff613c9f7a915117aec8d788e99ac4742e1ac7be0c7c6a87fc8de8f4275d" - -gitlab_arm_source_sha256="2aec5d04f05cc3bb2fa22e52232e4e0841e58fb3f77052f776292db09e2fcf87" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.9.1.sh b/scripts/upgrade.d/upgrade.11.9.1.sh deleted file mode 100644 index 7101850..0000000 --- a/scripts/upgrade.d/upgrade.11.9.1.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.9.1" - -gitlab_x86_64_source_sha256="9668345176be07f1f8637b3c72ffea6f8fe2e76a8c5b10b74a340b9b6b97788c" - -gitlab_arm_source_sha256="df1fb5be8ec089a77cfe8276cbaabe0e40b0f3368cafc07de984d7795252ee21" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.9.4.sh b/scripts/upgrade.d/upgrade.11.9.4.sh deleted file mode 100644 index ec84656..0000000 --- a/scripts/upgrade.d/upgrade.11.9.4.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.9.4" - -gitlab_x86_64_source_sha256="20963cd803b116d041795f50c607ddf837e7226bc46025997348fe1c2e5e35ca" - -gitlab_arm_source_sha256="dba6f34b23ba74765b03ce9521b16a5e951e6bd6d1f2fdcce692a58f43a4c48b" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.9.8.sh b/scripts/upgrade.d/upgrade.11.9.8.sh deleted file mode 100644 index f5fa9dc..0000000 --- a/scripts/upgrade.d/upgrade.11.9.8.sh +++ /dev/null @@ -1,7 +0,0 @@ -gitlab_version="11.9.8" - -gitlab_x86_64_source_sha256="bb81616deeb92a4abf129373a4e6c9d246b37ad1ea707328efeec2fc0a07fc2a" - -gitlab_arm_source_sha256="1810be6f6780a700624343b976eace277ac6aefce51ec4341f549f7642be620f" - -gitlab_filename="gitlab-ce-${gitlab_version}.deb" diff --git a/scripts/upgrade.d/upgrade.11.sh b/scripts/upgrade.d/upgrade.11.sh new file mode 100644 index 0000000..f7981c3 --- /dev/null +++ b/scripts/upgrade.d/upgrade.11.sh @@ -0,0 +1,7 @@ +gitlab_version="11.11.5" + +gitlab_x86_64_source_sha256="1ee3d6e8d2cc198f5466de0884c03f6016299db24859126af9a191501dbdef10" + +gitlab_arm_source_sha256="366e12b1f3d3b1694fcb6f13da9de908360ba93f75768d97e8d01e61e8652705" + +gitlab_filename="gitlab-ce-${gitlab_version}.deb"