Use cgit as a simple frontend to gitea
This commit is contained in:
parent
be3a571d2c
commit
d290f2f68f
4 changed files with 69 additions and 4 deletions
|
@ -15,7 +15,7 @@ TEMP_PATH = /data/gitea/uploads
|
|||
APP_DATA_PATH = /data/gitea
|
||||
SSH_DOMAIN = git.theorangeone.net
|
||||
HTTP_PORT = 3000
|
||||
ROOT_URL = https://git.theorangeone.net/
|
||||
ROOT_URL = https://git.theorangeone.net/gitea/
|
||||
DISABLE_SSH = false
|
||||
SSH_PORT = 22
|
||||
SSH_LISTEN_PORT = 3022
|
||||
|
|
11
ansible/roles/docker/files/gitea/cgitrc
Normal file
11
ansible/roles/docker/files/gitea/cgitrc
Normal file
|
@ -0,0 +1,11 @@
|
|||
#
|
||||
# cgit config
|
||||
#
|
||||
|
||||
css=/cgit.css
|
||||
logo=/cgit.png
|
||||
source-filter=/bin/syntax-highlighting.sh
|
||||
virtual-root=/
|
||||
mimetype-file=/etc/mime.types
|
||||
robots=noindex, nofollow
|
||||
include=/config/repos.txt
|
|
@ -10,10 +10,12 @@ services:
|
|||
- USER_GID={{ docker_user.id }}
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.gitea.rule=Host(`git.theorangeone.net`)"
|
||||
- "traefik.http.routers.gitea.rule=Host(`git.theorangeone.net`) && PathPrefix(`/gitea`)"
|
||||
- "traefik.http.routers.gitea.tls=true"
|
||||
- "traefik.http.routers.gitea.tls.certresolver=le"
|
||||
- "traefik.http.services.gitea-gitea.loadbalancer.server.port=3000"
|
||||
- "traefik.http.middlewares.gitea-strip.stripprefix.prefixes=/gitea"
|
||||
- "traefik.http.routers.gitea.middlewares=gitea-strip"
|
||||
ports:
|
||||
- "{{ wireguard.clients.intersect.ip }}:3022:3022"
|
||||
volumes:
|
||||
|
@ -30,3 +32,30 @@ services:
|
|||
environment:
|
||||
- POSTGRES_PASSWORD=gitea
|
||||
- POSTGRES_USER=gitea
|
||||
|
||||
cgit:
|
||||
image: theorangeone/docker-cgit:latest
|
||||
container_name: cgit
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- USER_UID={{ docker_user.id }}
|
||||
- USER_GID={{ docker_user.id }}
|
||||
volumes:
|
||||
- ./repos:/data/git:ro
|
||||
- ./cgit/cgitrc:/config/cgitrc:ro
|
||||
- ./cgit/repos.txt:/config/repos.txt:ro
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.cgit.rule=Host(`git.theorangeone.net`)"
|
||||
- "traefik.http.routers.cgit.tls=true"
|
||||
- "traefik.http.routers.cgit.tls.certresolver=le"
|
||||
|
||||
gitea-cgit-adapter:
|
||||
image: theorangeone/gitea-cgit-adapter:latest
|
||||
restart: unless-stopped
|
||||
command: "/app/gitea-cgit-adapter /etc/gitea.ini /etc/cgit-repos.txt --interval 600"
|
||||
depends_on:
|
||||
- gitea
|
||||
volumes:
|
||||
- ./gitea/gitea/conf/app.ini:/etc/gitea.ini:ro
|
||||
- ./cgit/repos.txt:/etc/cgit-repos.txt
|
||||
|
|
|
@ -18,6 +18,14 @@
|
|||
become: true
|
||||
become_user: root
|
||||
|
||||
- name: Create cgit config directory
|
||||
file:
|
||||
path: '/opt/gitea/cgit'
|
||||
state: directory
|
||||
mode: "{{ docker_compose_directory_mask }}"
|
||||
become: true
|
||||
become_user: root
|
||||
|
||||
- name: Install gitea compose file
|
||||
template:
|
||||
src: files/gitea/docker-compose.yml
|
||||
|
@ -35,7 +43,24 @@
|
|||
dest: "/opt/gitea/gitea/gitea/conf/app.ini"
|
||||
mode: "{{ docker_compose_file_mask }}"
|
||||
owner: "{{ docker_user.name }}"
|
||||
register: config_file
|
||||
register: gitea_config_file
|
||||
become: true
|
||||
become_user: root
|
||||
|
||||
- name: Install cgit config file
|
||||
template:
|
||||
src: files/gitea/cgitrc
|
||||
dest: "/opt/gitea/cgit/cgitrc"
|
||||
mode: "{{ docker_compose_file_mask }}"
|
||||
owner: "{{ docker_user.name }}"
|
||||
register: cgit_config_file
|
||||
become: true
|
||||
become_user: root
|
||||
|
||||
- name: Touch public repos file
|
||||
file:
|
||||
path: /opt/gitea/cgit/repos.txt
|
||||
state: file
|
||||
become: true
|
||||
become_user: root
|
||||
|
||||
|
@ -46,7 +71,7 @@
|
|||
remove_orphans: true
|
||||
remove_volumes: true
|
||||
state: "{{ item }}"
|
||||
when: compose_file.changed or config_file.changed
|
||||
when: compose_file.changed or gitea_config_file.changed or cgit_config_file.changed
|
||||
loop:
|
||||
- absent
|
||||
- present
|
||||
|
|
Loading…
Reference in a new issue