Как перейти с исходной базы gitalb на gitlab omnibus?

Я пытаюсь переместить gitlab-ce 8.5 исходную базу в gitlab-ce 8.15 omnibus. Мы использовали MySQL in source base but now we have to use thepsql с gitlab-ce omnibus`. Когда я пытался сделать резервную копию, она не удалась из-за какого-то пустого репо.

Вопрос: есть ли альтернативный способ перенести исходную базу на омнибус с полной резервной копией?


person Saurabh Srivastava    schedule 17.12.2016    source источник


Ответы (1)


Я переместил gitlab из исходной базы в омнибус. Вы можете использовать ссылку ниже, чтобы преобразовать дамп базы данных из MySQL в psql.

https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/update/mysql_to_postgresql.md

Я создал zip-файл репозиториев вручную, скопировал его на омнибус-сервер gitlab и восстановил его в /var/opt/gitlab/git-data/repository/.

После этих шагов скопируйте приведенный ниже скрипт в /var/opt/gitlab/git-data/xyz.sh и выполните его для обновления хуков.

#!/bin/bash
for i in repositories/* ; do
  if [ -d "$i" ]; then
    for o in $i/* ; do
     if [ -d "$i" ]; then
       rm "$o/hooks"
       # change the paths if required
       ln -s  "/opt/gitlab/embedded/service/gitlab-shell/hooks" /var/opt/gitlab/git-data/"$o"/hooks 
       echo "HOOKS CHANGED ($i/$o)"
     fi
    done
  fi
done

Примечание. Разрешение репозитория должно быть git:git

Некоторые полезные команды во время миграции:

sudo gitlab-ctl start postgres **to start the Postgres service only**

sudo gitlab-psql **to use the gitlab bundle postgres.**

Не стесняйтесь комментировать, если вы столкнулись с кодом ошибок 5xx на странице gitlab.

person Saurabh Srivastava    schedule 11.09.2017