Code Monkey home page Code Monkey logo

cookbook-gitlab-deprecated's Introduction

Gitlab Cookbook

Build Status

This cookbook will deploy gitlab; a free project and repository management application.

Gitlab code is hosted here.

Important changes

Going forward, the cookbook major version (i.e. 6.1.x) will target the matching stable branch (i.e. 6-1-stable) of the Gitlab application. The 6.1.x release is not backwards compatible with previous versions targeting Gitlab master.

For the 7.7.x release of the cookbook, the default Ruby will be 2.1.2 compiled with ruby_build. Using a compiled Ruby follows the Gitlab installation guidelines upstream. If you have a better approach which reduced complexity or reduces converge time, please open a pull request on Github.

The application home is located in /srv/git/gitlab in accordance with the Filesystem Hierarchy Standard (FHS) version 2.3.

Requirements

============

  • Hard disk space

    • About 600 Mb, plus enough space for repositories in application home
  • You need to add mysql::server or postgresql::server to your run_list if you intend to run the whole application stack on a single instance. The gitlab::mysql and gitlab::postgresql recipes set up the RDBMS connection only, to allow for multi-instance architecture. See Database Attributes documentation below for RDBMS connection parameters.

Cookbook dependencies

============

Attributes

  • gitlab['user'] & gitlab['group']

    • Gitlab service user and group for Unicorn Rails app, default git
  • gitlab['home']

    • Gitlab top-level home for service account, default /srv/git
  • gitlab['app_home']

    • Gitlab application home, default /srv/git/gitlab
  • gitlab['email_from']

    • Gitlab email from, default gitlab@ + node.fqdn
  • gitlab['git_url']

  • gitlab['git_branch']

    • Defaults to stable GitlabHQ branch matching the major version of this cookbook. e.g. 6.1.x => 6-1-stable
  • gitlab['packages']

    • Platform specific OS packages
  • gitlab['trust_local_sshkeys']

    • ssh_config key for gitlab to trust localhost keys automatically, default yes
  • gitlab['install_ruby']

    • Attribute to determine whether vendor packages are installed, or Rubies are built, defaults 2.1.2 for Debian and RHEL family platforms.
    • If you choose to use a vendor provided package, you will need to use a role to override the gitlab['packages'] array.
  • gitlab['https']

    • Whether https should be used. Default false
  • gitlab['self_signed_cert']

    • Allows self-signed certificates over https protocol. Default false
  • gitlab['certificate_databag_id']

    • Encrypted databag name containing certificate file, CA bundle, and key. Default nil
    • See certificate cookbook for further information.
  • gitlab['backup_path']

    • Path in file system where backups are stored. Default gitlab['app_home'] + backups/
  • gitlab['backup_keep_time']

    • Units are seconds. Older backups will automatically be deleted when new backup is created. Set to 0 to keep backups forever.
    • Defaults to 604800
  • gitlab['listen_ip']

    • IP address that nginx will listen on, default * (listen on all IPs)
  • gitlab['listen_port']

    • Port that nginx will listen on, default to 80 if gitlab['https'] is set to false, 443 if set to true
  • gitlab['web_fqdn']

    • An overridable service name, used in gitlab and unicorn configuration files. Useful if hostname -f is not the same as the customer facing hostname. Default is unset. Effective default is node['fqdn']
  • gitlab['nginx_server_names']

    • An array with nginx server_name matches. Helpful to override default test site pages shipping with some nginx packages. Default [ 'gitlab.*', node['fqdn'] ]. See nginx server_name documentation for valid matching patterns.
  • gitlab['unicorn']['timeout']

    • Timeout in seconds to Unicorn
    • Default: 60
  • gitlab['shell']['gitlab_host']

    • Custom hostname for Gitlab Shell
    • Default: nil (To be overwritten by gitalb['web_fqdn'] or node['fqdn'])

User privileges

Note, This attributes are useful when you want only admins to create projects and groups. And to restrict username changing.

  • gitlab['default_can_create_group']

    • When you create a user this value is their can_create_group profile setting.
    • Default, true.
  • gitlab['username_changing_enabled']

    • Disable/enable users changing their username.
    • Default, true.

Database Attributes

Note, most of the database attributes have sane defaults. You will only need to change these configuration options if you're using a non-standard installation. Please see attributes/default.rb for more information on how a dynamic attribute is calculated.

  • gitlab['database']['type']

    • The database (datastore) to use.
    • Options: "mysql", "postgres"
    • Default "mysql"
  • gitlab['database']['adapter']

    • The Rails adapter to use with the database type
    • Options: "mysql", "postgresql"
    • Default (varies based on type)
  • gitlab['database']['socket']

    • The socket to use for connection
    • Default /var/run/mysqld/mysqld.sock
  • gitlab['database']['encoding']

    • The database encoding
    • Default (varies based on type)
  • gitlab['database']['host']

    • The host (fqdn) where the database exists
    • Default 127.0.0.1
  • gitlab['database']['userhost']

    • The host (fqdn) from which the database user may connect.
    • Default 127.0.0.1
  • gitlab['database']['pool']

    • The maximum number of connections to allow
    • Default 5
  • gitlab['database']['database']

    • The name of the database
    • Default gitlab
  • gitlab['database']['username']

    • The username for the database
    • Default gitlab

