GithubHelp home page GithubHelp logo

pieterlexis / puppet-gitlab Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sbadia/puppet-gitlab

0.0 2.0 0.0 2.06 MB

Puppet module for manage GitLab installation

Home Page: http://forge.puppetlabs.com/sbadia/gitlab

License: GNU General Public License v3.0

puppet-gitlab's Introduction

Puppet-gitlab Build Status

Tested successfully with Gitlab 6-7-stable on Ubuntu 12.04 and Debian Wheezy (7.2) with Puppet 3.2 or newer.

Table of contents

  1. Overview
  2. Module description
  3. Parameters
  4. Usage
  5. Limitation
  6. Development

Overview

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.

Module description

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

Dependencies

GitLab web interface

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

Parameters

  • ensure: Ensure gitlab/gitlab-shell repo are present, latest. absent is not yet supported (default: present)
  • 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-7-stable)
  • gitlabshell_sources: Gitlab-shell sources (default: git://github.com/gitlabhq/gitlab-shell.git)
  • gitlabshell_branch: Gitlab-shell branch (default: v1.9.1)
  • gitlab_http_port: Port that NGINX listens on for HTTP traffic (default: 80)
  • gitlab_ssl_port: Port that NGINX listens on for HTTPS traffic (default: 443)
  • gitlab_http_timeout: HTTP timeout in seconds (unicorn/nginx) (default: 60)
  • gitlab_redishost: Redis host used for Sidekiq (default: localhost)
  • gitlab_redisport: Redis host used for Sidekiq (default: 6379)
  • gitlab_dbtype: Gitlab database type (default: mysql)
  • gitlab_dbname: Gitlab database name (default: gitlab_db)
  • gitlab_dbuser: Gitlab database user (default: gitlab_user)
  • 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_backup: Whether to enable automatic backups (default: false)
  • gitlab_backup_path: Path where Gitlab's backup rake task puts its files (default: tmp/backups)
  • gitlab_backup_keep_time: Retention time of Gitlab's backups (in seconds) (default: 0 == forever)
  • gitlab_backup_time: Time (hour) when the Gitlab backup task is run from cron (default: fqdn_rand(5)+1)
  • gitlab_backup_postscript: Path to one or more shell scripts to be executed after the backup (default: false)
  • gitlab_relative_url_root: Run GitLab in a non-root path (default: false, dont't forget the first slash)
  • 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)
  • gitlab_unicorn_port: Port that unicorn listens on 172.0.0.1 for HTTP traffic (default: 8080)
  • gitlab_unicorn_worker: Number of unicorn workers (default: 2)
  • gitlab_bundler_flags: Flags to be passed to bundler when installing gems (default: --deployment)
  • exec_path: PATH of executtion (default: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin)
  • 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_user_filter: RFC 4515 style filter for the user (default: '')
  • 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)
  • git_package_name: Package name for git (default: git-core)
  • git_proxy: Proxy for GIT access (default: undef)
  • ssh_port: Port accepting SSH connections (default: 22)
  • google_analytics_id: Google Analytics tracking ID (default: nil)

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

Limitations

  • TBF

Development

Want to help - send a pull request.

Development environment with vagrant

See vagrant-gitlab.

puppet-gitlab's People

Contributors

sbadia avatar atomaka avatar sroegner avatar kleinmann avatar igalic avatar elementalvoid avatar atosatto avatar ianunruh avatar robbyt avatar zipkid avatar fpletz avatar spuder avatar achaphiv avatar vekexasia avatar greg0ire avatar jrmoserbaltimore avatar kalmanolah avatar lboynton avatar lorn avatar minitux avatar vinodc avatar svengerlach avatar

Watchers

Pieter Lexis avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.