From 6f67bc0716ecf857140392363be5645b3a133f99 Mon Sep 17 00:00:00 2001 From: RootShell-coder Date: Fri, 11 Oct 2024 23:51:02 +0300 Subject: [PATCH] tested ver 17.4.2-ee --- README.md | 7 +- README_FR.md => lang/README_FR.md | 3 +- lang/README_RU.md | 154 ++++++++++++++++++++++++++++++ 3 files changed, 159 insertions(+), 5 deletions(-) rename README_FR.md => lang/README_FR.md (98%) create mode 100644 lang/README_RU.md diff --git a/README.md b/README.md index 44b9333..a95f8aa 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,9 @@ # GitLab License Generator

- English | - Français + English | + Français | + Russian

@@ -13,7 +14,7 @@ **GitLab License Generator** This project generates a GitLab license for **development purposes**. If you encounter any problems, please troubleshoot them on your own. -Last tested on GitLab v17.4.1-ee. +> Last tested on GitLab v17.4.2-ee. ## Principles diff --git a/README_FR.md b/lang/README_FR.md similarity index 98% rename from README_FR.md rename to lang/README_FR.md index 8269293..c96e30f 100644 --- a/README_FR.md +++ b/lang/README_FR.md @@ -3,8 +3,7 @@ # GitLab License Generator

- English | - Français + English

diff --git a/lang/README_RU.md b/lang/README_RU.md new file mode 100644 index 000000000..c893f66 --- /dev/null +++ b/lang/README_RU.md @@ -0,0 +1,154 @@ +
+ +# Генератор лицензий GitLab + +

+ English +

+ +
+ +## Описание + +**GitLab License Generator** Этот проект генерирует лицензию GitLab для **целей разработки**. Если у вас возникнут какие-либо проблемы, пожалуйста, устраните их самостоятельно. + +> [Последнее тестирование](../README.md). + +## Принципы + +### **src/generator.keys.rb** + +GitLab использует пару открытого/закрытого ключа для шифрования своей лицензии. Открытый ключ поставляется с дистрибутивом GitLab, а закрытый ключ хранится в безопасности. Сама лицензия представляет собой просто словарь JSON. Поскольку GitLab сделал свой код открытым, мы можем легко сгенерировать собственную лицензию. + +### **src/generator.license.rb** + +Папка `lib` извлекается из исходного кода GitLab. Она используется для сборки и проверки лицензии. Скрипт `src/generator.license.rb` загружает эту функциональность. + +### **src/scan.features.rb** + +Функции извлекаются из объекта, заполненного константами. Самый полный план лицензии — **Ultimate**, но такие функции, как Geo Mirroring, не включены ни в один стандартный план. Поэтому мы вручную добавляем эти функции. + +## Использование + +### Предпосылки + +Перед началом убедитесь, что ваша среда правильно настроена. + +#### 1. Установите Ruby и gem +Для запуска этого проекта вам понадобится **Ruby** и менеджер пакетов **gem**. + +- **В Linux (Ubuntu/Debian)**: + ```bash + sudo apt update + sudo apt install ruby-full + ``` + +- **На macOS** (через Homebrew): + ```bash + brew install ruby + ``` + +#### 2. Установите Bundler и необходимые gems +После установки Ruby вам необходимо установить **Bundler** для управления зависимостями Ruby. + +```bash +gem install bundler +``` + +#### 3. Установите gem `gitlab-license` +Для проекта требуется gem `gitlab-license`, который будет автоматически загружен и использован скриптом. + +```bash +gem install gitlab-license +``` + +### Шаги по созданию лицензии GitLab + +#### 1. Клонируйте репозиторий проекта +Скопируйте этот проект на свой локальный компьютер. + +```bash +git clone https://github.com/Lakr233/GitLab-License-Generator.git +cd GitLab-License-Generator +``` + +#### 2. Запустите скрипт `make.sh` +После выполнения всех предварительных условий запустите скрипт: + +```bash +./make.sh +``` + +Скрипт выполнит следующие действия: +- Загрузит и распакует gem-файл `gitlab-license`. +- Скопирует и изменит необходимые файлы. +- Клонирует исходный код GitLab с GitLab.com. +- Сгенерирует пару открытого и закрытого ключей. +- Создаст лицензию GitLab. + +#### 3. Замена открытого ключа в GitLab +Скрипт генерирует открытый ключ, расположенный в `build/public.key`. Вам необходимо заменить существующий открытый ключ GitLab на этот недавно сгенерированный, чтобы убедиться, что лицензия принята. + +- **Если на вашем сервере установлен GitLab**: + ```bash + sudo cp ./build/public.key /opt/gitlab/embedded/service/gitlab-rails/.license_encryption_key.pub + sudo gitlab-ctl reconfigure + sudo gitlab-ctl restart + ``` + +- **Если GitLab установлен через Docker**: + Измените файл `docker-compose.yml`, чтобы смонтировать новый открытый ключ внутрь контейнера: + + ```yaml + volumes: + - "./build/public.key:/opt/gitlab/embedded/service/gitlab-rails/.license_encryption_key.pub" + ``` + + Затем перезапустите контейнер: + ```bash + docker-compose down + docker-compose up -d + ``` + +#### 4. Установите лицензию в GitLab +После замены открытого ключа войдите в интерфейс администратора GitLab, чтобы установить сгенерированную лицензию. + +1. Войдите в GitLab как администратор. +2. Перейдите в **Admin Area** из верхнего правого угла. +3. Перейдите в **Settings > General** и загрузите сгенерированный файл лицензии (`build/result.gitlab-license`). +4. Установите флажок **Terms of Service** и нажмите **Add License**. + +При необходимости вы можете напрямую перейти на страницу загрузки лицензии через: +``` +/admin/license/new +``` + +#### 5. Отключить Service Ping (необязательно) +Если вы хотите отключить сбор данных об использовании GitLab (Service Ping), измените файл конфигурации GitLab: + +- Откройте файл конфигурации: + ```bash + sudo nano /etc/gitlab/gitlab.rb + ``` + +- Добавьте следующую строку: + ```bash + gitlab_rails['usage_ping_enabled'] = false + ``` + +- Перенастройте и перезапустите GitLab: + ```bash + sudo gitlab-ctl reconfigure + sudo gitlab-ctl restart + ``` + +### Поиск неисправностей + +- **Ошибка HTTP 502**: + Если вы столкнулись с этой ошибкой, дождитесь завершения запуска GitLab (это может занять некоторое время). + +## ЛИЦЕНЗИЯ + +Данный проект лицензирован по **WTFPL License**. + +Авторские права (c) 2023, Тим Кук, Все права не защищены.