From 04ef4342f3b72ca8645e09d61cda3f50efa6da9d Mon Sep 17 00:00:00 2001 From: Valentin Lab Date: Fri, 24 Sep 2021 19:27:15 +0200 Subject: [PATCH] chg: doc: [rocketchat] instruction for test and prepare new release Signed-off-by: Valentin Lab --- rocketchat/README.org | 54 ++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 16 deletions(-) diff --git a/rocketchat/README.org b/rocketchat/README.org index 92db1ca3..c02c9f88 100644 --- a/rocketchat/README.org +++ b/rocketchat/README.org @@ -6,33 +6,55 @@ * Updating the charm to a new version -We are using official image. Latest tags usually. You can -double-check available candidate for official images like this: +We are using official image. Latest tags usually. -#+begin_src sh -docker search rocket.chat -#+end_src +** Test new version + +Rocket.chat has a powerfull and working database update mecanism that +will take care of migrating database on startup. -So we usually pull and test images like this : +*** Get latest available versions + +You can double-check available candidate for official images like this: #+begin_src sh -docker pull rocket.chat:X.Y.Z +docker-tags-fetch rocketchat/rocket.chat -l 15 -f "^[0-9]+\.[0-9]+\.[0-9]+$" | sort -rV #+end_src -This worked on 3.6.3, but changed before 3.8.0 to: +Check/Choose the version you want to test. -#+begin_src sh -docker pull rocketchat/rocket.chat:X.Y.Z +*** Modify your own =compose.yml= + +By adding these 2 lines in your rocket chat service: + +#+begin_src yaml + docker-compose: + image: rocketchat/rocket.chat:X.Y.Z #+end_src -from: https://hub.docker.com/r/rocketchat/rocket.chat +Replace X.Y.Z by the target version you want to test. + +Launch =compose up=. + +Be ready to wait a few minutes after =compose up= finished before the +service to be available: rocketchat is expected to take some time to +migrate. -Get the available tags: + +** Change the current charm to include new version + +To prepare the commit for next version, you can run the following +on the repository you'll use to push the new commit. #+begin_src sh -docker-tags-fetch rocket.chat -l 15 -f "^[0-9]+\.[0-9]+\.[0-9]+" | sort -V +BASENAME=rocketchat/rocket.chat +VERSION=$(docker-tags-fetch "$BASENAME" -l 15 -f "^[0-9]+\.[0-9]+\.[0-9]+$" | sort -rV | head -n 1) +echo Last version of rocket chat: $VERSION +docker pull rocketchat/rocket.chat:"$VERSION" && +docker tag rocketchat/rocket.chat:"$VERSION" docker.0k.io/rocketchat:"$VERSION" && +docker push docker.0k.io/rocketchat:"$VERSION" && +sed -ri "s%^(docker-image: docker.0k.io/rocketchat:).*%\1$VERSION%" metadata.yml && +sed -ri "s%^(#docker-image: rocketchat/rocket.chat:).*%\1$VERSION%" metadata.yml #+end_src -Rocket.chat has a powerfull and working update database that will -take care of migrating database on startup. - +You can review the changes and commit them. \ No newline at end of file