Playbooks to a new Lilik
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

440 lines
17 KiB

  1. # # # # # # # # # # # # # # # # # #
  2. # GitLab application config file #
  3. # # # # # # # # # # # # # # # # # #
  4. #
  5. ########################### NOTE #####################################
  6. # This file should not receive new settings. All configuration options #
  7. # that do not require an application restart are being moved to #
  8. # ApplicationSetting model! #
  9. # If you change this file in a Merge Request, please also create #
  10. # a MR on https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests #
  11. ########################################################################
  12. #
  13. #
  14. # How to use:
  15. # 1. Copy file as gitlab.yml
  16. # 2. Update gitlab -> host with your fully qualified domain name
  17. # 3. Update gitlab -> email_from
  18. # 4. If you installed Git from source, change git -> bin_path to /usr/local/bin/git
  19. # IMPORTANT: If Git was installed in a different location use that instead.
  20. # You can check with `which git`. If a wrong path of Git is specified, it will
  21. # result in various issues such as failures of GitLab CI builds.
  22. # 5. Review this configuration file for other settings you may want to adjust
  23. # For Debian specific changes: See /usr/share/doc/README.Debian
  24. production: &base
  25. #
  26. # 1. GitLab app settings
  27. # ==========================
  28. ## GitLab settings
  29. gitlab:
  30. ## Web server settings (note: host is the FQDN, do not include http://)
  31. # Using environmental variables from /etc/gitlab/gitlab-debian.conf
  32. host: {{ fqdn }}
  33. #port: 80 # Set to 443 if using HTTPS, see installation.md#using-https for additional HTTPS configuration details
  34. https: false # Set to true if using HTTPS, see installation.md#using-https for additional HTTPS configuration details
  35. # Uncommment this line below if your ssh host is different from HTTP/HTTPS one
  36. # (you'd obviously need to replace ssh.host_example.com with your own host).
  37. # Otherwise, ssh host will be set to the `host:` value above
  38. # ssh_host: ssh.host_example.com
  39. # WARNING: See config/application.rb under "Relative url support" for the list of
  40. # other files that need to be changed for relative url support
  41. # relative_url_root: /gitlab
  42. # Uncomment and customize if you can't use the default user to run GitLab (default: 'git')
  43. user: gitlab #gitlab_user (DON'T REMOVE THIS COMMENT)
  44. user_home: /var/lib/gitlab
  45. ## Date & Time settings
  46. # Uncomment and customize if you want to change the default time zone of GitLab application.
  47. # To see all available zones, run `bundle exec rake time:zones:all RAILS_ENV=production`
  48. # time_zone: 'UTC'
  49. ## Email settings
  50. # Uncomment and set to false if you need to disable email sending from GitLab (default: true)
  51. # email_enabled: true
  52. # Email address used in the "From" field in mails sent by GitLab
  53. # Using environmental variables from /etc/gitlab/gitlab-debian.conf
  54. # email_from: example@example.com
  55. # email_display_name: GitLab
  56. # email_reply_to: noreply@example.com
  57. # Email server smtp settings are in config/initializers/smtp_settings.rb.sample
  58. # default_can_create_group: false # default: true
  59. # username_changing_enabled: false # default: true - User can change her username/namespace
  60. ## Default theme ID
  61. ## 1 - Graphite
  62. ## 2 - Charcoal
  63. ## 3 - Green
  64. ## 4 - Gray
  65. ## 5 - Violet
  66. ## 6 - Blue
  67. # default_theme: 2 # default: 2
  68. ## Automatic issue closing
  69. # If a commit message matches this regular expression, all issues referenced from the matched text will be closed.
  70. # This happens when the commit is pushed or merged into the default branch of a project.
  71. # When not specified the default issue_closing_pattern as specified below will be used.
  72. # Tip: you can test your closing pattern at http://rubular.com.
  73. # issue_closing_pattern: '((?:[Cc]los(?:e[sd]?|ing)|[Ff]ix(?:e[sd]|ing)?) +(?:(?:issues? +)?#\d+(?:(?:, *| +and +)?))+)'
  74. ## Default project features settings
  75. default_projects_features:
  76. issues: true
  77. merge_requests: true
  78. wiki: true
  79. snippets: true
  80. ## Webhook settings
  81. # Number of seconds to wait for HTTP response after sending webhook HTTP POST request (default: 10)
  82. # webhook_timeout: 10
  83. ## Repository downloads directory
  84. # When a user clicks e.g. 'Download zip' on a project, a temporary zip file is created in the following directory.
  85. # The default is 'tmp/repositories' relative to the root of the Rails app.
  86. # repository_downloads_path: tmp/repositories
  87. ## Reply by email
  88. # Allow users to comment on issues and merge requests by replying to notification emails.
  89. # For documentation on how to set this up, see http://doc.gitlab.com/ce/incoming_email/README.html
  90. incoming_email:
  91. enabled: false
  92. address: "incoming+%{key}@gitlab.example.com"
  93. ## Gravatar
  94. ## For Libravatar see: http://doc.gitlab.com/ce/customization/libravatar.html
  95. gravatar:
  96. enabled: false # Use user avatar image from Gravatar.com (default: true)
  97. # gravatar urls: possible placeholders: %{hash} %{size} %{email}
  98. # plain_url: "http://..." # default: http://www.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
  99. # ssl_url: "https://..." # default: https://secure.gravatar.com/avatar/%{hash}?s=%{size}&d=identicon
  100. #
  101. # 2. GitLab CI settings
  102. # ==========================
  103. gitlab_ci:
  104. # Default project notifications settings:
  105. #
  106. # Send emails only on broken builds (default: true)
  107. # all_broken_builds: true
  108. #
  109. # Add pusher to recipients list (default: false)
  110. # add_pusher: true
  111. # The location where build traces are stored (default: builds/). Relative paths are relative to Rails.root
  112. # builds_path: builds/
  113. #
  114. # 3. Auth settings
  115. # ==========================
  116. ## LDAP settings
  117. # You can inspect a sample of the LDAP users with login access by running:
  118. # bundle exec rake gitlab:ldap:check RAILS_ENV=production
  119. ldap:
  120. enabled: true
  121. servers:
  122. ##########################################################################
  123. #
  124. # Since GitLab 7.4, LDAP servers get ID's (below the ID is 'main'). GitLab
  125. # Enterprise Edition now supports connecting to multiple LDAP servers.
  126. #
  127. # If you are updating from the old (pre-7.4) syntax, you MUST give your
  128. # old server the ID 'main'.
  129. #
  130. ##########################################################################
  131. main: # 'main' is the GitLab 'provider ID' of this LDAP server
  132. ## label
  133. #
  134. # A human-friendly name for your LDAP server. It is OK to change the label later,
  135. # for instance if you find out it is too large to fit on the web page.
  136. #
  137. # Example: 'Paris' or 'Acme, Ltd.'
  138. label: 'LDAP'
  139. host: '{{ ldap_server }}'
  140. port: 389
  141. uid: 'uid'
  142. method: 'plain' # "tls" or "ssl" or "plain"
  143. #bind_dn: '_the_full_dn_of_the_user_you_will_bind_with'
  144. #password: '_the_password_of_the_bind_user'
  145. # This setting specifies if LDAP server is Active Directory LDAP server.
  146. # For non AD servers it skips the AD specific queries.
  147. # If your LDAP server is not AD, set this to false.
  148. active_directory: false
  149. # If allow_username_or_email_login is enabled, GitLab will ignore everything
  150. # after the first '@' in the LDAP username submitted by the user on login.
  151. #
  152. # Example:
  153. # - the user enters 'jane.doe@example.com' and 'p@ssw0rd' as LDAP credentials;
  154. # - GitLab queries the LDAP server with 'jane.doe' and 'p@ssw0rd'.
  155. #
  156. # If you are using "uid: 'userPrincipalName'" on ActiveDirectory you need to
  157. # disable this setting, because the userPrincipalName contains an '@'.
  158. allow_username_or_email_login: true
  159. # To maintain tight control over the number of active users on your GitLab installation,
  160. # enable this setting to keep new users blocked until they have been cleared by the admin
  161. # (default: false).
  162. block_auto_created_users: false
  163. # Base where we can search for users
  164. #
  165. # Ex. ou=People,dc=gitlab,dc=example
  166. #
  167. base: 'o=People,dc=lilik,dc=it'
  168. # Filter LDAP users
  169. #
  170. # Format: RFC 4515 http://tools.ietf.org/search/rfc4515
  171. # Ex. (employeeType=developer)
  172. #
  173. # Note: GitLab does not support omniauth-ldap's custom filter syntax.
  174. #
  175. user_filter: '(memberOf=cn=projects,o=Group,dc=lilik,dc=it)'
  176. # LDAP attributes that GitLab will use to create an account for the LDAP user.
  177. # The specified attribute can either be the attribute name as a string (e.g. 'mail'),
  178. # or an array of attribute names to try in order (e.g. ['mail', 'email']).
  179. # Note that the user's LDAP login will always be the attribute specified as `uid` above.
  180. attributes:
  181. # The username will be used in paths for the user's own projects
  182. # (like `gitlab.example.com/username/project`) and when mentioning
  183. # them in issues, merge request and comments (like `@username`).
  184. # If the attribute specified for `username` contains an email address,
  185. # the GitLab username will be the part of the email address before the '@'.
  186. username: ['uid', 'userid', 'sAMAccountName']
  187. email: ['mail', 'email', 'userPrincipalName']
  188. # If no full name could be found at the attribute specified for `name`,
  189. # the full name is determined using the attributes specified for
  190. # `first_name` and `last_name`.
  191. name: 'cn'
  192. first_name: 'givenName'
  193. last_name: 'sn'
  194. group_base: 'o=Group,dc=lilik,dc=it'
  195. admin_group: 'admin'
  196. # GitLab EE only: add more LDAP servers
  197. # Choose an ID made of a-z and 0-9 . This ID will be stored in the database
  198. # so that GitLab can remember which LDAP server a user belongs to.
  199. # uswest2:
  200. # label:
  201. # host:
  202. # ....
  203. ## OmniAuth settings
  204. omniauth:
  205. # Allow login via Twitter, Google, etc. using OmniAuth providers
  206. enabled: false
  207. # Uncomment this to automatically sign in with a specific omniauth provider's without
  208. # showing GitLab's sign-in page (default: show the GitLab sign-in page)
  209. # auto_sign_in_with_provider: saml
  210. # CAUTION!
  211. # This allows users to login without having a user account first (default: false).
  212. # User accounts will be created automatically when authentication was successful.
  213. allow_single_sign_on: false
  214. # Locks down those users until they have been cleared by the admin (default: true).
  215. block_auto_created_users: true
  216. # Look up new users in LDAP servers. If a match is found (same uid), automatically
  217. # link the omniauth identity with the LDAP account. (default: false)
  218. auto_link_ldap_user: false
  219. ## Auth providers
  220. # Uncomment the following lines and fill in the data of the auth provider you want to use
  221. # If your favorite auth provider is not listed you can use others:
  222. # see https://github.com/gitlabhq/gitlab-public-wiki/wiki/Custom-omniauth-provider-configurations
  223. # The 'app_id' and 'app_secret' parameters are always passed as the first two
  224. # arguments, followed by optional 'args' which can be either a hash or an array.
  225. # Documentation for this is available at http://doc.gitlab.com/ce/integration/omniauth.html
  226. providers:
  227. # - { name: 'google_oauth2',
  228. # label: 'Google',
  229. # app_id: 'YOUR_APP_ID',
  230. # app_secret: 'YOUR_APP_SECRET',
  231. # args: { access_type: 'offline', approval_prompt: '' } }
  232. # - { name: 'twitter',
  233. # app_id: 'YOUR_APP_ID',
  234. # app_secret: 'YOUR_APP_SECRET' }
  235. # - { name: 'github',
  236. # label: 'GitHub',
  237. # app_id: 'YOUR_APP_ID',
  238. # app_secret: 'YOUR_APP_SECRET',
  239. # args: { scope: 'user:email' } }
  240. # - { name: 'gitlab',
  241. # label: 'GitLab.com',
  242. # app_id: 'YOUR_APP_ID',
  243. # app_secret: 'YOUR_APP_SECRET',
  244. # args: { scope: 'api' } }
  245. # - { name: 'bitbucket',
  246. # app_id: 'YOUR_APP_ID',
  247. # app_secret: 'YOUR_APP_SECRET' }
  248. # - { name: 'saml',
  249. # label: 'Our SAML Provider',
  250. # args: {
  251. # assertion_consumer_service_url: 'https://gitlab.example.com/users/auth/saml/callback',
  252. # idp_cert_fingerprint: '43:51:43:a1:b5:fc:8b:b7:0a:3a:a9:b1:0f:66:73:a8',
  253. # idp_sso_target_url: 'https://login.example.com/idp',
  254. # issuer: 'https://gitlab.example.com',
  255. # name_identifier_format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:transient'
  256. # } }
  257. # - { name: 'crowd',
  258. # args: {
  259. # crowd_server_url: 'CROWD SERVER URL',
  260. # application_name: 'YOUR_APP_NAME',
  261. # application_password: 'YOUR_APP_PASSWORD' } }
  262. #
  263. # 4. Advanced settings
  264. # ==========================
  265. # GitLab Satellites
  266. satellites:
  267. # Relative paths are relative to Rails.root (default: tmp/repo_satellites/)
  268. path: /home/git/gitlab-satellites/
  269. timeout: 30
  270. ## Backup settings
  271. backup:
  272. path: "tmp/backups" # Relative paths are relative to Rails.root (default: tmp/backups/)
  273. # archive_permissions: 0640 # Permissions for the resulting backup.tar file (default: 0600)
  274. # keep_time: 604800 # default: 0 (forever) (in seconds)
  275. # pg_schema: public # default: nil, it means that all schemas will be backed up
  276. # upload:
  277. # # Fog storage connection settings, see http://fog.io/storage/ .
  278. # connection:
  279. # provider: AWS
  280. # region: eu-west-1
  281. # aws_access_key_id: AKIAKIAKI
  282. # aws_secret_access_key: 'secret123'
  283. # # The remote 'directory' to store your backups. For S3, this would be the bucket name.
  284. # remote_directory: 'my.s3.bucket'
  285. # # Use multipart uploads when file size reaches 100MB, see
  286. # # http://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
  287. # multipart_chunk_size: 104857600
  288. ## GitLab Shell settings
  289. gitlab_shell:
  290. path: /usr/share/gitlab-shell/
  291. # REPOS_PATH MUST NOT BE A SYMLINK!!!
  292. repos_path: /var/lib/gitlab/repositories/
  293. hooks_path: /usr/share/gitlab-shell/hooks/
  294. # File that contains the secret key for verifying access for gitlab-shell.
  295. # Default is '.gitlab_shell_secret' relative to Rails.root (i.e. root of the GitLab app).
  296. secret_file: /var/lib/gitlab/.gitlab_shell_secret
  297. # Git over HTTP
  298. upload_pack: true
  299. receive_pack: true
  300. # If you use non-standard ssh port you need to specify it
  301. ssh_port: {{ ssh_port }}
  302. ## Git settings
  303. # CAUTION!
  304. # Use the default values unless you really know what you are doing
  305. git:
  306. bin_path: /usr/bin/git
  307. # The next value is the maximum memory size grit can use
  308. # Given in number of bytes per git object (e.g. a commit)
  309. # This value can be increased if you have very large commits
  310. max_size: 20971520 # 20.megabytes
  311. # Git timeout to read a commit, in seconds
  312. timeout: 10
  313. #
  314. # 5. Extra customization
  315. # ==========================
  316. extra:
  317. ## Google analytics. Uncomment if you want it
  318. # google_analytics_id: '_your_tracking_id'
  319. ## Piwik analytics.
  320. # piwik_url: '_your_piwik_url'
  321. # piwik_site_id: '_your_piwik_site_id'
  322. rack_attack:
  323. git_basic_auth:
  324. # Rack Attack IP banning enabled
  325. # enabled: true
  326. #
  327. # Whitelist requests from 127.0.0.1 for web proxies (NGINX/Apache) with incorrect headers
  328. # ip_whitelist: ["127.0.0.1"]
  329. #
  330. # Limit the number of Git HTTP authentication attempts per IP
  331. # maxretry: 10
  332. #
  333. # Reset the auth attempt counter per IP after 60 seconds
  334. # findtime: 60
  335. #
  336. # Ban an IP for one hour (3600s) after too many auth attempts
  337. # bantime: 3600
  338. development:
  339. <<: *base
  340. test:
  341. <<: *base
  342. gravatar:
  343. enabled: true
  344. gitlab:
  345. host: localhost
  346. port: 80
  347. # When you run tests we clone and setup gitlab-shell
  348. # In order to setup it correctly you need to specify
  349. # your system username you use to run GitLab
  350. user: gitlab
  351. email_from: example@example.com
  352. email_display_name: GitLab
  353. email_reply_to: noreply@example.com
  354. satellites:
  355. path: tmp/tests/gitlab-satellites/
  356. backup:
  357. path: tmp/tests/backups
  358. gitlab_shell:
  359. path: /usr/share/gitlab-shell/
  360. repos_path: tmp/tests/repositories/
  361. hooks_path: /usr/share/gitlab-shell/hooks/
  362. secret_file: tmp/tests/gitlab-shell/.gitlab_shell_secret
  363. issues_tracker:
  364. redmine:
  365. title: "Redmine"
  366. project_url: "http://redmine/projects/:issues_tracker_id"
  367. issues_url: "http://redmine/:project_id/:issues_tracker_id/:id"
  368. new_issue_url: "http://redmine/projects/:issues_tracker_id/issues/new"
  369. ldap:
  370. enabled: false
  371. servers:
  372. main:
  373. label: ldap
  374. host: 127.0.0.1
  375. port: 3890
  376. uid: 'uid'
  377. method: 'plain' # "tls" or "ssl" or "plain"
  378. base: 'dc=example,dc=com'
  379. user_filter: ''
  380. group_base: 'ou=groups,dc=example,dc=com'
  381. admin_group: ''
  382. sync_ssh_keys: false
  383. staging:
  384. <<: *base