Fixed git articles
This commit is contained in:
parent
5da6e5f3ca
commit
267940e52d
2 changed files with 14 additions and 3 deletions
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
```
|
```
|
||||||
|
|
Loading…
Add table
Reference in a new issue