Skip to content

ppouliot/puppet-gitlab

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Puppet-gitlab Build Status

Tested successfully with Gitlab 6-0-stable on Ubuntu 12.04 and Debian Wheezy (7.1) with Puppet 3

GitLab is a free project and repository management application

A Puppet Module is a collection of related content that can be used to model the configuration of a discrete service.

This module is based on the admin guides for gitlab, stable version.

Usage

Note: Assume that a database server is already installed on your server/infrastructure (see: vagrant-gitlab).

  class {
    'gitlab':
      git_email         => '[email protected]',
      git_comment       => 'GitLab',
      gitlab_domain     => 'gitlab.foobar.fr',
      gitlab_dbtype     => 'mysql',
      gitlab_dbname     => $gitlab_dbname,
      gitlab_dbuser     => $gitlab_dbuser,
      gitlab_dbpwd      => $gitlab_dbpwd,
      ldap_enabled      => false,
  }

Other class parameters

  • git_user: Name of the gitlab (default: git)
  • git_home: Home directory for gitlab repository (default: /home/git)
  • git_email: Email address for gitlab user (default: [email protected])
  • git_comment: Gitlab user comment (default: GitLab)
  • gitlab_sources: Gitlab sources (default: git://github.com/gitlabhq/gitlabhq.git)
  • gitlab_branch: Gitlab branch (default: 6-0-stable)
  • gitlabshell_sources: Gitlab-shell sources (default: git://github.com/gitlabhq/gitlab-shell.git)
  • gitlabshell_banch: Gitlab-shell branch (default: v1.7.0)
  • gitlab_dbtype: Gitlab database type (default: mysql)
  • gitlab_dbname: Gitlab database name (default: gitlabdb)
  • gitlab_dbuser: Gitlab database user (default: gitlabu)
  • gitlab_dbpwd: Gitlab database password (default: changeme)
  • gitlab_dbhost: Gitlab database host (default: localhost)
  • gitlab_dbport: Gitlab database port (default: 3306)
  • gitlab_domain: Gitlab domain (default $fqdn)
  • gitlab_repodir: Gitlab repository directory (default: $git_home)
  • gitlab_ssl: Enable SSL for GitLab (default: false)
  • gitlab_ssl_cert: SSL Certificate location (default: /etc/ssl/certs/ssl-cert-snakeoil.pem)
  • gitlab_ssl_key: SSL Key location (default: /etc/ssl/private/ssl-cert-snakeoil.key)
  • gitlab_ssl_self_signed: Set true if your SSL Cert is self signed (default: false)
  • gitlab_projects: GitLab default number of projects for new users (default: 10)
  • gitlab_username_change: Manage username changing in GitLab (default: true)
  • ldap_enabled: Enable LDAP backend for gitlab web (see bellow) (default: false)
  • ldap_host: FQDN of LDAP server (default: ldap.domain.com)
  • ldap_base: LDAP base dn (default: dc=domain,dc=com)
  • ldap_uid: Uid for LDAP auth (default: uid)
  • ldap_port: LDAP port (default: 636)
  • ldap_method: Method to use (default: ssl)
  • ldap_bind_dn: User for LDAP bind auth (default: nil)
  • ldap_bind_password: Password for LDN bind auth (default: nil)

Dependencies

See gitlab example.

GitLab web interface

  1. Add an ssh key to your account, or create another account
  2. Create a project
  3. Play !

Contribute

Want to help - send a pull request.

Development environment with vagrant

See vagrant-gitlab.

About

Puppet module for manage GitLab installation

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Puppet 81.4%
  • Ruby 18.6%