Ceci est une ancienne révision du document !
Table des matières
GitLab de FedeRez
GitLab est installé sur Baldrick. Il est utilisé pour les projets de FedeRez et ceux des associations membres.
Installation
Méthode
Il y a deux méthodes principales d'installation de GitLab : par les sources et par Omnibus. Cette dernière méthode imposant le serveur web et le serveur de base de données à utiliser, c'est l'installation par sources qui a été retenue.
Le guide suivi est https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/installation.md. Les différences sont dans les sections suivantes.
Ruby
Contrairement à ce que suggère le guide, Ruby a été installé via les dépôts (version 2.1.5 dans Jessie) :
apt-get install ruby ruby-dev
Base de données
MySQL a été choisi plutôt que PosgreSQL. Les instructions sont dans le guide suivant : https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/database_mysql.md.
Serveur web
On utilise Apache au lieu de Nginx.
- /etc/apache2/sites-available/gitlab
<VirtualHost *:443> ServerName gitlab.federez.net ServerSignature Off ProxyPreserveHost On # Ensure that encoded slashes are not decoded but left in their encoded state. # http://doc.gitlab.com/ce/api/projects.html#get-single-project AllowEncodedSlashes NoDecode <Location /> Order deny,allow Allow from all ProxyPassReverse https://127.0.0.1:8080 ProxyPassReverse gitlab.federez.net </Location> #apache equivalent of nginx try files # http://serverfault.com/questions/290784/what-is-apaches-equivalent-of-nginxs-try-files # http://stackoverflow.com/questions/10954516/apache2-proxypass-for-rails-app-gitlab RewriteEngine on RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule .* http://127.0.0.1:8080%{REQUEST_URI} [P,QSA] RequestHeader set X_FORWARDED_PROTO 'https' # needed for downloading attachments DocumentRoot /home/git/gitlab/public #Set up apache error documents, if back end goes down (i.e. 503 error) then a maintenance/deploy page is thrown up. ErrorDocument 404 /404.html ErrorDocument 422 /422.html ErrorDocument 500 /500.html ErrorDocument 503 /deploy.html </VirtualHost>
LDAP
Les utilisateurs sont authentifiés avec le serveur LDAP de FedeRez. On configure donc GitLab pour s'en servir :
- /home/git/gitlab/config/gitlab.yml
... production: ... ldap: enabled: true servers: main: label: 'LDAP' host: 'ldap.federez.net' port: 389 uid: 'uid' method: 'tls' bind_dn: 'cn=gitlab,ou=service-users,dc=federez,dc=net' password: 'secret' active_directory: false block_auto_created_users: false base: 'ou=users,dc=federez,dc=net' ...
Mise à jour
Pour mettre à jour GitLab, lire le changelog, mettre à jour les dépôts dans /home/git
et relancer les services.