Fixed git articles

This commit is contained in:
Julien Dessaux 2022-07-24 21:47:16 +02:00
parent 5da6e5f3ca
commit 267940e52d
Signed by: adyxax
GPG key ID: F92E51B86E07177E
2 changed files with 14 additions and 3 deletions

View file

@ -2,6 +2,9 @@
title: Migrating from gitea to gitolite and cgit title: Migrating from gitea to gitolite and cgit
description: A quest for simplicity description: A quest for simplicity
date: 2022-07-15 date: 2022-07-15
tags:
- FreeBSD
- git
--- ---
## Introduction ## Introduction
@ -27,4 +30,4 @@ The main challenge I encountered was how to make `go get` or `go install` work w
I solved that issue of injecting this header by: I solved that issue of injecting this header by:
- setting a `cgit.extra-head-content` in the gitconfig of my go repositories - setting a `cgit.extra-head-content` in the gitconfig of my go repositories
- configuring gitolite to accept such header by customizing its `GIT_CONFIG_KEYS` - configuring gitolite to accept such header by customizing its `GIT_CONFIG_KEYS` and working around regex character checks

View file

@ -56,12 +56,20 @@ In order to customize the cgit frontend, I needed to allow some git configuratio
GIT_CONFIG_KEYS => 'cgit.desc cgit.extra-head-content cgit.homepage cgit.hide cgit.ignore cgit.owner cgit.section', GIT_CONFIG_KEYS => 'cgit.desc cgit.extra-head-content cgit.homepage cgit.hide cgit.ignore cgit.owner cgit.section',
``` ```
These keys allow me to specify repositories like this: Sadly, the html meta tag we need to add contains `<` and `>` characters, which can have a special meaning in regular expressions. Because of that these characters are banned from values by gitolite, but we have a workaround if we add the following bellow our `GIT_CONFIG_KEYS` line:
```perl
SAFE_CONFIG => {
LT => '<',
GT => '>',
},
```
Thanks to this translation table, we can now specify a go repository like this:
```perl ```perl
repo adyxax/bareos-zabbix-check repo adyxax/bareos-zabbix-check
RW+ = adyxax RW+ = adyxax
config cgit.desc = A Zabbix check for bareos backups config cgit.desc = A Zabbix check for bareos backups
config cgit.extra-head-content=<meta name="go-import" content="git.adyxax.org/adyxax/bareos-zabbix-check git https://git.adyxax.org/adyxax/bareos-zabbix-check"> config cgit.extra-head-content = %LTmeta name='go-import' content='git.adyxax.org/adyxax/bareos-zabbix-check git https://git.adyxax.org/adyxax/bareos-zabbix-check'/%GT
config cgit.owner = Julien Dessaux config cgit.owner = Julien Dessaux
config cgit.section = Active config cgit.section = Active
``` ```