mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-21 02:26:12 +10:00
This removes the need for Sidekiq and any overhead/problems introduced by TCP. There are a few things to take into account: 1. When writing data to InfluxDB you may still get an error if the server becomes unavailable during the write. Because of this we're catching all exceptions and just ignore them (for now). 2. Writing via UDP apparently requires the timestamp to be in nanoseconds. Without this data either isn't written properly. 3. Due to the restrictions on UDP buffer sizes we're writing metrics one by one, instead of writing all of them at once.
238 lines
11 KiB
Plaintext
238 lines
11 KiB
Plaintext
= form_for @application_setting, url: admin_application_settings_path, html: { class: 'form-horizontal fieldset-form' } do |f|
|
|
- if @application_setting.errors.any?
|
|
#error_explanation
|
|
.alert.alert-danger
|
|
- @application_setting.errors.full_messages.each do |msg|
|
|
%p= msg
|
|
|
|
%fieldset
|
|
%legend Visibility and Access Controls
|
|
.form-group
|
|
= f.label :default_branch_protection, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.select :default_branch_protection, options_for_select(Gitlab::Access.protection_options, @application_setting.default_branch_protection), {}, class: 'form-control'
|
|
.form-group.project-visibility-level-holder
|
|
= f.label :default_project_visibility, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= render('shared/visibility_radios', model_method: :default_project_visibility, form: f, selected_level: @application_setting.default_project_visibility, form_model: Project)
|
|
.form-group.project-visibility-level-holder
|
|
= f.label :default_snippet_visibility, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= render('shared/visibility_radios', model_method: :default_snippet_visibility, form: f, selected_level: @application_setting.default_snippet_visibility, form_model: PersonalSnippet)
|
|
.form-group
|
|
= f.label :restricted_visibility_levels, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
- data_attrs = { toggle: 'buttons' }
|
|
.btn-group{ data: data_attrs }
|
|
- restricted_level_checkboxes('restricted-visibility-help').each do |level|
|
|
= level
|
|
%span.help-block#restricted-visibility-help Selected levels cannot be used by non-admin users for projects or snippets
|
|
.form-group
|
|
= f.label :import_sources, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
- data_attrs = { toggle: 'buttons' }
|
|
.btn-group{ data: data_attrs }
|
|
- import_sources_checkboxes('import-sources-help').each do |source|
|
|
= source
|
|
%span.help-block#import-sources-help
|
|
Enabled sources for code import during project creation. OmniAuth must be configured for GitHub
|
|
= link_to "(?)", help_page_path("integration", "github")
|
|
, Bitbucket
|
|
= link_to "(?)", help_page_path("integration", "bitbucket")
|
|
and GitLab.com
|
|
= link_to "(?)", help_page_path("integration", "gitlab")
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :version_check_enabled do
|
|
= f.check_box :version_check_enabled
|
|
Version check enabled
|
|
.form-group
|
|
= f.label :admin_notification_email, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :admin_notification_email, class: 'form-control'
|
|
.help-block
|
|
Abuse reports will be sent to this address if it is set. Abuse reports are always available in the admin area.
|
|
|
|
%fieldset
|
|
%legend Account and Limit Settings
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :gravatar_enabled do
|
|
= f.check_box :gravatar_enabled
|
|
Gravatar enabled
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :twitter_sharing_enabled do
|
|
= f.check_box :twitter_sharing_enabled, :'aria-describedby' => 'twitter_help_block'
|
|
Twitter enabled
|
|
%span.help-block#twitter_help_block Show users a button to share their newly created public or internal projects on twitter
|
|
.form-group
|
|
= f.label :default_projects_limit, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :default_projects_limit, class: 'form-control'
|
|
.form-group
|
|
= f.label :max_attachment_size, 'Maximum attachment size (MB)', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :max_attachment_size, class: 'form-control'
|
|
.form-group
|
|
= f.label :session_expire_delay, 'Session duration (minutes)', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :session_expire_delay, class: 'form-control'
|
|
%span.help-block#session_expire_delay_help_block GitLab restart is required to apply changes
|
|
.form-group
|
|
= f.label :user_oauth_applications, 'User OAuth applications', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
.checkbox
|
|
= f.label :user_oauth_applications do
|
|
= f.check_box :user_oauth_applications
|
|
Allow users to register any application to use GitLab as an OAuth provider
|
|
|
|
%fieldset
|
|
%legend Sign-in Restrictions
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :signup_enabled do
|
|
= f.check_box :signup_enabled
|
|
Sign-up enabled
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :signin_enabled do
|
|
= f.check_box :signin_enabled
|
|
Sign-in enabled
|
|
.form-group
|
|
= f.label :two_factor_authentication, 'Two-Factor authentication', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
.checkbox
|
|
= f.label :require_two_factor_authentication do
|
|
= f.check_box :require_two_factor_authentication
|
|
Require all users to setup Two-Factor authentication
|
|
.form-group
|
|
= f.label :two_factor_authentication, 'Two-Factor grace period (hours)', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :two_factor_grace_period, min: 0, class: 'form-control', placeholder: '0'
|
|
.help-block Amount of time (in hours) that users are allowed to skip forced configuration of two-factor authentication
|
|
.form-group
|
|
= f.label :restricted_signup_domains, 'Restricted domains for sign-ups', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_area :restricted_signup_domains_raw, placeholder: 'domain.com', class: 'form-control'
|
|
.help-block Only users with e-mail addresses that match these domain(s) will be able to sign-up. Wildcards allowed. Use separate lines for multiple entries. Ex: domain.com, *.domain.com
|
|
.form-group
|
|
= f.label :home_page_url, 'Home page URL', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :home_page_url, class: 'form-control', placeholder: 'http://company.example.com', :'aria-describedby' => 'home_help_block'
|
|
%span.help-block#home_help_block We will redirect non-logged in users to this page
|
|
.form-group
|
|
= f.label :after_sign_out_path, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :after_sign_out_path, class: 'form-control', placeholder: 'http://company.example.com', :'aria-describedby' => 'after_sign_out_path_help_block'
|
|
%span.help-block#after_sign_out_path_help_block We will redirect users to this page after they sign out
|
|
.form-group
|
|
= f.label :sign_in_text, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_area :sign_in_text, class: 'form-control', rows: 4
|
|
.help-block Markdown enabled
|
|
.form-group
|
|
= f.label :help_page_text, class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_area :help_page_text, class: 'form-control', rows: 4
|
|
.help-block Markdown enabled
|
|
|
|
%fieldset
|
|
%legend Continuous Integration
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :shared_runners_enabled do
|
|
= f.check_box :shared_runners_enabled
|
|
Enable shared runners for a new projects
|
|
|
|
.form-group
|
|
= f.label :max_artifacts_size, 'Maximum artifacts size (MB)', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :max_artifacts_size, class: 'form-control'
|
|
|
|
%fieldset
|
|
%legend Metrics
|
|
%p
|
|
These settings require a restart to take effect.
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :metrics_enabled do
|
|
= f.check_box :metrics_enabled
|
|
Enable InfluxDB Metrics
|
|
.form-group
|
|
= f.label :metrics_host, 'InfluxDB host', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :metrics_host, class: 'form-control', placeholder: 'influxdb.example.com'
|
|
.form-group
|
|
= f.label :metrics_port, 'InfluxDB port', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :metrics_port, class: 'form-control', placeholder: '8089'
|
|
.help-block
|
|
The UDP port to use for connecting to InfluxDB. InfluxDB requires that
|
|
your server configuration specifies a database to store data in when
|
|
sending messages to this port, without it metrics data will not be
|
|
saved.
|
|
.form-group
|
|
= f.label :metrics_username, 'InfluxDB username', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :metrics_username, class: 'form-control'
|
|
.form-group
|
|
= f.label :metrics_password, 'InfluxDB password', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :metrics_password, class: 'form-control'
|
|
.form-group
|
|
= f.label :metrics_pool_size, 'Connection pool size', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :metrics_pool_size, class: 'form-control'
|
|
.help-block
|
|
The amount of InfluxDB connections to open. Connections are opened
|
|
lazily. Users using multi-threaded application servers should ensure
|
|
enough connections are available (at minimum the amount of application
|
|
server threads).
|
|
.form-group
|
|
= f.label :metrics_timeout, 'Connection timeout', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :metrics_timeout, class: 'form-control'
|
|
.help-block
|
|
The amount of seconds after which an InfluxDB connection will time
|
|
out.
|
|
.form-group
|
|
= f.label :metrics_method_call_threshold, 'Method Call Threshold (ms)', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.number_field :metrics_method_call_threshold, class: 'form-control'
|
|
.help-block
|
|
A method call is only tracked when it takes longer to complete than
|
|
the given amount of milliseconds.
|
|
|
|
%fieldset
|
|
%legend Spam and Anti-bot Protection
|
|
.form-group
|
|
.col-sm-offset-2.col-sm-10
|
|
.checkbox
|
|
= f.label :recaptcha_enabled do
|
|
= f.check_box :recaptcha_enabled
|
|
Enable reCAPTCHA
|
|
%span.help-block#recaptcha_help_block Helps preventing bots from creating accounts
|
|
|
|
.form-group
|
|
= f.label :recaptcha_site_key, 'reCAPTCHA Site Key', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :recaptcha_site_key, class: 'form-control'
|
|
.help-block
|
|
Generate site and private keys here:
|
|
%a{ href: 'http://www.google.com/recaptcha', target: 'blank'} http://www.google.com/recaptcha
|
|
.form-group
|
|
= f.label :recaptcha_private_key, 'reCAPTCHA Private Key', class: 'control-label col-sm-2'
|
|
.col-sm-10
|
|
= f.text_field :recaptcha_private_key, class: 'form-control'
|
|
|
|
.form-actions
|
|
= f.submit 'Save', class: 'btn btn-primary'
|