Gogs
Gogs est le logiciel qui fait tourner https://code.ffdn.org
Configuration
$ ssh hermes.aquilenet.fr admin@hermes:~$ sudo su - gogs gogs@hermes:~$ cd go/src/github.com/gogits/gogs
La configuration se fait dans custom/conf/app.ini
. Il y a principalement les clés de configuration qui changent par rapport à la configuration par défaut (dans conf/app.ini
).
Mise à jour de Gogs sur hermes
$ ssh hermes.aquilenet.fr admin@hermes:~$ sudo su - gogs
Les modifications locales sont dans une branche “ffdn_prod”. Il y a le thème de la page d'accueil, et également de temps à autre des patches.
Pour mettre à jour, ça se fait en plusieurs étapes :
Mise à jour des dépendances
On commence par revenir sur la branche master, et mettre à jour gogs ainsi que ses dépendances :
gogs@hermes:~$ cd $GOPATH/src/github.com/gogits/gogs gogs@hermes:~$ git checkout master gogs@hermes:~$ git pull gogs@hermes:~$ go get -v -u github.com/gogits/gogs
Choix d'une version
Pour choisir la version cible, on regarde la dernière release sur Github https://github.com/gogits/gogs/releases, il suffit alors de noter le nom du tag. Ou alors, si on est joueur, on peut aussi se placer sur un commit en particulier, voire même master
.
Entretien de la configuration
On regarde les nouveaux paramètres de configuration introduits, et si les valeurs par défaut ne conviennent pas, on rajoute de la configuration dans custom/conf/app.ini
:
gogs@hermes:~$ VERSION="v10.x" # Remplacer par la version désirée gogs@hermes:~$ git log -p ffdn_prod..$VERSION conf/app.ini gogs@hermes:~$ vim custom/conf/app.ini
Mise à jour du code
Enfin, on rebase la branche ffdn_prod
sur la version désirée :
gogs@hermes:~$ git checkout ffdn_prod gogs@hermes:~$ git rebase $VERSION
Compilation
On fait un « backup » de la version de prod (au cas où) :
gogs@hermes:~/go/src/github.com/gogits/gogs$ mv gogs gogs-$(./gogs -v | awk '{print $3}')
Puis compilation de la nouvelle version :
gogs@hermes:~/go/src/github.com/gogits/gogs$ go build
Redémarrage du service
Si tout s'est bien passé, on peut redémarrer le service (en étant root) :
# supervisorctl status # supervisorctl restart gogs
Les logs sont consultables dans /home/gogs/log/gogs.log
Changements locaux
Sebian nous a fait une super page d'accueil :)
Au besoin le logo est dispo ici:
cd $GOPATH/src/github.com/gogits/gogs wget -O public/img/gogs-lg.png http://www.ffdn.org/sites/default/files/logo_ffdn_0.png
Et la home page là :
vi templates/home.tmpl