summaryrefslogtreecommitdiff
path: root/app/views/projects/clusters/show.html.haml
blob: aee6f904a62c1c89dee1f244ba91dd962cac1b75 (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
67
68
69
70
- breadcrumb_title "Cluster"
- page_title _("Cluster")

- status_path = status_namespace_project_cluster_path(@cluster.project.namespace, @cluster.project, @cluster.id, format: :json) if can?(current_user, :admin_cluster, @cluster) && @cluster.on_creation?
.row.prepend-top-default.edit-cluster-form.js-edit-cluster-form{ data: { status_path: status_path,
  toggle_status: @cluster.enabled? ? 'true': 'false',
  cluster_status: @cluster.status_name,
  cluster_status_reason: @cluster.status_reason } }
  .col-sm-4
    = render 'sidebar'
  .col-sm-8
    %label.append-bottom-10{ for: 'enable-cluster-integration' }
      = s_('ClusterIntegration|Enable cluster integration')
    %p
      - if @cluster.enabled?
        - if can?(current_user, :update_cluster, @cluster)
          = s_('ClusterIntegration|Cluster integration is enabled for this project. Disabling this integration will not affect your cluster, it will only temporarily turn off GitLab\'s connection to it.')
        - else
          = s_('ClusterIntegration|Cluster integration is enabled for this project.')
      - else
        = s_('ClusterIntegration|Cluster integration is disabled for this project.')

    = form_for [@project.namespace.becomes(Namespace), @project, @cluster] do |field|
      = form_errors(@cluster)
      .form-group.append-bottom-20
        %label.append-bottom-10
          = field.hidden_field :enabled, { class: 'js-toggle-input'}

          %button{ type: 'button',
            class: "js-toggle-cluster project-feature-toggle #{'checked' unless !@cluster.enabled?} #{'disabled' unless can?(current_user, :update_cluster, @cluster)}",
            'aria-label': s_('ClusterIntegration|Toggle Cluster'),
            disabled: !can?(current_user, :update_cluster, @cluster),
            data: { 'enabled-text': 'Enabled', 'disabled-text': 'Disabled' } }

        - if can?(current_user, :update_cluster, @cluster)
          .form-group
            = field.submit s_('ClusterIntegration|Save'), class: 'btn btn-success'

    - if can?(current_user, :admin_cluster, @cluster)
      %label.append-bottom-10{ for: 'google-container-engine' }
        = s_('ClusterIntegration|Google Container Engine')
      %p
        - link_gke = link_to(s_('ClusterIntegration|Google Container Engine'), @cluster.gke_cluster_url, target: '_blank', rel: 'noopener noreferrer')
        = s_('ClusterIntegration|Manage your cluster by visiting %{link_gke}').html_safe % { link_gke: link_gke }

      .hidden.js-cluster-error.alert.alert-danger.alert-block{ role: 'alert' }
        = s_('ClusterIntegration|Something went wrong while creating your cluster on Google Container Engine')
        %p.js-error-reason

      .hidden.js-cluster-creating.alert.alert-info.alert-block{ role: 'alert' }
        = s_('ClusterIntegration|Cluster is being created on Google Container Engine...')

      .hidden.js-cluster-success.alert.alert-success.alert-block{ role: 'alert' }
        = s_('ClusterIntegration|Cluster was successfully created on Google Container Engine')

    .form_group.append-bottom-20
      %label.append-bottom-10{ for: 'cluter-name' }
        = s_('ClusterIntegration|Cluster name')
      .input-group
        %input.form-control.cluster-name{ value: @cluster.gcp_cluster_name, disabled: true }
        %span.input-group-addon.clipboard-addon
          = clipboard_button(text: @cluster.gcp_cluster_name, title: s_('ClusterIntegration|Copy cluster name'))

    - if can?(current_user, :admin_cluster, @cluster)
      .well.form_group
        %label.text-danger
          = s_('ClusterIntegration|Remove cluster integration')
        %p
          = s_('ClusterIntegration|Removing cluster integration will remove the cluster configuration you have added to this project. It will not delete your project.')
        = link_to(s_('ClusterIntegration|Remove integration'), namespace_project_cluster_path(@project.namespace, @project, @cluster.id), method: :delete, class: 'btn btn-danger', data: { confirm: "Are you sure you want to remove cluster integration from this project? This will not delete your cluster on Google Container Engine"})