summaryrefslogtreecommitdiff
path: root/app/views/projects/settings/ci_cd/_autodevops_form.html.haml
blob: 31c2616d283155415ec302dbcbb868a87a01e8a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
.row
  .col-lg-12
    = form_for @project, url: project_settings_ci_cd_path(@project) do |f|
      = form_errors(@project)
      %fieldset.builds-feature.js-auto-devops-settings
        .form-group
          - message = auto_devops_warning_message(@project)
          - ci_file_formatted = '<code>.gitlab-ci.yml</code>'.html_safe
          - if message
            %p.auto-devops-warning-message.settings-message.text-center
              = message.html_safe
          = f.fields_for :auto_devops_attributes, @auto_devops do |form|
            .card.auto-devops-card
              .card-body
                .form-check
                  = form.radio_button :enabled, 'true', class: 'form-check-input js-toggle-extra-settings'
                  = form.label :enabled_true, class: 'form-check-label' do
                    %strong= s_('CICD|Enable Auto DevOps')
                  .form-text.text-muted
                    = s_('CICD|The Auto DevOps pipeline configuration will be used when there is no %{ci_file} in the project.').html_safe % { ci_file: ci_file_formatted }

            .card.auto-devops-card
              .card-body
                .form-check
                  = form.radio_button :enabled, '', class: 'form-check-input js-toggle-extra-settings'
                  = form.label :enabled_, class: 'form-check-label' do
                    %strong= s_('CICD|Instance default (%{state})') % { state: "#{Gitlab::CurrentSettings.auto_devops_enabled? ? _('enabled') : _('disabled')}" }
                  .form-text.text-muted
                    = s_('CICD|Follow the instance default to either have Auto DevOps enabled or disabled when there is no project specific %{ci_file}.').html_safe % { ci_file: ci_file_formatted }

            .card.auto-devops-card.js-extra-settings{ class: form.object&.enabled == false ? 'hidden' : nil }
              .card-body.bg-light
                = form.label :domain do
                  %strong= _('Domain')
                = form.text_field :domain, class: 'form-control', placeholder: 'domain.com'
                .form-text.text-muted
                  = s_('CICD|You need to specify a domain if you want to use Auto Review Apps and Auto Deploy stages.')
                  - if cluster_ingress_ip = cluster_ingress_ip(@project)
                    = s_('%{nip_domain} can be used as an alternative to a custom domain.').html_safe % { nip_domain: "<code>#{cluster_ingress_ip}.nip.io</code>".html_safe }
                  = link_to icon('question-circle'), help_page_path('topics/autodevops/index.md', anchor: 'auto-devops-base-domain'), target: '_blank'

                %label.prepend-top-10
                  %strong= s_('CICD|Deployment strategy')
                %p.settings-message.text-center
                  = s_('CICD|Deployment strategy needs a domain name to work correctly.')
                .form-check
                  = form.radio_button :deploy_strategy, 'continuous', class: 'form-check-input'
                  = form.label :deploy_strategy_continuous, class: 'form-check-label' do
                    %strong= s_('CICD|Continuous deployment to production')
                    = link_to icon('question-circle'), help_page_path('topics/autodevops/index.md', anchor: 'auto-deploy'), target: '_blank'
                .form-check
                  = form.radio_button :deploy_strategy, 'manual', class: 'form-check-input'
                  = form.label :deploy_strategy_manual, class: 'form-check-label' do
                    %strong= s_('CICD|Automatic deployment to staging, manual deployment to production')
                    = link_to icon('question-circle'), help_page_path('ci/environments.md', anchor: 'manually-deploying-to-environments'), target: '_blank'

            .card.auto-devops-card
              .card-body
                .form-check
                  = form.radio_button :enabled, 'false', class: 'form-check-input js-toggle-extra-settings', data: { hide_extra_settings: true }
                  = form.label :enabled_false, class: 'form-check-label' do
                    %strong= s_('CICD|Disable Auto DevOps')
                  .form-text.text-muted
                    = s_('CICD|An explicit %{ci_file} needs to be specified before you can begin using Continuous Integration and Delivery.').html_safe % { ci_file: ci_file_formatted }

          = f.submit _('Save changes'), class: "btn btn-success prepend-top-15"