LDAP Authentication Attributes

  • gitlab'['ldap']['enabled']

    • Use LDAP for authentication
    • Default: false
  • gitlab['ldap']['host']

    • Hostname of your LDAP server
    • Default: "_your_ldap_server"
  • gitlab['ldap']['base']

    • Base DN for users (e.g. dc=users,dc=example,dc=com)
    • Default: "_the_base_where_you_search_for_users"
  • gitlab['ldap']['port']

    • LDAP server port
    • Default: 636
  • gitlab['ldap']['uid']

    • User ID used when searching for users (e.g. uid, cn, or sAMAccountName)
    • Default: "sAMAccountName"
  • gitlab['ldap']['method']

    • Connection method used with LDAP server
    • Options: "ssl", "plain"
    • Default: "ssl"
  • gitlab['ldap']['bind_dn']

    • Some servers require a username in order to bind.
    • Leave default if your server supports anonymous bind.
    • Default: "_the_full_dn_of_the_user_you_will_bind_with"
  • gitlab['ldap']['password']

    • Some servers require a password in order to bind
    • Leave default if your server supports anonymous bind.
    • Default: "_the_password_of_the_bind_user"
  • gitlab['ldap']['allow_username_or_email_login']

    • If you want to allow users to login using both username and email address even though username (uid) will actually be used
    • Default: true
  • gitlab['ldap']['user_filter']

    • You can provide a query string here to filter which users will be selected
    • Default: ""

Recipes

default

This installs and starts GitLab with nginx and your chosen database.

mysql, postgres

These are internal, set gitlab['database']['type'] instead.

Usage

Optionally override application paths using gitlab['git_home'] and gitlab['home'].

Add recipe gitlab::default to run_list. Go grab a lunch, or two, if Ruby has to build.

The default admin credentials for the gitlab application are as follows:

User: [email protected]
Password: 5iveL!fe

Of course you should change these first thing, once deployed.

Role example for Gitlab with https, and MySQL

name "gitlab_https"
description "Configures and installs gitlab w/ https, and mysql server"
override_attributes "gitlab" => {
  "https" => true,
  "certificate_databag_id" => "wildcard"
}
run_list "recipe[gitlab]"

Upgrade

As of now it's not supported in the cookbook out of the box, however following steps document this process.

Upgrade from chef cookbook higher version

To upgrade Gitlab version make sure you:

  • upload new gitlab cookbook to chef server
  • override node attributes (example for Gitlab 8.x):
    override['gitlab']['git_branch']                             = '8-0-stable'
    override['gitlab']['shell']['git_branch']                    = 'v2.6.5'
    override['languages']['ruby']['default_version']             = '2.1.6'
    
  • Follow appropriate steps on official gitlab docs: http://doc.gitlab.com/ce/update/7.14-to-8.0.html

You may skip merging all configuration files, init.d scripts etc.

In general this procedure consist of following steps:

sudo service gitlab stop
sudo su - git
cd /srv/git/gitlab
# bundle install
bundle exec rake gitlab:backup:create RAILS_ENV=production
git fetch --all
git checkout -- db/schema.rb # local changes will be restored automatically
git checkout 8-0-stable
cd /srv/git/gitlab-shell
git fetch
git checkout v2.6.5
# for 8x somewhere here should gitlab cookbook generate new configuration files
# MySQL installations
bundle install --without postgres development test --deployment
# PostgreSQL installations
bundle install --without mysql development test --deployment
bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake assets:clean assets:precompile cache:clear RAILS_ENV=production
sudo service gitlab start
sudo service nginx restart

NOTE: Don't forget to make trusted backups first!

License and Author

Author: Gerald L. Hevener Jr., M.S. Copyright: 2012

Author: Eric G. Wolfe Copyright: 2012

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

cookbook-gitlab-deprecated's People

Contributors

8la avatar atomic-penguin avatar austinche avatar chewi avatar computerlyrik avatar david-gil avatar dennisvink avatar epcim avatar fnichol avatar franznemeth avatar jackl0phty avatar jeremyolliver avatar jmaziarz avatar joelhandwell avatar kimtore avatar kouno avatar laradji avatar lemieux avatar michaelkueller avatar mtpereira avatar nickryand avatar pmichalec avatar sethvargo avatar sorccu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cookbook-gitlab-deprecated's Issues

Problem while rendering template for gitolite user

Hi,

Still investigating but while running the cookbook (using default attributes), I get an error about an invalid gitlab.pub content which is rendered as empty since the :public_key variable is not set for the erb termplate.

STDOUT:
STDERR: FATAL: errors found before logfile could be created
FATAL: die '/var/git/gitlab.pub' must have exactly one line
---- End output of su - git -c 'perl /var/git/gitolite/src/gitolite setup -pk /var/git/gitlab.pub' ----
Ran su - git -c 'perl /var/git/gitolite/src/gitolite setup -pk /var/git/gitlab.pub' returned 1

So I've added the following to the gitlab.pub template task within the recipe.

variables(
  :public_key => node['gitlab']['public_key']
)

but while it now renders correctly, I might have miss something since I get a problem down the road while performing gitolite setup, which oddly prompt for a password.

Administrator account created:

[email protected]
password......5iveL!fe
git@localhost's password: 

While the installation seems to complete successfully (needs to be run twice), I always get the following error while creating a new project from the interface

GitLab was unable to access your Gitolite system.

which might occurs because of previous permission/pubkeys error.

Thoughts?

CentOS 6.3 64 bit

In Centos 6.3 64bit the package perl-Time-HiRes is necessary for a successful run of the gitlab::default recipe.

