From 38474186f0848d69dbd212ca0fe523bf1064ead3 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 15 Nov 2019 00:13:02 +0100 Subject: added nextcloud upgrade script --- roles/nextcloud/files/nextcloud-upgrade | 42 +++++++++++++++++++++++++++++++++ roles/nextcloud/tasks/main.yml | 7 ++++++ 2 files changed, 49 insertions(+) create mode 100755 roles/nextcloud/files/nextcloud-upgrade (limited to 'roles/nextcloud') diff --git a/roles/nextcloud/files/nextcloud-upgrade b/roles/nextcloud/files/nextcloud-upgrade new file mode 100755 index 00000000..aac5001f --- /dev/null +++ b/roles/nextcloud/files/nextcloud-upgrade @@ -0,0 +1,42 @@ +#!/bin/bash + +INST_NAME="$1" +VERSION="$2" +if [ -z "$INST_NAME" ] || [ -z "$VERSION" ]; then + echo "Usage: $0 " + exit 1 +fi + +set -eu + +K8S_MANIFEST_D="/etc/kubernetes/manifests/" +K8S_MANIFEST_FILE="$K8S_MANIFEST_D/nextcloud-$INST_NAME.yml" +if [ ! -e "$K8S_MANIFEST_FILE" ]; then + echo "could not find manifest file: $K8S_MANIFEST_FILE" + exit 2 +fi + +TMP_D=$(mktemp -d -t nextcloud-upgrade.XXXXXXX) +function cleanup { + rm -rf "$TMP_D" +} +trap cleanup EXIT + +echo "*** Pre-Pulling the image" +echo "" +ctr -n k8s.io image pull "docker.io/library/nextcloud:$VERSION" +echo "" + +echo "*** Patching manifest file" +echo "" +sed "s#image: \"nextcloud:.*\"#image: \"nextcloud:$VERSION\"#" "$K8S_MANIFEST_FILE" > "$TMP_D/upgraded.yml" +set +e +diff -u "$K8S_MANIFEST_FILE" "$TMP_D/upgraded.yml" +if [ $? -eq 0 ]; then + echo "patching file failed?" + exit 2 +fi +cat "$TMP_D/upgraded.yml" > "$K8S_MANIFEST_FILE" +echo "" + +exit 0 diff --git a/roles/nextcloud/tasks/main.yml b/roles/nextcloud/tasks/main.yml index 1b863ec7..8a816c2e 100644 --- a/roles/nextcloud/tasks/main.yml +++ b/roles/nextcloud/tasks/main.yml @@ -151,3 +151,10 @@ replacement: "https://$host/" - redirect: "http://$host:8080/" replacement: "https://$host/" + + +- name: install upgrade script + copy: + src: nextcloud-upgrade + dest: /usr/local/bin/nextcloud-upgrade + mode: 0755 -- cgit v1.2.3