Очень простая и быстрая в настройке утилита для бэкапа GIT репозиториев. Можно использовать как для бэкапа куда-то локально или в S3, так и для копирования из одного репозитория в другой. Речь пойдёт про open source проект gickup.
Сразу покажу на примере, как я забэкапил к себе локально несколько своих закрытых репозиториев на публичном gitlab.
Создаю конфигурационный файл
Для получения token сходил в Preferences ⇨ Access tokens и создал personal access token с доступом только на чтение. В своём примере я забэкапил только 3 репозитория: gatus, scripts, configs. Если их не указать, забэкапит все.
Запускаю бэкап:
Вот и всё. Gickup поддерживает все популярные платформы для хостинга git, как публичные, так и приватные:
- Github
- Gitlab
- Gitea
- Gogs
- Bitbucket
- Onedev
- Sourcehut
В качестве источников для сохранения или копирования поддерживает их же, плюс:
- локальная директория
- S3 хранилище
Настройка источников и приёмников отражена в документации. Там всё кратко и по делу. Список параметров невелик. У меня сразу всё получилось.
Очень простой и быстрый способ копировать репозитории в одно или несколько мест одновременно. Дополнительно gickup умеет отправлять уведомления о своей работе в ntfy, gotify и apprise. Также может локально логи писать и отправлять метрики в Prometheus. Правда не очень понял какие. Не проверял это.
⇨ 🌐 Сайт / Исходники
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#git #backup #devops
Сразу покажу на примере, как я забэкапил к себе локально несколько своих закрытых репозиториев на публичном gitlab.
# wget https://github.com/cooperspencer/gickup/releases/download/v0.10.38/gickup_0.10.38_linux_amd64.tar.gz# tar xzvf gickup_0.10.38_linux_amd64.tar.gzСоздаю конфигурационный файл
conf.yml:source:
gitlab:
- token: glpat-GtPuYrBvnxxkTFsq-Y
url: https://gitlab.com/
user: zeroxzed
include:
- gatus
- scripts
- configs
wiki: true
issues: true
destination:
local:
- path: /home/zerox/backup-gitlab
structured: true
keep: 5
Для получения token сходил в Preferences ⇨ Access tokens и создал personal access token с доступом только на чтение. В своём примере я забэкапил только 3 репозитория: gatus, scripts, configs. Если их не указать, забэкапит все.
Запускаю бэкап:
# ./gickup conf.ymlВот и всё. Gickup поддерживает все популярные платформы для хостинга git, как публичные, так и приватные:
- Github
- Gitlab
- Gitea
- Gogs
- Bitbucket
- Onedev
- Sourcehut
В качестве источников для сохранения или копирования поддерживает их же, плюс:
- локальная директория
- S3 хранилище
Настройка источников и приёмников отражена в документации. Там всё кратко и по делу. Список параметров невелик. У меня сразу всё получилось.
Очень простой и быстрый способ копировать репозитории в одно или несколько мест одновременно. Дополнительно gickup умеет отправлять уведомления о своей работе в ntfy, gotify и apprise. Также может локально логи писать и отправлять метрики в Prometheus. Правда не очень понял какие. Не проверял это.
⇨ 🌐 Сайт / Исходники
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#git #backup #devops
2👍92👎3