My workaround (before execution of gitlab recipe):

package "perl-Time-HiRes" do
action :install
end

Redisio cookbook version

Can you please lock down the version of the redisio cookbook required. Using redisio 1.7.1 it fails. I'm guessing it needs anything better than 2.0

ruby version in ubuntu

There's a bug if I had install ruby 1.8 package in ubuntu, though the script will install ruby 1.9, it will use 1.8 as default and fail. I think it must switch ruby version before continue.

Why I install ruby 1.8? Because it will be installed by chef apt installation.

I fix it temporarily by using chef gem version with ruby 1.9 package, or specifying ruby version with gitlab['install_ruby'] attribute.

EPERM Operation not permitted

Hi,
I have the following error while trying to run "vagrant up" -

[2013-02-26T18:15:55+00:00] INFO: Processing directory[/vagrant/gitlabhq/tmp/repositories] action create (gitlab::vagrant line 125)
[2013-02-26T18:15:55+00:00] INFO: directory[/vagrant/gitlabhq/tmp/repositories] created directory /vagrant/gitlabhq/tmp/repositories
[2013-02-26T18:15:55+00:00] INFO: directory[/vagrant/gitlabhq/tmp/repositories] owner changed to 0

Error executing action create on resource 'directory[/vagrant/gitlabhq/tmp/repositories]'

Errno::EPERM

Operation not permitted - /vagrant/gitlabhq/tmp/repositories

Resource Declaration:

In /tmp/vagrant-chef-1/chef-solo-2/cookbooks/gitlab/recipes/vagrant.rb

124: # share on the virtual machine to the vagrant user.
125: directory "#{node['gitlab']['app_home']}/tmp/repositories" do
126: owner node['gitlab']['host_user_id']
127: group node['gitlab']['host_group_id']
128: mode "0755"
129: recursive true
130: action :create
131: end
132:

Compiled Resource:

Declared in /tmp/vagrant-chef-1/chef-solo-2/cookbooks/gitlab/recipes/vagrant.rb:125:in `from_file'

directory("/vagrant/gitlabhq/tmp/repositories") do
mode "0755"
owner 0
retry_delay 2
path "/vagrant/gitlabhq/tmp/repositories"
retries 0
recipe_name "vagrant"
action [:create]
cookbook_name :gitlab
recursive true
group 0
provider Chef::Provider::Directory
end

[2013-02-26T18:15:55+00:00] ERROR: Running exception handlers
[2013-02-26T18:15:55+00:00] ERROR: Exception handlers complete
[2013-02-26T18:15:55+00:00] FATAL: Stacktrace dumped to /tmp/vagrant-chef-1/chef-stacktrace.out
[2013-02-26T18:15:55+00:00] FATAL: Errno::EPERM: > directory[/vagrant/gitlabhq/tmp/repositories] >(gitlab::vagrant line 125) had an error: Errno::EPERM: Operation not permitted - >/vagrant/gitlabhq/tmp/repositories

I followed the installation instruction from -
https://github.com/gitlabhq/gitlab-vagrant-vm/

First run of gitlab cookbook fails with git error.

I'm overriding the git config file to redirect git protocol requests to use https as this protocol is disabled on our machines.

Error i'm seeing is "STDERR: error: You have local changes to 'doc/workflow/importing/README.md'; cannot switch branches."

Running the cookbook a second time succeeds though.

failed bundle command

it seems that even though we installed ruby 1.9.2 as part of the recipe, it is not being used as default when bundle is run. Bundler is still using 1.8 version on the system which give you a syntax error for the Gemfile

Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/gitlab/recipes/default.rb:241:in `from_file'

