Outils pour utilisateurs

Outils du site


admin:services:gitlab

Ceci est une ancienne révision du document !


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, ces 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

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.

Ruby-dev

Ca se gate au moment d'installer gems, il est apparu que le paquet RedCloth -v '4.2.9' était manquant.
Il nous a fallu réinstaller ruby-dev et ruby pour solutionner le problème.

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

Pour terminer, on interface l'identification avec le ldap federez. C'est relativement simple. Dans la configuration gitlab qui se situe dans /home/git/gitlab/config/gitlab.yml, il faut modifier la partie 2, auth, passer ldap enabled à true, puis :

label: 'LDAP'

        host: 'ldap.federez.net'
        port: 389
        uid: 'uid'
        method: 'tls' # "tls" or "ssl" or "plain"
        bind_dn: 'cn=gitlab,ou=service-users,dc=federez,dc=net'
        password: vous vous attendez pas à le trouver non?
        
        active_directory: false
        block_auto_created_users: false
        base: 'ou=users,dc=federez,dc=net'  

Et c'est tout. Ici, la requête se fait via un user, de type service-users, nommé gitlab, via lequel se fait la consultation read-only de la base. (sur hexagon)

Installé entre le 14 et le 15 mai 2015 par toadjaune et Chirac.

Mise à jour

Il faut git puller l'archive, en ayant pris soin de lire les changelogs….

admin/services/gitlab.1431767413.txt.gz · Dernière modification : 2015/05/16 11:10 de bertrand.bonnefoy-claudet

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki