Проект для автоматического развертывания GitLab Runner в Yandex Cloud с использованием Terraform. Включает в себя инструменты для мониторинга и управления раннерами.
- Клонируйте репозиторий:
git clone https://github.com/NickOsipov/gitlab-runner.git
cd gitlab-runner
- Установите Poetry (если еще не установлен):
curl -sSL https://install.python-poetry.org | python3 -
- Установите зависимости проекта:
poetry env use python3.11
poetry install
poetry shell
- Создайте файл
.env
на основе примера и заполните необходимые переменные:
cp .env.example .env
- Настройте Terraform:
cd infra
cp terraform.tfvars.example terraform.tfvars
Заполните terraform.tfvars
необходимыми значениями для Yandex Cloud и GitLab.
cd infra
terraform init
terraform plan
terraform apply --auto-approve
Используйте команды Make или Invoke для выполнения различных операций:
# Использование Make
make check-runners
make check-projects
# Использование Invoke
invoke check-runners
invoke check-projects
make download_log
# или
invoke download-log
MIT License
- Форкните репозиторий
- Создайте ветку для ваших изменений:
git checkout -b feat/amazing-feature
- Зафиксируйте изменения:
git commit -m 'feat: add amazing feature'
- Отправьте изменения в ваш форк:
git push origin feat/amazing-feature
- Создайте Pull Request
- Python 3.11+
- Poetry
- Terraform 1.0+
- Yandex Cloud CLI
- GitLab токен с правами администратора
.
├── infra/ # Terraform конфигурация
├── src/ # Python скрипты
├── scripts/ # Bash скрипты
├── logs/ # Логи выполнения
└── config/ # Конфигурационные файлы