execute("gitlab-bundle-rake") do
  cwd "/var/gitlab/gitlab"
  retry_delay 2
  cookbook_name "gitlab"
  backup 5
  command " bundle exec rake gitlab:app:setup RAILS_ENV=production"
  retries 0
  user "gitlab"
  group "gitlab"
  recipe_name "default"
  action "run"
  returns 0
  not_if { #code block }
end

[2012-11-18T03:59:53-05:00] ERROR: Running exception handlers
[2012-11-18T03:59:53-05:00] FATAL: Saving node information to /var/chef/cache/failed-run-data.json
[2012-11-18T03:59:53-05:00] ERROR: Exception handlers complete
[2012-11-18T03:59:53-05:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2012-11-18T03:59:53-05:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: execute[gitlab-bundle-rake] (gitlab::default line 241) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '4'
---- Begin output of   bundle exec rake gitlab:app:setup RAILS_ENV=production ----
STDOUT: Gemfile syntax error:
/var/gitlab/gitlab/Gemfile:67: syntax error, unexpected ':', expecting $end
gem "github-markup", "~> 0.7.4", require: 'github/markup'
                                         ^
STDERR:

gitolite-install failed

I am getting an error when trying to install gitolite via chef-solo.

Machine setup

Base CentOS 6.3 x86_64 + Chef 10.14.2 + VirtualBox 4.1.22 (with guest additions) from http://www.vagrantbox.es/

Cookbooks are download by librarian-chef via following Cheffile
https://gist.github.com/4100362

#Chef-solo log
Compiled Resource:
------------------
# Declared in /root/chef-repo/cookbooks/gitlab/recipes/gitolite.rb:64:in `from_file'

execute("gitolite-install") do
  backup 5
  retries 0
  command "/var/git/gitolite/install -ln /var/git/bin"
  cwd "/var/git"
  recipe_name "gitolite"
  returns 0
  action "run"
  cookbook_name :gitlab
  user "git"
  creates "/var/git/bin/gitolite"
  retry_delay 2
end

[2012-11-17T22:01:40+01:00] ERROR: Running exception handlers
[2012-11-17T22:01:40+01:00] ERROR: Exception handlers complete
[2012-11-17T22:01:40+01:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2012-11-17T22:01:40+01:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: execute[gitolite-install] (gitlab::gitolite line 64) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '2'
---- Begin output of /var/git/gitolite/install -ln /var/git/bin ----
STDOUT:
STDERR: Can't locate Time/HiRes.pm in @INC (@INC contains: /var/git/gitolite/src/lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /var/git/gitolite/src/lib/Gitolite/Common.pm line 76.
BEGIN failed--compilation aborted at /var/git/gitolite/src/lib/Gitolite/Common.pm line 76.
Compilation failed in require at /var/git/gitolite/install line 15.
BEGIN failed--compilation aborted at /var/git/gitolite/install line 15.
---- End output of /var/git/gitolite/install -ln /var/git/bin ----
Ran /var/git/gitolite/install -ln /var/git/bin returned 2

Provision fails at execute[gitlab-bundle-rake]: Could not find pg-0.14.0

My provision run of the gitlab recipe fails. I'll look in to this issue myself, but since Google didn't turn anything up, I wanted to start some proverbial paper-trail.

Install is on an clean Ubuntu 12.04. Full output of the error:

[2012-11-06T14:38:30+04:00] INFO: Processing execute[gitlab-bundle-rake] action run (gitlab::default line 219)

================================================================================
Error executing action `run` on resource 'execute[gitlab-bundle-rake]'
================================================================================

Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of bundle exec rake gitlab:app:setup RAILS_ENV=production ----
STDOUT: 
STDERR: /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/spec_set.rb:90:in `block in materialize': Could not find pg-0.14.0 in any of the sources (Bundler::GemNotFound)
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/spec_set.rb:83:in `map!'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/spec_set.rb:83:in `materialize'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/definition.rb:113:in `specs'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/definition.rb:158:in `specs_for'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/definition.rb:147:in `requested_specs'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/environment.rb:23:in `requested_specs'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:11:in `setup'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler.rb:116:in `setup'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/setup.rb:17:in `<top (required)>'
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
---- End output of bundle exec rake gitlab:app:setup RAILS_ENV=production ----
Ran bundle exec rake gitlab:app:setup RAILS_ENV=production returned 1

Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/gitlab/recipes/default.rb

219: execute "gitlab-bundle-rake" do
220:   command "bundle exec rake gitlab:app:setup RAILS_ENV=production"
221:   cwd node['gitlab']['app_home']
222:   user node['gitlab']['user'] 
223:   group node['gitlab']['group']
224:   not_if { File.exists?("#{node['gitlab']['app_home']}/db/production.sqlite3") }
225: end
226: 

Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/gitlab/recipes/default.rb:219:in `from_file'

execute("gitlab-bundle-rake") do
  action "run"
  retries 0
  retry_delay 2
  command "bundle exec rake gitlab:app:setup RAILS_ENV=production"
  backup 5
  cwd "/var/gitlab/gitlab"
  group "gitlab"
  returns 0
  user "gitlab"
  cookbook_name "gitlab"
  recipe_name "default"
  not_if { #code block }
end

[2012-11-06T14:38:32+04:00] ERROR: Running exception handlers
[2012-11-06T14:38:32+04:00] FATAL: Saving node information to /var/chef/cache/failed-run-data.json
[2012-11-06T14:38:32+04:00] ERROR: Exception handlers complete
[2012-11-06T14:38:32+04:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2012-11-06T14:38:32+04:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: execute[gitlab-bundle-rake] (gitlab::default line 219) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of bundle exec rake gitlab:app:setup RAILS_ENV=production ----
STDOUT: 
STDERR: /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/spec_set.rb:90:in `block in materialize': Could not find pg-0.14.0 in any of the sources (Bundler::GemNotFound)
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/spec_set.rb:83:in `map!'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/spec_set.rb:83:in `materialize'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/definition.rb:113:in `specs'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/definition.rb:158:in `specs_for'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/definition.rb:147:in `requested_specs'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/environment.rb:23:in `requested_specs'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:11:in `setup'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler.rb:116:in `setup'
    from /var/lib/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/setup.rb:17:in `<top (required)>'
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
---- End output of bundle exec rake gitlab:app:setup RAILS_ENV=production ----
Ran bundle exec rake gitlab:app:setup RAILS_ENV=production returned 1

Add ldap user_filter support

Please add support for setting the user_filter ldap setting in the gitlab.yml config file, such that i can specify:
node.default['gitlab']['ldap']['user_filter'] = '(memberOf=cn=group1,dc=subdom,dc=example,dc=com)'

Dependency for mysql cookbook at version 4.1.2

Mysql cookbook >= 5.0.0 does not have ruby recipe. Set cookbook dependency to mysql <=4.1.2 or upgrade to be compliant with 5.0.0 release.

See:
include_recipe 'mysql::ruby' in mysql.rb

gitlab service failed to start in RHEL6

I use RHEL6, my /etc/sudoers is set with default value:

Defaults requiretty

When I redirect the console output to a log file and run chef-client in cloud-init to install gitlab (cookbook version 6.4.6), it fails to start gitlab service at the last step:

Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of /sbin/service gitlab start ----
STDOUT: 
STDERR: sudo: sorry, you must have a tty to run sudo
---- End output of /sbin/service gitlab start ----
Ran /sbin/service gitlab start returned 1

After google, I found a page reported similar issue at https://github.com/WASdev/ci.chef.wlp/issues/9%E2%80%8E

Hence I change the template file gitlab.init.erb from

# Switch to the app_user if it is not he/she who is running the script.
if [ "$USER" != "$app_user" ]; then
  sudo -u "$app_user" -H -i $0 "$@"; exit;
fi

to

# Switch to the app_user if it is not he/she who is running the script.
if [ "$USER" != "$app_user" ]; then
  exec su - "$app_user" -- $0 "$@"; exit;
fi

it seems to slove my problem.

mysql++-devel package not found

Which repository is mysql++ from? Doesn't seem to be in the default repos on CentOS 6.3:

================================================================================
Error executing action `install` on resource 'package[mysql++-devel]'
================================================================================

Chef::Exceptions::Package
-------------------------
No version specified, and no candidate version available for mysql++-devel

Resource Declaration:
---------------------
# In /tmp/chef-solo/cookbooks/gitlab/recipes/default.rb

 55:   package pkg
 56: end

Compiled Resource:
------------------
# Declared in /tmp/chef-solo/cookbooks/gitlab/recipes/default.rb:55:in `block in from_file'

package("mysql++-devel") do
  action :install
  retries 0
  retry_delay 2
  package_name "mysql++-devel"
  cookbook_name :gitlab
  recipe_name "default"
end

sqlite support removed form gitlab

The default cookbook install uses sqlite, but this support was removed in gitlab 4.0, so a default install fails when it attempts to link the sample database.sqlite file to database.yml.

Could not find rake-10.1.0 in any of the sources (Bundler::GemNotFound)

Using this cookbook with on Vagrant with the following box:

config.vm.box_url = "https://dl.dropbox.com/u/31081437/Berkshelf-CentOS-6.3-x86_64-minimal.box"

It crashes with the error: Could not find rake-10.1.0 in any of the sources (Bundler::GemNotFound), when running the resource execute 'gitlab-bundle-precompile-assets'. Please find the full stacktrace below.

I think the problem is that the resource execute 'gitlab-bundle-install' should be the very first thing after cloning the gitlab repo, before execute 'gitlab-bundle-precompile-assets'. I wonder in your case works because the boxes you use for testing already include rake and the required dependencies.

So far I workaround the problem using a wrapper-cookbook that subscribes the bundle install to the git clone:

include_recipe "mysql::server"
include_recipe "gitlab::default"
resources("execute[gitlab-bundle-install]").subscribes :run, "git[#{node['gitlab']['app_home']}]", :immediately

Stacktrace output:

================================================================================
Error executing action `run` on resource 'execute[gitlab-bundle-precompile-assets]'
================================================================================

Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of bundle exec rake assets:precompile RAILS_ENV=production ----
STDOUT: 
STDERR: /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/spec_set.rb:90:in `block in materialize': Could not find rake-10.1.0 in any of the sources (Bundler::GemNotFound)
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/spec_set.rb:83:in `map!'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/spec_set.rb:83:in `materialize'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/definition.rb:127:in `specs'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/definition.rb:172:in `specs_for'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/definition.rb:161:in `requested_specs'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/environment.rb:23:in `requested_specs'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/runtime.rb:11:in `setup'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler.rb:107:in `setup'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/setup.rb:17:in `<top (required)>'
    from /opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
---- End output of bundle exec rake assets:precompile RAILS_ENV=production ----
Ran bundle exec rake assets:precompile RAILS_ENV=production returned 1

Resource Declaration:
---------------------
# In /tmp/vagrant-chef-1/chef-solo-1/cookbooks/gitlab/recipes/default.rb

208: # Precompile assets
209: execute 'gitlab-bundle-precompile-assets' do
210:   command 'bundle exec rake assets:precompile RAILS_ENV=production'
211:   cwd node['gitlab']['app_home']
212:   user node['gitlab']['user']
213:   group node['gitlab']['group']
214:   environment('LANG' => 'en_US.UTF-8', 'LC_ALL' => 'en_US.UTF-8')
215:   only_if { Dir["#{node['gitlab']['app_home']}/public/assets/*"].empty? }
216: end
217: 

Compiled Resource:
------------------
# Declared in /tmp/vagrant-chef-1/chef-solo-1/cookbooks/gitlab/recipes/default.rb:209:in `from_file'

execute("gitlab-bundle-precompile-assets") do
  action "run"
  retries 0
  retry_delay 2
  command "bundle exec rake assets:precompile RAILS_ENV=production"
  backup 5
  cwd "/srv/git/gitlab"
  environment {"LANG"=>"en_US.UTF-8", "LC_ALL"=>"en_US.UTF-8"}
  group "git"
  returns 0
  user "git"
  cookbook_name :gitlab
  recipe_name "default"
  only_if { #code block }
end

[2014-02-07T14:14:18+00:00] ERROR: Running exception handlers
[2014-02-07T14:14:18+00:00] ERROR: Exception handlers complete
[2014-02-07T14:14:18+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2014-02-07T14:14:18+00:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: execute[gitlab-bundle-precompile-assets] (gitlab::default line 209) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of bundle exec rake assets:precompile RAILS_ENV=production ----
STDOUT: 
STDERR: /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/spec_set.rb:90:in `block in materialize': Could not find rake-10.1.0 in any of the sources (Bundler::GemNotFound)
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/spec_set.rb:83:in `map!'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/spec_set.rb:83:in `materialize'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/definition.rb:127:in `specs'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/definition.rb:172:in `specs_for'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/definition.rb:161:in `requested_specs'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/environment.rb:23:in `requested_specs'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/runtime.rb:11:in `setup'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler.rb:107:in `setup'
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/bundler-1.1.5/lib/bundler/setup.rb:17:in `<top (required)>'
    from /opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /opt/chef/embedded/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
---- End output of bundle exec rake assets:precompile RAILS_ENV=production ----
Ran bundle exec rake assets:precompile RAILS_ENV=production returned 1
Chef never successfully completed! Any errors should be visible in the
output above. Please fix your recipes so that they properly complete.

Port forwarding not working on virtualbox

The ports are not completely forwarded. Only the last defined one in .kitchen.yml (443 => ) is visible in virtualbox graphic client.

Any ideas if there is a new syntax in driver configuration on kitchen-vagrant?

Failed to install pygments

I have run a pip install pygments and it pass manually.

[2013-01-24T15:56:00+01:00] FATAL: Saving node information to /var/chef/cache/failed-run-data.json
chef client failed. 107 resources updated
[2013-01-24T15:56:00+01:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2013-01-24T15:56:00+01:00] FATAL: Mixlib::ShellOut::ShellCommandFailed: python_pip[pygments](gitlab::default line 76) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of pip freeze | grep -i '^pygments==' ----
STDOUT:
STDERR:
---- End output of pip freeze | grep -i '^pygments==' ----
Ran pip freeze | grep -i '^pygments==' returned 1

Use the Chef deploy resource

The Chef deploy resource is inspired by Capistrano and would allow us to continually upgrade by just performing another Chef run. It would take care of running bundle install, rake assets:precompile, and rake db:migrate. This approach is successfully used by the Errbit cookbook. Please see my fork for the best example.

execute[update-alternatives-ruby] on AWS Ami Linux default

STDERR: the primary link for ruby must be /usr/bin/ruby
aws_instance.gitlab (chef): ---- End output of update-alternatives --install /usr/local/bin/ruby ruby /srv/git/bin/ruby 10 ----
aws_instance.gitlab (chef): Ran update-alternatives --install /usr/local/bin/ruby ruby /srv/git/bin/ruby 10 returned 2
aws_instance.gitlab (chef): Resource Declaration:
aws_instance.gitlab (chef): ---------------------
aws_instance.gitlab (chef): # In /var/chef/cache/cookbooks/gitlab/recipes/default.rb
aws_instance.gitlab (chef):
aws_instance.gitlab (chef): 107: execute 'update-alternatives-ruby' do
aws_instance.gitlab (chef): 108: command "update-alternatives --install /usr/local/bin/ruby ruby #{node['gitlab']['install_ruby_path']}/bin/ruby 10"
aws_instance.gitlab (chef): 109: not_if { ::File.exist?('/usr/local/bin/ruby') }
aws_instance.gitlab (chef): 110: end
aws_instance.gitlab (chef): 111:
aws_instance.gitlab (chef):
aws_instance.gitlab (chef): Compiled Resource:
aws_instance.gitlab (chef): ------------------
aws_instance.gitlab (chef): # Declared in /var/chef/cache/cookbooks/gitlab/recipes/default.rb:107:in `from_file'
aws_instance.gitlab (chef):
aws_instance.gitlab (chef): execute("update-alternatives-ruby") do
aws_instance.gitlab (chef): action [:run]
aws_instance.gitlab (chef): retries 0
aws_instance.gitlab (chef): retry_delay 2
aws_instance.gitlab (chef): default_guard_interpreter :execute
aws_instance.gitlab (chef): command "update-alternatives --install /usr/local/bin/ruby ruby /srv/git/bin/ruby 10"
aws_instance.gitlab (chef): backup 5
aws_instance.gitlab (chef): returns 0
aws_instance.gitlab (chef): declared_type :execute
aws_instance.gitlab (chef): cookbook_name "gitlab"
aws_instance.gitlab (chef): recipe_name "default"
aws_instance.gitlab (chef): not_if { #code block }
aws_instance.gitlab (chef): end
aws_instance.gitlab (chef):

server_names_hash

I am wondering how can I increase the server_names_hash_bucket_size I do not see any attribute to change the bucket_size.

nginx: [emerg] could not build the server_names_hash, you should increase server_names_hash_bucket_size: 64

unable to make minor changes in cookbook

If I make any change to any file in the cookbook the cookbook will fail. is this done on purpose? I need to add something to the .gitconfig template but this is preventing me from adding anything. Is there a way around this?

How to Talk to a Frontier Representative

Frontier Airlines is a low-cost airline that offers flights to destinations throughout the United States, Canada, and Mexico. If you have a question or issue with your flight, you can contact Frontier Airlines en Español at +1-860-364-8556 customer service.

How to Contact Frontier

Frontier no longer has a customer service phone line. You can contact Frontier through the following channels:

  • Live chat: You can chat with a Frontier representative 24/7 on their website.
  • Social media: You can contact Frontier on Twitter, Facebook, or Instagram.
  • WhatsApp: You can message Frontier on WhatsApp.
  • Email: You can send an email to Frontier customer service.

Tips for Talking to a Frontier Representative

Here are some tips for talking to a Frontier representative:

  • Be prepared: Before you contact Frontier, gather all of the information you need, such as your flight number, reservation number, and the nature of your issue.
  • Be clear and concise: When you explain your issue, be clear and concise. The representative will be able to help you more quickly if you can explain your issue clearly and concisely.
  • Be patient: It may take some time to get in touch with a representative, so be patient.

Here are some additional tips:

  • Use the Frontier website or app to start a chat. This is the quickest way to get in touch with a representative.
  • If you are contacting Frontier on social media, use the hashtag #AskFrontier. This will help ensure that a representative sees your message.
  • If you are emailing Frontier, be sure to include your name, contact information, and flight information in the subject line. This will help the representative quickly identify your issue and respond to you.

db mysql2 database is ootb created with default latin1 character set

everything except character set is se to be utf8 or unicode (on postgre). However database for a gitlab is being created as latin1. This explicitely rule-out the other encodings, however rest of the mysql deployment is configured to use utf8.

Anybody know how to specify a database character encoding during gitlab deploy?

mysql> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |

SSH environment ruby fails gitlab-shell

Hi, gitlab-shell binary have the header: #!/usr/bin/env ruby

#!/usr/bin/env ruby

unless ENV['SSH_CONNECTION']
  puts "Only ssh allowed"
  exit
end

require_relative '../lib/gitlab_init'

#
#
# GitLab shell, invoked from ~/.ssh/authorized_keys
#
#
require File.join(ROOT_PATH, 'lib', 'gitlab_shell')
GitlabShell.new.exec

exit

But the ruby is installed on git_home/bin so whe you try a clone it will fail:

Cloning into 'your_repo_name'...
/usr/bin/env: ruby: No such file or directory
fatal: Could not read from remote repository.

Anyone can reproduce?

Use rvm

Hello,

I want to install rvm on my server using chef, how can I use this cookbook with the version of ruby from rvm?

Thank you

Isolate GitLab app from infrastructure / daemons provisioning

I propose we make the cookbook into more than one.

There should be one "base" cookbook that would deploy the app without provisioning any dependency deamon/infrastructure.

This is good in many ways as people have different opinions on how to provisioning things, and will make it more reusable.

Some ideas:

  • GitLab-base - install ruby / deploys the app to specified folder, configure database/redis yaml based on attributes
  • GitLab-local - depends on GitLab-base, install redis / postgres or mysql / nginx (all on the same machine)
  • GitLab-HA - depends on GitLab-base, install and provision a HA setup using multiple machines, etc
  • GitLab-AWS - depends on GitLab-base, provision AWS managed services and changes base's attributes to match these values

By refactoring it to this style, we can cleanup cookbook, and people can reuse it with their own infra-structure requirements.

Knife supermaket install stops on deprecated zlib

When installing the gitlab cookbook using 'knife supermarket install gitlab', the install crashes due to an error in a deprecated cookbook, zlib:

user@host:~/chef/repo/cookbooks$ knife supermarket install gitlab
Installing gitlab to /home/user/chef/repo/cookbooks
Checking out the master branch.
Pristine copy branch (chef-vendor-gitlab) exists, switching to it.
Downloading gitlab from Supermarket at version 7.7.1 to /home/user/chef/repo/cookbooks/gitlab.tar.gz
Cookbook saved:
...
Checking out the master branch.
Installing zlib to /home/user/chef/repo/cookbooks
Checking out the master branch.
Pristine copy branch (chef-vendor-zlib) exists, switching to it.
ERROR: TypeError: no implicit conversion of nil into String

Update dependencies

Currently zlib is officially deprecated and other cookbooks with lack of updates listed in the metadata.rb. Probably this should be cleaned up as there's no way to actually use this cookbook right now without doing a workaround.

GitLab service fails to start on Ubuntu 14.04

After the cookbook installs GitLab and all related packages, it fails to start via the provided init.d script on Ubuntu 14.04. The issue is that bundle isn’t in the PATH. The solution is to either extend the PATH variable in the init script (PATH="$PATH:/srv/git/bin") or to create a symbolic link inside a PATH folder to the bundle command:

link "/usr/local/bin/bundle" do
  to "/srv/git/bin/bundle"
end

Using custom listen_port does not work

In templates/default/gitlab.yml.erb

  ## GitLab settings
  gitlab:
    ## Web server settings
    host: <%= @fqdn %>
    port: <%= @port %>
    https: <%= @https_boolean %>

The <%= @port %> is always empty because there is no such variable defined. Instead it should have been <%= node['gitlab']['listen_port'] %>.

Things that breaks due to this includes:

  1. The HTTPS git repository URL generated in the project overview page does not include the port number
  2. Pushing through the git HTTPS URL fails even after adding the port number

/etc/sudores gets changed during install

on ubuntu 12.04 (did not tested others) the /etc/sudores file gets changed while using this cookbook (it's set back to only allow root access to root). This breaks the server pretty much since root access is disabled by default.

WIP - Target 6-1-stable

@JohannesBecker

I have made some changes over the weekend. This converges for me on RHEL6, however the init script does not properly bring up gitlab. I have added a test-kitchen skeleton to the target-6-1-stable branch. Please see if there are any issues pending for Ubuntu 13, which need to be addressed prior to release.

* Add certificate/key for integration testing
* Build 1.9.3-p448 per Gitlab requirements.md
* Add no-ri/no-rdoc options, per installation.md,
  also speeds up convergence.
* Re-order steps per installation.md
* Add autocrlf option to gitconfig, per installation.md
* Update mysql privileges per database.md

TODO:

* Gitlab init not working on RHEL 6
* Update README.md

EDIT: clarification, the init script does not work properly on RHEL6.

default admin e-mail set as [email protected] instead of [email protected]

Hello guys,

Today, I started to test this amazing recipe (that saved me some days of work here). But I want to report a tricky error with the admin default e-mail.

As seen on initial readme, at cookbook homepage, the dev says that the initial admin user is [email protected]. After some time after banging my head, thinking what I did wrong, I ran the following command (logged as git user on terminal)

~/bin/bundle exec rake db:seed_fu RAILS_ENV=production

It returned:

== Seed from /srv/git/gitlab/db/fixtures/production/001_admin.rb
rake aborted!
ActiveRecord::RecordInvalid: Validation failed: Email has already been taken, Email has already been taken, Username has already been taken, Username already exists
(eval):22:in `block (2 levels) in run_file'
Tasks: TOP => db:seed_fu
(See full trace by running task with --trace)

Okay, so see that the user was created successfully. So, I toke a look at /srv/git/gitlab/db/fixtures/production/001_admin.rb

So, due this, I saw the real e-mail, set as [email protected].

admin = User.create(
email: "[email protected]",
(... snip...)

Maybe, I'm wondering that it's just a matter to correct this mistake(type). I'm posting this issue, just to notice the dev, btw.

Att,

Not workin with redisio > 1.7.1

Whe i try to test with kitchen ubuntu 12.04 it doesnt works with redisio > 1.7.1

================================================================================       
Recipe Compile Error in /tmp/kitchen/cookbooks/gitlab/recipes/default.rb       
================================================================================       


NoMethodError       
-------------       
undefined method `each' for nil:NilClass       


Cookbook Trace:       
---------------       
  /tmp/kitchen/cookbooks/redisio/recipes/enable.rb:23:in `from_file'       
  /tmp/kitchen/cookbooks/gitlab/recipes/default.rb:40:in `block in from_file'       
  /tmp/kitchen/cookbooks/gitlab/recipes/default.rb:39:in `each'       
  /tmp/kitchen/cookbooks/gitlab/recipes/default.rb:39:in `from_file'       


Relevant File Content:       
----------------------       
/tmp/kitchen/cookbooks/redisio/recipes/enable.rb:       

 16:  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.       
 17:  # See the License for the specific language governing permissions and       
 18:  # limitations under the License.       
        19:  #
        20:  
        21:  redis = node['redisio']
        22:  
        23>> redis['servers'].each do |current_server|
        24:    server_name = current_server["name"] || current_server["port"]
        25:    resource = resources("service[redis#{server_name}]")
        26:    resource.action Array(resource.action)
        27:    resource.action << :start
        28:    resource.action << :enable
        29:  end
        30:  


       [2014-11-11T13:18:54+00:00] ERROR: Running exception handlers

[2014-11-11T13:18:54+00:00] ERROR: Exception handlers complete       
       [2014-11-11T13:18:54+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out

Chef Client failed. 0 resources updated       
[2014-11-11T13:18:54+00:00] ERROR: undefined method `each' for nil:NilClass       
[2014-11-11T13:18:54+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

Like a charm with redisio 1.7.1

What happens with db password?

On the recipe you use the gitlab.database.password attribute:

# Write the database.yml
template "#{node['gitlab']['app_home']}/config/database.yml" do                                                       
  source 'database.yml.erb'
  owner node['gitlab']['user']
  group node['gitlab']['group']                                                                                       
  mode '0644'                                                                                                         
  variables(
      adapter: node['gitlab']['database']['adapter'],
      encoding: node['gitlab']['database']['encoding'],                                                               
      host: node['gitlab']['database']['host'],
      database: node['gitlab']['database']['database'],                                                               
      pool: node['gitlab']['database']['pool'],
      username: node['gitlab']['database']['username'],                                                               
      password: node['gitlab']['database']['password']                                                                
  )                                                                                                                   
end                                                                                  

But there is no such attribute on defaults.rb, should i need to create database manually and set the password on an encrypted databag and put it on an attribute throug a recipe or what?

First time installing gitlab, so sorry if im asking something onvious

Freeze Gitlab version

I tried to use the following cookbook to provision a Vagrant machine but unfortunately it didn't work. One of the main reasons this happened is because this cookbook sets by default:

node['gitlab']['branch'] = 'stable'

This branch is constantly updated with the most up-to-date stable version of gitlab. Some changes are introduced from version to version, but cookbook-gitlab doesn't follow those changes ending up with the problem mentioned above. What I suggest is that node['gitlab']['branch'] should be fixed to one specific branch in attributes/default.rb, for example 3.1-stable. This way we can lock all dependencies and be sure that we can reproduce an exact state.

Whenever a new version of gitlab is released, cookbook-gitlab could make the necessary changes in a separate branch and bump the version. When the new pair of gitlab and cookbook-gitlab are tested to be working properly, merge it to master.

And of course, I am willing to help in everything is necessary to make such change. ;)

yumrepo::epel doesn't exist anymore

Hello,

yumrepo cookbook no longer has an epel recipe and is now using yum::epel recipe for rhel platform family. As such, it should not be explicitly included in default recipe.

Best regards

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.