Files
K3S/addons/gitea/README.md
Sergey Antropoff 38aaadbfb1 docs: sync addon docs with explicit external/internal service modes
Обновлена документация под новые аддоны (gitlab, redis, mongodb, kafka, kafka-ui, rabbitmq) и новую модель явного выбора зависимостей. Добавлены и унифицированы описания переключателей *_database_mode и *_redis_mode, обновлена таблица зависимостей аддонов, примеры конфигурации и список vault-секретов.
2026-04-29 23:21:04 +03:00

3.5 KiB
Raw Permalink 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

Выбор задаётся переменной gitea_database_mode:

  • auto — внешняя PostgreSQL при addon_postgresql: true, иначе встроенная chart PostgreSQL;
  • internal — всегда встроенная chart PostgreSQL;
  • external_postgresql — всегда внешняя PostgreSQL (аддон postgresql или совместимый внешний сервис).

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

Официальные ресурсы