Files
K3S/addons/gitea/README.md
Sergey Antropoff eccc1c2a01 docs: полная документация проекта — docs/ и README.md для каждого аддона
- README.md: перепиcан как компактный обзор (98 строк) с навигацией по docs/
- docs/: 13 файлов — getting-started, architecture, configuration, addons,
  storage, security, cicd, observability, networking, operations,
  make-reference, molecule-testing, troubleshooting
- addons/*/README.md: 31 новый файл — описание, параметры, примеры кода
  для каждого из 34 аддонов (vault и external-secrets уже существовали)
2026-04-26 00:22:06 +03:00

2.9 KiB
Raw Blame History

Gitea

Self-hosted Git сервис с веб-интерфейсом. Поддерживает SSH для git clone, интеграцию с PostgreSQL, Gitea Actions (GitHub Actions-совместимая CI/CD).

Быстрый старт

# group_vars/all/addons.yml
addon_gitea: true
gitea_ingress_host: "gitea.example.com"
gitea_ingress_tls: true

Секреты в vault.yml:

vault_gitea_admin_password: "secure-password"
vault_gitea_db_password: "db-password"   # если addon_postgresql: true
make addon-gitea

Параметры

Переменная Умолч. Описание
gitea_admin_username gitea Логин администратора
gitea_ingress_host gitea.local Hostname
gitea_ingress_tls false TLS через cert-manager
gitea_ssh_enabled false SSH NodePort для git clone
gitea_ssh_node_port 30022 NodePort для SSH
gitea_storage_size 10Gi Размер PVC для репозиториев

SSH для git clone

gitea_ssh_enabled: true
gitea_ssh_node_port: 30022

Использование:

git clone ssh://git@192.168.1.10:30022/user/repo.git

Интеграция с PostgreSQL

При addon_postgresql: true Gitea автоматически использует общий PostgreSQL, создавая свою базу данных gitea и пользователя.

Gitea Actions (GitHub Actions совместимая CI/CD)

gitea_actions_enabled: true          # включить Actions в Gitea
gitea_actions_runner_enabled: true   # установить act_runner
gitea_actions_runner_replicas: 2     # параллельных runner
gitea_actions_runner_dind_enabled: true  # Docker-in-Docker

Поддерживаемые labels (runs-on):

gitea_actions_runner_labels: "ubuntu-latest:docker://node:20-bullseye,ubuntu-22.04:docker://ubuntu:22.04"

Пример workflow

# .gitea/workflows/ci.yml
name: CI
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Build
        run: make build
      - name: Test
        run: make test

Docker build в Actions

jobs:
  docker:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Build Docker image
        run: |
          docker build -t myapp:${{ gitea.sha }} .
          docker push harbor.example.com/library/myapp:${{ gitea.sha }}

Webhooks для интеграции с Jenkins

В настройках репозитория → Webhooks → Add Webhook:

  • URL: https://jenkins.example.com/gitea-webhook/post
  • Content-Type: application/json
  • Secret: токен из Jenkins

Диагностика

kubectl logs -n gitea deployment/gitea -f
kubectl exec -n gitea deployment/gitea -- gitea admin user list