From 8b38194666668018fea593d1f95e870c9b6f9a90 2023-01-09 09:05:39 From: RhodeCode Admin Date: 2023-01-09 09:05:39 Subject: [PATCH] core: various changes --- diff --git a/config/statsd-exporter/statsd.yaml b/config/statsd-exporter/statsd.yaml index 3c50650..c2eafad 100644 --- a/config/statsd-exporter/statsd.yaml +++ b/config/statsd-exporter/statsd.yaml @@ -1,5 +1,6 @@ defaults: # metrics expiration + # 2 days ttl: 48h mappings: diff --git a/docs/migration-to-docker.md b/docs/migration-to-docker.md new file mode 100644 index 0000000..c19ea9b --- /dev/null +++ b/docs/migration-to-docker.md @@ -0,0 +1,46 @@ +# Quick list of action to migrate old pre 4.28.0 installer based releases to docker stack + +### 1. Decide on components use + +By default RhodeCode stack uses Redis and Postgres. +We recommend using those in Docker as things like +backup/restore are much easier, and possible to run by our installer + +If you plan to use your own redis or DB, uncomment/disable those services in file: +`docker-compose-services.override.yaml` + +Select your DB type by commenting postgres or mysql db in docker-compose-services.override.yaml +For Sqlite, comment out both DB types + +### 2. launch stack based on get started + +Run a quick start guide based on ./rccontrol get-started + +### 3. make a db dump +If docker-based DB is selected +Create a database backup from your db type +If you plan to use you old running DB, this step can be ommited + +### 4. restore db +If docker-based DB is selected +Restore the database into docker container running DB + +### mv repositories data to .custom/storage + +### mv gists data to .custom/storage + +### mv artifacts data to .custom/storage + +### mv tarball cache data to .custom/storage + +### ./rccontrol cli storage + +### move repos to /vol/repovolume + +### move artifacts data to /vol/datavolume + +### move tarballcache data to /vol/datavolume + +### cp rhodecode.ini to config/_shared/rhodecode.ini + +### cp vcsserver.ini to config/_shared/vcsserver.ini \ No newline at end of file diff --git a/entrypoints.d/entrypoint.sh b/entrypoints.d/entrypoint.sh index 16e7edd..495e05b 100755 --- a/entrypoints.d/entrypoint.sh +++ b/entrypoints.d/entrypoint.sh @@ -3,6 +3,7 @@ set -Eeo pipefail function config_copy() { # copy over the configs if they don't exist + echo "checking if config files needs bootstrapping" for f in /etc/rhodecode/conf_build/*; do fname=${f##*/} if [ ! -f "/etc/rhodecode/conf/$fname" ]; then @@ -89,8 +90,16 @@ case "$1" in supervisord | pserve | gunicorn ) isLikelyWeb=1 ;; esac +if [[ $RC_APP_TYPE = "rhodecode_vcsserver" ]]; then + # copy over default configuration files + config_copy +fi + if [[ $RC_APP_TYPE = "rhodecode_http" ]]; then + # copy over default configuration files + config_copy + DB_INIT_FILE=/var/opt/rhodecode_data/.dbinit_bootstrapped if [ "$FORCE_DB_INIT_FILE" = 1 ]; then rm $DB_INIT_FILE @@ -116,9 +125,6 @@ if [[ $RC_APP_TYPE = "rhodecode_http" ]]; then if [[ ! -e $RC_SETUP_FILE ]]; then echo "ENTRYPOINT: Starting $RC_APP_TYPE initial bootstrap" - # copy over default configuration files - config_copy - # setup application with specific options if [ "$SETUP_APP" = 1 ]; then rhodecode_setup diff --git a/scripts/dev/bash-ly b/scripts/dev/bash-ly new file mode 100755 index 0000000..5e60afa --- /dev/null +++ b/scripts/dev/bash-ly @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +cd scripts/rccontrol/ +#alias bashly='docker run --rm -it --user $(id -u):$(id -g) --volume "$PWD:/app" dannyben/bashly:edge' +docker run --rm -it --user $(id -u):$(id -g) --volume "$PWD:/app" dannyben/bashly:edge generate --watch diff --git a/scripts/dev/dev.sh b/scripts/dev/dev.sh index 7f6f186..8ab2dd8 100755 --- a/scripts/dev/dev.sh +++ b/scripts/dev/dev.sh @@ -30,7 +30,7 @@ case ${1:-} in exit ;; dev-env ) - eval "./rccontrol stack metrics up --detach statsd-exporter && ./rccontrol stack services up --detach && ./rccontrol stack rhodecode up --detach celery celery-beat && ./rccontrol status -s" + eval "./rccontrol stack metrics up --detach statsd-exporter && ./rccontrol stack services up --detach && ./rccontrol stack rhodecode up --detach celery celery-beat && ./rccontrol status" exit ;; prune )