2013-06-25 07:01:41 -04:00
|
|
|
# # # # # # # # # # # # # # # # # #
|
2013-03-01 17:53:37 -05:00
|
|
|
# GitLab application config file #
|
2012-12-20 14:16:42 -05:00
|
|
|
# # # # # # # # # # # # # # # # # #
|
2012-12-22 17:49:46 -05:00
|
|
|
#
|
2015-03-26 21:07:20 -04:00
|
|
|
########################### NOTE #####################################
|
|
|
|
# This file should not receive new settings. All configuration options #
|
2015-12-28 14:28:40 -05:00
|
|
|
# * are being moved to ApplicationSetting model! #
|
2015-12-28 10:33:37 -05:00
|
|
|
# If a setting requires an application restart say so in that screen. #
|
2015-06-11 09:11:37 -04:00
|
|
|
# If you change this file in a Merge Request, please also create #
|
|
|
|
# a MR on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests #
|
2015-03-26 21:07:20 -04:00
|
|
|
########################################################################
|
|
|
|
#
|
2015-06-11 09:11:37 -04:00
|
|
|
#
|
2012-12-22 17:49:46 -05:00
|
|
|
# How to use:
|
2014-09-07 18:31:13 -04:00
|
|
|
# 1. Copy file as gitlab.yml
|
|
|
|
# 2. Update gitlab -> host with your fully qualified domain name
|
2015-05-06 10:39:18 -04:00
|
|
|
# 3. Update gitlab -> email_from
|
2014-09-07 18:31:13 -04:00
|
|
|
# 4. If you installed Git from source, change git -> bin_path to /usr/local/bin/git
|
2015-05-03 11:58:52 -04:00
|
|
|
# IMPORTANT: If Git was installed in a different location use that instead.
|
|
|
|
# You can check with `which git`. If a wrong path of Git is specified, it will
|
|
|
|
# result in various issues such as failures of GitLab CI builds.
|
2014-09-07 18:31:13 -04:00
|
|
|
# 5. Review this configuration file for other settings you may want to adjust
|
2012-07-02 14:51:48 -04:00
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
production: &base
|
|
|
|
#
|
|
|
|
# 1. GitLab app settings
|
|
|
|
# ==========================
|
|
|
|
|
|
|
|
## GitLab settings
|
|
|
|
gitlab:
|
2014-01-27 08:27:47 -05:00
|
|
|
## Web server settings (note: host is the FQDN, do not include http://)
|
2013-02-14 02:44:34 -05:00
|
|
|
host: localhost
|
2014-09-07 18:31:13 -04:00
|
|
|
port: 80 # Set to 443 if using HTTPS, see installation.md#using-https for additional HTTPS configuration details
|
|
|
|
https: false # Set to true if using HTTPS, see installation.md#using-https for additional HTTPS configuration details
|
2013-08-19 15:49:27 -04:00
|
|
|
|
2014-04-18 23:13:53 -04:00
|
|
|
# Uncommment this line below if your ssh host is different from HTTP/HTTPS one
|
|
|
|
# (you'd obviously need to replace ssh.host_example.com with your own host).
|
|
|
|
# Otherwise, ssh host will be set to the `host:` value above
|
|
|
|
# ssh_host: ssh.host_example.com
|
|
|
|
|
2016-02-09 09:50:42 -05:00
|
|
|
# Relative URL support
|
2016-02-10 05:43:19 -05:00
|
|
|
# WARNING: We recommend using an FQDN to host GitLab in a root path instead
|
|
|
|
# of using a relative URL.
|
2016-02-09 09:50:42 -05:00
|
|
|
# Documentation: http://doc.gitlab.com/ce/install/relative_url.html
|
|
|
|
# Uncomment and customize the following line to run in a non-root path
|
|
|
|
#
|
2013-02-14 02:44:34 -05:00
|
|
|
# relative_url_root: /gitlab
|
|
|
|
|
2016-04-06 09:49:46 -04:00
|
|
|
# Trusted Proxies
|
|
|
|
# Customize if you have GitLab behind a reverse proxy which is running on a different machine.
|
|
|
|
# Add the IP address for your reverse proxy to the list, otherwise users will appear signed in from that address.
|
|
|
|
trusted_proxies:
|
|
|
|
# Examples:
|
|
|
|
#- 192.168.1.0/24
|
|
|
|
#- 192.168.2.1
|
|
|
|
#- 2001:0db8::/32
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
# Uncomment and customize if you can't use the default user to run GitLab (default: 'git')
|
|
|
|
# user: git
|
|
|
|
|
2014-10-11 07:10:41 -04:00
|
|
|
## Date & Time settings
|
|
|
|
# Uncomment and customize if you want to change the default time zone of GitLab application.
|
2014-11-25 13:18:56 -05:00
|
|
|
# To see all available zones, run `bundle exec rake time:zones:all RAILS_ENV=production`
|
2014-10-11 07:10:41 -04:00
|
|
|
# time_zone: 'UTC'
|
|
|
|
|
2015-05-06 10:39:18 -04:00
|
|
|
## Email settings
|
|
|
|
# Uncomment and set to false if you need to disable email sending from GitLab (default: true)
|
|
|
|
# email_enabled: true
|
|
|
|
# Email address used in the "From" field in mails sent by GitLab
|
|
|
|
email_from: example@example.com
|
|
|
|
email_display_name: GitLab
|
|
|
|
email_reply_to: noreply@example.com
|
2016-09-02 04:57:08 -04:00
|
|
|
email_subject_suffix: ''
|
2015-05-06 10:39:18 -04:00
|
|
|
|
|
|
|
# Email server smtp settings are in config/initializers/smtp_settings.rb.sample
|
|
|
|
|
2013-03-11 02:44:45 -04:00
|
|
|
# default_can_create_group: false # default: true
|
2013-01-30 15:14:34 -05:00
|
|
|
# username_changing_enabled: false # default: true - User can change her username/namespace
|
2013-09-16 13:31:22 -04:00
|
|
|
|
2013-05-30 19:16:49 -04:00
|
|
|
## Automatic issue closing
|
2013-10-02 02:23:27 -04:00
|
|
|
# If a commit message matches this regular expression, all issues referenced from the matched text will be closed.
|
2013-11-19 06:35:48 -05:00
|
|
|
# This happens when the commit is pushed or merged into the default branch of a project.
|
2013-10-01 05:43:53 -04:00
|
|
|
# When not specified the default issue_closing_pattern as specified below will be used.
|
2015-03-30 16:55:12 -04:00
|
|
|
# Tip: you can test your closing pattern at http://rubular.com.
|
2016-04-07 08:47:29 -04:00
|
|
|
# issue_closing_pattern: '((?:[Cc]los(?:e[sd]?|ing)|[Ff]ix(?:e[sd]|ing)?|[Rr]esolv(?:e[sd]?|ing))(:?) +(?:(?:issues? +)?%{issue_ref}(?:(?:, *| +and +)?)|([A-Z][A-Z0-9_]+-\d+))+)'
|
2013-05-30 19:16:49 -04:00
|
|
|
|
2013-04-24 06:12:56 -04:00
|
|
|
## Default project features settings
|
|
|
|
default_projects_features:
|
|
|
|
issues: true
|
|
|
|
merge_requests: true
|
|
|
|
wiki: true
|
2017-03-10 08:09:24 -05:00
|
|
|
snippets: true
|
2015-11-09 10:48:03 -05:00
|
|
|
builds: true
|
2016-05-09 13:29:57 -04:00
|
|
|
container_registry: true
|
2013-02-11 08:15:10 -05:00
|
|
|
|
2014-09-12 11:38:14 -04:00
|
|
|
## Webhook settings
|
|
|
|
# Number of seconds to wait for HTTP response after sending webhook HTTP POST request (default: 10)
|
|
|
|
# webhook_timeout: 10
|
|
|
|
|
2014-03-28 08:09:25 -04:00
|
|
|
## Repository downloads directory
|
|
|
|
# When a user clicks e.g. 'Download zip' on a project, a temporary zip file is created in the following directory.
|
2016-07-15 15:26:46 -04:00
|
|
|
# The default is 'shared/cache/archive/' relative to the root of the Rails app.
|
|
|
|
# repository_downloads_path: shared/cache/archive/
|
2014-03-28 08:09:25 -04:00
|
|
|
|
2015-08-18 18:46:36 -04:00
|
|
|
## Reply by email
|
2015-08-19 16:58:14 -04:00
|
|
|
# Allow users to comment on issues and merge requests by replying to notification emails.
|
2016-09-25 05:55:14 -04:00
|
|
|
# For documentation on how to set this up, see http://doc.gitlab.com/ce/administration/reply_by_email.html
|
2015-09-21 03:46:47 -04:00
|
|
|
incoming_email:
|
2015-08-18 18:46:36 -04:00
|
|
|
enabled: false
|
2015-10-13 07:07:59 -04:00
|
|
|
|
|
|
|
# The email address including the `%{key}` placeholder that will be replaced to reference the item being replied to.
|
2016-03-17 15:03:51 -04:00
|
|
|
# The placeholder can be omitted but if present, it must appear in the "user" part of the address (before the `@`).
|
2015-10-13 07:07:59 -04:00
|
|
|
address: "gitlab-incoming+%{key}@gmail.com"
|
|
|
|
|
|
|
|
# Email account username
|
|
|
|
# With third party providers, this is usually the full email address.
|
|
|
|
# With self-hosted email servers, this is usually the user part of the email address.
|
|
|
|
user: "gitlab-incoming@gmail.com"
|
|
|
|
# Email account password
|
|
|
|
password: "[REDACTED]"
|
|
|
|
|
|
|
|
# IMAP server host
|
|
|
|
host: "imap.gmail.com"
|
|
|
|
# IMAP server port
|
|
|
|
port: 993
|
|
|
|
# Whether the IMAP server uses SSL
|
|
|
|
ssl: true
|
|
|
|
# Whether the IMAP server uses StartTLS
|
|
|
|
start_tls: false
|
|
|
|
|
|
|
|
# The mailbox where incoming mail will end up. Usually "inbox".
|
|
|
|
mailbox: "inbox"
|
2016-11-11 09:49:51 -05:00
|
|
|
# The IDLE command timeout.
|
2016-11-11 09:40:19 -05:00
|
|
|
idle_timeout: 60
|
2015-08-18 18:46:36 -04:00
|
|
|
|
2015-11-22 08:27:30 -05:00
|
|
|
## Build Artifacts
|
|
|
|
artifacts:
|
|
|
|
enabled: true
|
|
|
|
# The location where build artifacts are stored (default: shared/artifacts).
|
|
|
|
# path: shared/artifacts
|
|
|
|
|
2015-10-12 10:42:14 -04:00
|
|
|
## Git LFS
|
|
|
|
lfs:
|
2015-11-18 05:06:12 -05:00
|
|
|
enabled: true
|
2015-10-12 10:42:14 -04:00
|
|
|
# The location where LFS objects are stored (default: shared/lfs-objects).
|
|
|
|
# storage_path: shared/lfs-objects
|
|
|
|
|
2015-11-03 15:28:07 -05:00
|
|
|
## GitLab Pages
|
|
|
|
pages:
|
|
|
|
enabled: false
|
|
|
|
# The location where pages are stored (default: shared/pages).
|
|
|
|
# path: shared/pages
|
|
|
|
|
|
|
|
# The domain under which the pages are served:
|
|
|
|
# http://group.example.com/project
|
|
|
|
# or project path can be a group page: group.example.com
|
2015-12-16 06:59:01 -05:00
|
|
|
host: example.com
|
2015-12-16 06:53:54 -05:00
|
|
|
port: 80 # Set to 443 if you serve the pages with HTTPS
|
|
|
|
https: false # Set to true if you serve the pages with HTTPS
|
2017-03-08 11:45:59 -05:00
|
|
|
# external_http: ["1.1.1.1:80", "[2001::1]:80"] # If defined, enables custom domain support in GitLab Pages
|
|
|
|
# external_https: ["1.1.1.1:443", "[2001::1]:443"] # If defined, enables custom domain and certificate support in GitLab Pages
|
2015-11-03 15:28:07 -05:00
|
|
|
|
2016-12-16 06:20:42 -05:00
|
|
|
## Mattermost
|
|
|
|
## For enabling Add to Mattermost button
|
|
|
|
mattermost:
|
|
|
|
enabled: false
|
|
|
|
host: 'https://mattermost.example.com'
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
## Gravatar
|
2014-10-14 06:31:47 -04:00
|
|
|
## For Libravatar see: http://doc.gitlab.com/ce/customization/libravatar.html
|
2013-02-14 02:44:34 -05:00
|
|
|
gravatar:
|
2017-05-26 11:56:08 -04:00
|
|
|
# gravatar urls: possible placeholders: %{hash} %{size} %{email} %{username}
|
2014-06-17 02:27:50 -04:00
|
|
|
# plain_url: "http://..." # default: http://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
|
|
|
|
# ssl_url: "https://..." # default: https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
|
2013-02-14 02:44:34 -05:00
|
|
|
|
2015-12-12 20:06:23 -05:00
|
|
|
## Auxiliary jobs
|
|
|
|
# Periodically executed jobs, to self-heal Gitlab, do external synchronizations, etc.
|
|
|
|
# Please read here for more information: https://github.com/ondrejbartas/sidekiq-cron#adding-cron-job
|
|
|
|
cron_jobs:
|
2017-03-02 18:43:39 -05:00
|
|
|
# Flag stuck CI jobs as failed
|
|
|
|
stuck_ci_jobs_worker:
|
2017-02-07 08:10:48 -05:00
|
|
|
cron: "0 * * * *"
|
2017-03-23 11:35:54 -04:00
|
|
|
# Execute scheduled triggers
|
2017-05-07 18:35:56 -04:00
|
|
|
pipeline_schedule_worker:
|
2017-05-22 13:18:09 -04:00
|
|
|
cron: "19 * * * *"
|
2016-06-08 11:18:54 -04:00
|
|
|
# Remove expired build artifacts
|
|
|
|
expire_build_artifacts_worker:
|
2016-05-18 16:21:51 -04:00
|
|
|
cron: "50 * * * *"
|
2016-04-04 11:23:43 -04:00
|
|
|
# Periodically run 'git fsck' on all repositories. If started more than
|
|
|
|
# once per hour you will have concurrent 'git fsck' jobs.
|
2016-04-06 07:47:05 -04:00
|
|
|
repository_check_worker:
|
2016-04-04 11:23:43 -04:00
|
|
|
cron: "20 * * * *"
|
2016-04-26 05:54:37 -04:00
|
|
|
# Send admin emails once a week
|
2016-04-04 11:23:43 -04:00
|
|
|
admin_email_worker:
|
2016-04-26 05:54:37 -04:00
|
|
|
cron: "0 0 * * 0"
|
2015-12-12 20:06:23 -05:00
|
|
|
|
2016-04-11 15:38:36 -04:00
|
|
|
# Remove outdated repository archives
|
|
|
|
repository_archive_cache_worker:
|
|
|
|
cron: "0 * * * *"
|
2015-12-12 20:06:23 -05:00
|
|
|
|
2016-04-19 13:57:35 -04:00
|
|
|
registry:
|
|
|
|
# enabled: true
|
2016-05-16 10:45:18 -04:00
|
|
|
# host: registry.example.com
|
2016-05-20 14:18:55 -04:00
|
|
|
# port: 5005
|
|
|
|
# api_url: http://localhost:5000/ # internal address to the registry, will be used by GitLab to directly communicate with API
|
2016-06-10 09:53:38 -04:00
|
|
|
# key: config/registry.key
|
2016-05-16 18:15:38 -04:00
|
|
|
# path: shared/registry
|
2016-05-20 14:18:55 -04:00
|
|
|
# issuer: gitlab-issuer
|
2016-04-19 13:57:35 -04:00
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
#
|
2015-09-15 18:28:59 -04:00
|
|
|
# 2. GitLab CI settings
|
|
|
|
# ==========================
|
|
|
|
|
|
|
|
gitlab_ci:
|
|
|
|
# Default project notifications settings:
|
|
|
|
#
|
|
|
|
# Send emails only on broken builds (default: true)
|
|
|
|
# all_broken_builds: true
|
|
|
|
#
|
|
|
|
# Add pusher to recipients list (default: false)
|
|
|
|
# add_pusher: true
|
|
|
|
|
|
|
|
# The location where build traces are stored (default: builds/). Relative paths are relative to Rails.root
|
|
|
|
# builds_path: builds/
|
|
|
|
|
|
|
|
#
|
|
|
|
# 3. Auth settings
|
2013-02-14 02:44:34 -05:00
|
|
|
# ==========================
|
|
|
|
|
|
|
|
## LDAP settings
|
2014-01-16 12:40:45 -05:00
|
|
|
# You can inspect a sample of the LDAP users with login access by running:
|
|
|
|
# bundle exec rake gitlab:ldap:check RAILS_ENV=production
|
2013-02-14 02:44:34 -05:00
|
|
|
ldap:
|
|
|
|
enabled: false
|
2014-10-13 07:48:22 -04:00
|
|
|
servers:
|
2015-04-13 09:45:19 -04:00
|
|
|
##########################################################################
|
|
|
|
#
|
|
|
|
# Since GitLab 7.4, LDAP servers get ID's (below the ID is 'main'). GitLab
|
|
|
|
# Enterprise Edition now supports connecting to multiple LDAP servers.
|
|
|
|
#
|
|
|
|
# If you are updating from the old (pre-7.4) syntax, you MUST give your
|
|
|
|
# old server the ID 'main'.
|
|
|
|
#
|
|
|
|
##########################################################################
|
2014-10-14 09:03:53 -04:00
|
|
|
main: # 'main' is the GitLab 'provider ID' of this LDAP server
|
2014-10-13 07:48:22 -04:00
|
|
|
## label
|
|
|
|
#
|
|
|
|
# A human-friendly name for your LDAP server. It is OK to change the label later,
|
|
|
|
# for instance if you find out it is too large to fit on the web page.
|
|
|
|
#
|
|
|
|
# Example: 'Paris' or 'Acme, Ltd.'
|
|
|
|
label: 'LDAP'
|
|
|
|
|
|
|
|
host: '_your_ldap_server'
|
2015-01-28 05:08:44 -05:00
|
|
|
port: 389
|
2014-10-13 07:48:22 -04:00
|
|
|
uid: 'sAMAccountName'
|
2015-01-28 05:08:44 -05:00
|
|
|
method: 'plain' # "tls" or "ssl" or "plain"
|
2014-10-13 07:48:22 -04:00
|
|
|
bind_dn: '_the_full_dn_of_the_user_you_will_bind_with'
|
|
|
|
password: '_the_password_of_the_bind_user'
|
2015-09-10 11:57:43 -04:00
|
|
|
|
2015-12-31 14:22:51 -05:00
|
|
|
# Set a timeout, in seconds, for LDAP queries. This helps avoid blocking
|
|
|
|
# a request if the LDAP server becomes unresponsive.
|
|
|
|
# A value of 0 means there is no timeout.
|
|
|
|
timeout: 10
|
|
|
|
|
2014-10-13 07:48:22 -04:00
|
|
|
# This setting specifies if LDAP server is Active Directory LDAP server.
|
|
|
|
# For non AD servers it skips the AD specific queries.
|
|
|
|
# If your LDAP server is not AD, set this to false.
|
|
|
|
active_directory: true
|
|
|
|
|
|
|
|
# If allow_username_or_email_login is enabled, GitLab will ignore everything
|
|
|
|
# after the first '@' in the LDAP username submitted by the user on login.
|
|
|
|
#
|
|
|
|
# Example:
|
|
|
|
# - the user enters 'jane.doe@example.com' and 'p@ssw0rd' as LDAP credentials;
|
|
|
|
# - GitLab queries the LDAP server with 'jane.doe' and 'p@ssw0rd'.
|
|
|
|
#
|
|
|
|
# If you are using "uid: 'userPrincipalName'" on ActiveDirectory you need to
|
|
|
|
# disable this setting, because the userPrincipalName contains an '@'.
|
|
|
|
allow_username_or_email_login: false
|
|
|
|
|
2015-04-14 12:17:46 -04:00
|
|
|
# To maintain tight control over the number of active users on your GitLab installation,
|
2015-06-11 09:11:37 -04:00
|
|
|
# enable this setting to keep new users blocked until they have been cleared by the admin
|
2015-04-14 12:17:46 -04:00
|
|
|
# (default: false).
|
2015-04-14 11:09:05 -04:00
|
|
|
block_auto_created_users: false
|
|
|
|
|
2014-10-13 07:48:22 -04:00
|
|
|
# Base where we can search for users
|
|
|
|
#
|
|
|
|
# Ex. ou=People,dc=gitlab,dc=example
|
|
|
|
#
|
|
|
|
base: ''
|
|
|
|
|
|
|
|
# Filter LDAP users
|
|
|
|
#
|
|
|
|
# Format: RFC 4515 http://tools.ietf.org/search/rfc4515
|
|
|
|
# Ex. (employeeType=developer)
|
|
|
|
#
|
|
|
|
# Note: GitLab does not support omniauth-ldap's custom filter syntax.
|
|
|
|
#
|
|
|
|
user_filter: ''
|
2014-03-10 11:10:23 -04:00
|
|
|
|
2015-09-09 06:36:08 -04:00
|
|
|
# LDAP attributes that GitLab will use to create an account for the LDAP user.
|
2015-09-09 06:54:48 -04:00
|
|
|
# The specified attribute can either be the attribute name as a string (e.g. 'mail'),
|
|
|
|
# or an array of attribute names to try in order (e.g. ['mail', 'email']).
|
2015-09-09 06:36:08 -04:00
|
|
|
# Note that the user's LDAP login will always be the attribute specified as `uid` above.
|
|
|
|
attributes:
|
|
|
|
# The username will be used in paths for the user's own projects
|
|
|
|
# (like `gitlab.example.com/username/project`) and when mentioning
|
|
|
|
# them in issues, merge request and comments (like `@username`).
|
2015-09-10 11:57:43 -04:00
|
|
|
# If the attribute specified for `username` contains an email address,
|
2015-09-09 06:36:08 -04:00
|
|
|
# the GitLab username will be the part of the email address before the '@'.
|
|
|
|
username: ['uid', 'userid', 'sAMAccountName']
|
|
|
|
email: ['mail', 'email', 'userPrincipalName']
|
|
|
|
|
|
|
|
# If no full name could be found at the attribute specified for `name`,
|
2015-09-10 11:57:43 -04:00
|
|
|
# the full name is determined using the attributes specified for
|
2015-09-09 06:36:08 -04:00
|
|
|
# `first_name` and `last_name`.
|
|
|
|
name: 'cn'
|
|
|
|
first_name: 'givenName'
|
|
|
|
last_name: 'sn'
|
|
|
|
|
2014-10-14 09:03:53 -04:00
|
|
|
# GitLab EE only: add more LDAP servers
|
|
|
|
# Choose an ID made of a-z and 0-9 . This ID will be stored in the database
|
|
|
|
# so that GitLab can remember which LDAP server a user belongs to.
|
|
|
|
# uswest2:
|
|
|
|
# label:
|
|
|
|
# host:
|
|
|
|
# ....
|
2014-03-10 11:10:23 -04:00
|
|
|
|
|
|
|
|
2013-03-01 17:53:37 -05:00
|
|
|
## OmniAuth settings
|
2013-02-14 02:44:34 -05:00
|
|
|
omniauth:
|
2013-03-01 17:53:37 -05:00
|
|
|
# Allow login via Twitter, Google, etc. using OmniAuth providers
|
2013-02-14 02:44:34 -05:00
|
|
|
enabled: false
|
|
|
|
|
2015-05-27 11:40:21 -04:00
|
|
|
# Uncomment this to automatically sign in with a specific omniauth provider's without
|
|
|
|
# showing GitLab's sign-in page (default: show the GitLab sign-in page)
|
|
|
|
# auto_sign_in_with_provider: saml
|
|
|
|
|
2017-06-06 11:39:54 -04:00
|
|
|
# Sync user's email address from the specified Omniauth provider every time the user logs
|
|
|
|
# in (default: nil). And consequently make this field read-only.
|
|
|
|
# sync_email_from_provider: cas3
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
# CAUTION!
|
2016-02-19 02:43:00 -05:00
|
|
|
# This allows users to login without having a user account first. Define the allowed providers
|
|
|
|
# using an array, e.g. ["saml", "twitter"], or as true/false to allow all providers or none.
|
2013-02-14 02:44:34 -05:00
|
|
|
# User accounts will be created automatically when authentication was successful.
|
2016-02-18 17:01:07 -05:00
|
|
|
allow_single_sign_on: ["saml"]
|
|
|
|
|
2013-03-01 17:53:37 -05:00
|
|
|
# Locks down those users until they have been cleared by the admin (default: true).
|
2013-02-14 02:44:34 -05:00
|
|
|
block_auto_created_users: true
|
2015-06-02 06:01:29 -04:00
|
|
|
# Look up new users in LDAP servers. If a match is found (same uid), automatically
|
|
|
|
# link the omniauth identity with the LDAP account. (default: false)
|
|
|
|
auto_link_ldap_user: false
|
2013-02-14 02:44:34 -05:00
|
|
|
|
2016-02-18 17:01:07 -05:00
|
|
|
# Allow users with existing accounts to login and auto link their account via SAML
|
|
|
|
# login, without having to do a manual login first and manually add SAML
|
|
|
|
# (default: false)
|
|
|
|
auto_link_saml_user: false
|
|
|
|
|
2016-04-11 11:16:56 -04:00
|
|
|
# Set different Omniauth providers as external so that all users creating accounts
|
|
|
|
# via these providers will not be able to have access to internal projects. You
|
|
|
|
# will need to use the full name of the provider, like `google_oauth2` for Google.
|
|
|
|
# Refer to the examples below for the full names of the supported providers.
|
|
|
|
# (default: [])
|
|
|
|
external_providers: []
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
## Auth providers
|
2013-03-01 17:53:37 -05:00
|
|
|
# Uncomment the following lines and fill in the data of the auth provider you want to use
|
|
|
|
# If your favorite auth provider is not listed you can use others:
|
2014-04-02 23:11:25 -04:00
|
|
|
# see https://github.com/gitlabhq/gitlab-public-wiki/wiki/Custom-omniauth-provider-configurations
|
2013-02-14 02:44:34 -05:00
|
|
|
# The 'app_id' and 'app_secret' parameters are always passed as the first two
|
|
|
|
# arguments, followed by optional 'args' which can be either a hash or an array.
|
2014-04-10 08:39:58 -04:00
|
|
|
# Documentation for this is available at http://doc.gitlab.com/ce/integration/omniauth.html
|
2013-02-14 02:44:34 -05:00
|
|
|
providers:
|
2015-11-11 23:25:31 -05:00
|
|
|
# See omniauth-cas3 for more configuration details
|
|
|
|
# - { name: 'cas3',
|
|
|
|
# label: 'cas3',
|
|
|
|
# args: {
|
|
|
|
# url: 'https://sso.example.com',
|
|
|
|
# disable_ssl_verification: false,
|
|
|
|
# login_url: '/cas/login',
|
|
|
|
# service_validate_url: '/cas/p3/serviceValidate',
|
|
|
|
# logout_url: '/cas/logout'} }
|
2016-12-11 07:09:37 -05:00
|
|
|
# - { name: 'authentiq',
|
|
|
|
# # for client credentials (client ID and secret), go to https://www.authentiq.com/
|
|
|
|
# app_id: 'YOUR_CLIENT_ID',
|
|
|
|
# app_secret: 'YOUR_CLIENT_SECRET',
|
|
|
|
# args: {
|
|
|
|
# scope: 'aq:name email~rs address aq:push'
|
|
|
|
# # redirect_uri parameter is optional except when 'gitlab.host' in this file is set to 'localhost'
|
|
|
|
# # redirect_uri: 'YOUR_REDIRECT_URI'
|
|
|
|
# }
|
|
|
|
# }
|
2015-09-10 11:57:43 -04:00
|
|
|
# - { name: 'github',
|
|
|
|
# app_id: 'YOUR_APP_ID',
|
2015-02-17 10:59:50 -05:00
|
|
|
# app_secret: 'YOUR_APP_SECRET',
|
2016-04-22 15:43:10 -04:00
|
|
|
# url: "https://github.com/",
|
|
|
|
# verify_ssl: true,
|
2014-01-15 12:49:39 -05:00
|
|
|
# args: { scope: 'user:email' } }
|
2015-11-03 11:58:12 -05:00
|
|
|
# - { name: 'bitbucket',
|
|
|
|
# app_id: 'YOUR_APP_ID',
|
|
|
|
# app_secret: 'YOUR_APP_SECRET' }
|
2015-09-10 11:57:43 -04:00
|
|
|
# - { name: 'gitlab',
|
|
|
|
# app_id: 'YOUR_APP_ID',
|
2015-02-17 10:59:50 -05:00
|
|
|
# app_secret: 'YOUR_APP_SECRET',
|
2015-02-07 16:49:05 -05:00
|
|
|
# args: { scope: 'api' } }
|
2015-11-03 11:58:12 -05:00
|
|
|
# - { name: 'google_oauth2',
|
|
|
|
# app_id: 'YOUR_APP_ID',
|
|
|
|
# app_secret: 'YOUR_APP_SECRET',
|
|
|
|
# args: { access_type: 'offline', approval_prompt: '' } }
|
|
|
|
# - { name: 'facebook',
|
2015-09-10 11:57:43 -04:00
|
|
|
# app_id: 'YOUR_APP_ID',
|
2015-07-02 10:33:38 -04:00
|
|
|
# app_secret: 'YOUR_APP_SECRET' }
|
2015-11-03 11:58:12 -05:00
|
|
|
# - { name: 'twitter',
|
|
|
|
# app_id: 'YOUR_APP_ID',
|
|
|
|
# app_secret: 'YOUR_APP_SECRET' }
|
|
|
|
#
|
2015-09-10 11:57:43 -04:00
|
|
|
# - { name: 'saml',
|
2015-07-02 10:33:38 -04:00
|
|
|
# label: 'Our SAML Provider',
|
2016-04-04 20:10:17 -04:00
|
|
|
# groups_attribute: 'Groups',
|
|
|
|
# external_groups: ['Contractors', 'Freelancers'],
|
2015-05-27 10:37:22 -04:00
|
|
|
# args: {
|
|
|
|
# assertion_consumer_service_url: 'https://gitlab.example.com/users/auth/saml/callback',
|
|
|
|
# idp_cert_fingerprint: '43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8',
|
|
|
|
# idp_sso_target_url: 'https://login.example.com/idp',
|
|
|
|
# issuer: 'https://gitlab.example.com',
|
|
|
|
# name_identifier_format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:transient'
|
|
|
|
# } }
|
2016-04-06 17:04:11 -04:00
|
|
|
#
|
2015-08-31 06:59:52 -04:00
|
|
|
# - { name: 'crowd',
|
|
|
|
# args: {
|
|
|
|
# crowd_server_url: 'CROWD SERVER URL',
|
|
|
|
# application_name: 'YOUR_APP_NAME',
|
|
|
|
# application_password: 'YOUR_APP_PASSWORD' } }
|
2016-02-29 00:37:27 -05:00
|
|
|
#
|
|
|
|
# - { name: 'auth0',
|
|
|
|
# args: {
|
|
|
|
# client_id: 'YOUR_AUTH0_CLIENT_ID',
|
|
|
|
# client_secret: 'YOUR_AUTH0_CLIENT_SECRET',
|
|
|
|
# namespace: 'YOUR_AUTH0_DOMAIN' } }
|
2015-05-27 10:37:22 -04:00
|
|
|
|
2015-11-11 23:25:31 -05:00
|
|
|
# SSO maximum session duration in seconds. Defaults to CAS default of 8 hours.
|
|
|
|
# cas3:
|
|
|
|
# session_duration: 28800
|
|
|
|
|
2015-10-26 08:42:09 -04:00
|
|
|
# Shared file storage settings
|
|
|
|
shared:
|
|
|
|
# path: /mnt/gitlab # Default: shared
|
|
|
|
|
2017-03-10 09:03:56 -05:00
|
|
|
# Gitaly settings
|
|
|
|
gitaly:
|
2017-03-24 13:22:42 -04:00
|
|
|
# This setting controls whether GitLab uses Gitaly (new component
|
|
|
|
# introduced in 9.0). Eventually Gitaly use will become mandatory and
|
|
|
|
# this option will disappear.
|
2017-05-30 09:57:11 -04:00
|
|
|
enabled: true
|
2013-02-14 02:44:34 -05:00
|
|
|
|
|
|
|
#
|
2015-09-15 18:28:59 -04:00
|
|
|
# 4. Advanced settings
|
2013-02-14 02:44:34 -05:00
|
|
|
# ==========================
|
|
|
|
|
2016-06-22 17:04:51 -04:00
|
|
|
## Repositories settings
|
|
|
|
repositories:
|
|
|
|
# Paths where repositories can be stored. Give the canonicalized absolute pathname.
|
2016-11-01 18:00:34 -04:00
|
|
|
# IMPORTANT: None of the path components may be symlink, because
|
|
|
|
# gitlab-shell invokes Dir.pwd inside the repository path and that results
|
|
|
|
# real path not the symlink.
|
2016-06-22 17:04:51 -04:00
|
|
|
storages: # You must have at least a `default` storage path.
|
2017-02-28 16:08:40 -05:00
|
|
|
default:
|
|
|
|
path: /home/git/repositories/
|
2017-04-03 09:27:14 -04:00
|
|
|
gitaly_address: unix:/home/git/gitlab/tmp/sockets/private/gitaly.socket # TCP connections are supported too (e.g. tcp://host:port)
|
2016-06-22 17:04:51 -04:00
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
## Backup settings
|
|
|
|
backup:
|
|
|
|
path: "tmp/backups" # Relative paths are relative to Rails.root (default: tmp/backups/)
|
2015-07-06 12:43:17 -04:00
|
|
|
# archive_permissions: 0640 # Permissions for the resulting backup.tar file (default: 0600)
|
2013-02-14 02:44:34 -05:00
|
|
|
# keep_time: 604800 # default: 0 (forever) (in seconds)
|
2015-09-18 05:47:25 -04:00
|
|
|
# pg_schema: public # default: nil, it means that all schemas will be backed up
|
2014-09-29 09:02:39 -04:00
|
|
|
# upload:
|
|
|
|
# # Fog storage connection settings, see http://fog.io/storage/ .
|
|
|
|
# connection:
|
|
|
|
# provider: AWS
|
2014-09-30 06:05:07 -04:00
|
|
|
# region: eu-west-1
|
2014-09-29 09:02:39 -04:00
|
|
|
# aws_access_key_id: AKIAKIAKI
|
|
|
|
# aws_secret_access_key: 'secret123'
|
|
|
|
# # The remote 'directory' to store your backups. For S3, this would be the bucket name.
|
|
|
|
# remote_directory: 'my.s3.bucket'
|
2015-06-09 11:56:37 -04:00
|
|
|
# # Use multipart uploads when file size reaches 100MB, see
|
|
|
|
# # http://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
|
|
|
|
# multipart_chunk_size: 104857600
|
2015-09-10 11:57:43 -04:00
|
|
|
# # Turns on AWS Server-Side Encryption with Amazon S3-Managed Keys for backups, this is optional
|
|
|
|
# # encryption: 'AES256'
|
2017-02-28 16:30:58 -05:00
|
|
|
# # Specifies Amazon S3 storage class to use for backups, this is optional
|
|
|
|
# # storage_class: 'STANDARD'
|
2015-06-09 11:56:37 -04:00
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
## GitLab Shell settings
|
|
|
|
gitlab_shell:
|
2013-12-09 12:32:37 -05:00
|
|
|
path: /home/git/gitlab-shell/
|
2013-02-14 02:44:34 -05:00
|
|
|
hooks_path: /home/git/gitlab-shell/hooks/
|
|
|
|
|
2015-02-16 07:16:26 -05:00
|
|
|
# File that contains the secret key for verifying access for gitlab-shell.
|
|
|
|
# Default is '.gitlab_shell_secret' relative to Rails.root (i.e. root of the GitLab app).
|
|
|
|
# secret_file: /home/git/gitlab/.gitlab_shell_secret
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
# Git over HTTP
|
|
|
|
upload_pack: true
|
|
|
|
receive_pack: true
|
|
|
|
|
2017-04-13 21:53:30 -04:00
|
|
|
# Git import/fetch timeout
|
|
|
|
# git_timeout: 800
|
|
|
|
|
2013-03-01 17:53:37 -05:00
|
|
|
# If you use non-standard ssh port you need to specify it
|
2013-02-14 02:44:34 -05:00
|
|
|
# ssh_port: 22
|
|
|
|
|
2017-03-30 20:37:45 -04:00
|
|
|
workhorse:
|
|
|
|
# File that contains the secret key for verifying access for gitlab-workhorse.
|
|
|
|
# Default is '.gitlab_workhorse_secret' relative to Rails.root (i.e. root of the GitLab app).
|
|
|
|
# secret_file: /home/git/gitlab/.gitlab_workhorse_secret
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
## Git settings
|
2012-12-14 19:45:44 -05:00
|
|
|
# CAUTION!
|
2013-02-14 02:44:34 -05:00
|
|
|
# Use the default values unless you really know what you are doing
|
|
|
|
git:
|
|
|
|
bin_path: /usr/bin/git
|
2014-01-27 07:01:20 -05:00
|
|
|
# The next value is the maximum memory size grit can use
|
|
|
|
# Given in number of bytes per git object (e.g. a commit)
|
|
|
|
# This value can be increased if you have very large commits
|
2014-07-15 13:59:47 -04:00
|
|
|
max_size: 20971520 # 20.megabytes
|
2013-03-01 17:53:37 -05:00
|
|
|
# Git timeout to read a commit, in seconds
|
2013-02-14 02:44:34 -05:00
|
|
|
timeout: 10
|
|
|
|
|
2017-02-01 14:05:33 -05:00
|
|
|
## Webpack settings
|
|
|
|
# If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running
|
|
|
|
# on a given port instead of serving directly from /assets/webpack. This is only indended for use
|
|
|
|
# in development.
|
|
|
|
webpack:
|
|
|
|
# dev_server:
|
|
|
|
# enabled: true
|
|
|
|
# host: localhost
|
|
|
|
# port: 3808
|
|
|
|
|
2013-05-08 14:03:14 -04:00
|
|
|
#
|
2015-09-15 18:28:59 -04:00
|
|
|
# 5. Extra customization
|
2013-05-08 14:03:14 -04:00
|
|
|
# ==========================
|
|
|
|
|
2013-06-25 07:01:41 -04:00
|
|
|
extra:
|
2013-05-08 14:03:14 -04:00
|
|
|
## Google analytics. Uncomment if you want it
|
|
|
|
# google_analytics_id: '_your_tracking_id'
|
|
|
|
|
2014-02-23 09:06:49 -05:00
|
|
|
## Piwik analytics.
|
|
|
|
# piwik_url: '_your_piwik_url'
|
|
|
|
# piwik_site_id: '_your_piwik_site_id'
|
|
|
|
|
2014-12-15 12:47:26 -05:00
|
|
|
rack_attack:
|
|
|
|
git_basic_auth:
|
2015-03-15 22:07:23 -04:00
|
|
|
# Rack Attack IP banning enabled
|
|
|
|
# enabled: true
|
|
|
|
#
|
2015-01-06 10:56:56 -05:00
|
|
|
# Whitelist requests from 127.0.0.1 for web proxies (NGINX/Apache) with incorrect headers
|
|
|
|
# ip_whitelist: ["127.0.0.1"]
|
|
|
|
#
|
2014-12-15 12:47:26 -05:00
|
|
|
# Limit the number of Git HTTP authentication attempts per IP
|
|
|
|
# maxretry: 10
|
|
|
|
#
|
|
|
|
# Reset the auth attempt counter per IP after 60 seconds
|
|
|
|
# findtime: 60
|
|
|
|
#
|
|
|
|
# Ban an IP for one hour (3600s) after too many auth attempts
|
|
|
|
# bantime: 3600
|
|
|
|
|
2013-02-14 02:44:34 -05:00
|
|
|
development:
|
2013-02-14 09:43:06 -05:00
|
|
|
<<: *base
|
2013-02-14 02:44:34 -05:00
|
|
|
|
|
|
|
test:
|
2013-02-14 09:43:06 -05:00
|
|
|
<<: *base
|
2014-02-26 05:44:29 -05:00
|
|
|
gravatar:
|
|
|
|
enabled: true
|
2015-10-12 10:42:14 -04:00
|
|
|
lfs:
|
|
|
|
enabled: false
|
2014-02-26 05:44:29 -05:00
|
|
|
gitlab:
|
|
|
|
host: localhost
|
2014-11-18 10:14:36 -05:00
|
|
|
port: 80
|
2014-08-14 08:15:48 -04:00
|
|
|
|
|
|
|
# When you run tests we clone and setup gitlab-shell
|
2014-09-12 11:38:14 -04:00
|
|
|
# In order to setup it correctly you need to specify
|
2014-08-14 08:15:48 -04:00
|
|
|
# your system username you use to run GitLab
|
2014-09-12 11:38:14 -04:00
|
|
|
# user: YOUR_USERNAME
|
2017-03-28 13:27:44 -04:00
|
|
|
pages:
|
|
|
|
path: tmp/tests/pages
|
2016-06-22 17:04:51 -04:00
|
|
|
repositories:
|
|
|
|
storages:
|
2017-02-28 16:08:40 -05:00
|
|
|
default:
|
|
|
|
path: tmp/tests/repositories/
|
2017-03-28 21:23:45 -04:00
|
|
|
gitaly_address: unix:tmp/tests/gitaly/gitaly.socket
|
2017-03-24 13:22:42 -04:00
|
|
|
gitaly:
|
2017-03-28 21:23:45 -04:00
|
|
|
enabled: true
|
2015-07-24 12:55:50 -04:00
|
|
|
backup:
|
2015-07-24 12:54:06 -04:00
|
|
|
path: tmp/tests/backups
|
2014-07-31 08:39:01 -04:00
|
|
|
gitlab_shell:
|
|
|
|
path: tmp/tests/gitlab-shell/
|
|
|
|
hooks_path: tmp/tests/gitlab-shell/hooks/
|
2013-02-14 09:26:50 -05:00
|
|
|
issues_tracker:
|
|
|
|
redmine:
|
2013-10-08 10:21:40 -04:00
|
|
|
title: "Redmine"
|
2013-02-19 08:06:40 -05:00
|
|
|
project_url: "http://redmine/projects/:issues_tracker_id"
|
2013-02-14 09:26:50 -05:00
|
|
|
issues_url: "http://redmine/:project_id/:issues_tracker_id/:id"
|
2013-04-15 12:36:00 -04:00
|
|
|
new_issue_url: "http://redmine/projects/:issues_tracker_id/issues/new"
|
2016-09-29 17:11:32 -04:00
|
|
|
jira:
|
|
|
|
title: "JIRA"
|
2017-03-04 14:53:05 -05:00
|
|
|
url: https://sample_company.atlassian.net
|
2016-09-29 17:11:32 -04:00
|
|
|
project_key: PROJECT
|
2014-10-13 07:48:22 -04:00
|
|
|
ldap:
|
|
|
|
enabled: false
|
|
|
|
servers:
|
2014-10-14 07:52:15 -04:00
|
|
|
main:
|
2014-10-13 07:48:22 -04:00
|
|
|
label: ldap
|
|
|
|
host: 127.0.0.1
|
|
|
|
port: 3890
|
|
|
|
uid: 'uid'
|
|
|
|
method: 'plain' # "tls" or "ssl" or "plain"
|
|
|
|
base: 'dc=example,dc=com'
|
|
|
|
user_filter: ''
|
|
|
|
group_base: 'ou=groups,dc=example,dc=com'
|
|
|
|
admin_group: ''
|
2013-02-14 02:44:34 -05:00
|
|
|
|
|
|
|
staging:
|
2017-02-13 12:50:13 -05:00
|
|
|
<<: *base
|