Commit 7c06b899 authored by Matt Kasa's avatar Matt Kasa Committed by Thong Kuah

Hide Cloud Run on GKE behind a feature flag

Currently creating a cluster using Cloud Run on
GKE results in a cluster that serverless
functions cannot be deployed to due to the issue
described in:
https://gitlab.com/gitlab-org/gitlabktl/issues/54

This hides the feature behind a feature flag until
that issue can be addressed in either gitlabktl or
upstream in the tm cli.
parent 160b5256
...@@ -9,5 +9,9 @@ module Clusters ...@@ -9,5 +9,9 @@ module Clusters
def feature_available?(feature) def feature_available?(feature)
::Feature.enabled?(feature, default_enabled: true) ::Feature.enabled?(feature, default_enabled: true)
end end
def flipper_id
self.class.to_s
end
end end
end end
...@@ -64,12 +64,13 @@ ...@@ -64,12 +64,13 @@
%p.form-text.text-muted %p.form-text.text-muted
= s_('ClusterIntegration|Learn more about %{help_link_start_machine_type}machine types%{help_link_end} and %{help_link_start_pricing}pricing%{help_link_end}.').html_safe % { help_link_start_machine_type: help_link_start % { url: machine_type_link_url }, help_link_start_pricing: help_link_start % { url: pricing_link_url }, help_link_end: help_link_end } = s_('ClusterIntegration|Learn more about %{help_link_start_machine_type}machine types%{help_link_end} and %{help_link_start_pricing}pricing%{help_link_end}.').html_safe % { help_link_start_machine_type: help_link_start % { url: machine_type_link_url }, help_link_start_pricing: help_link_start % { url: pricing_link_url }, help_link_end: help_link_end }
.form-group - if Feature.enabled?(:create_cloud_run_clusters, clusterable)
= provider_gcp_field.check_box :cloud_run, { label: s_('ClusterIntegration|Enable Cloud Run on GKE (beta)'), .form-group
label_class: 'label-bold' } = provider_gcp_field.check_box :cloud_run, { label: s_('ClusterIntegration|Enable Cloud Run on GKE (beta)'),
.form-text.text-muted label_class: 'label-bold' }
= s_('ClusterIntegration|Uses the Cloud Run, Istio, and HTTP Load Balancing addons for this cluster.') .form-text.text-muted
= link_to _('More information'), help_page_path('user/project/clusters/index.md', anchor: 'cloud-run-on-gke'), target: '_blank' = s_('ClusterIntegration|Uses the Cloud Run, Istio, and HTTP Load Balancing addons for this cluster.')
= link_to _('More information'), help_page_path('user/project/clusters/index.md', anchor: 'cloud-run-on-gke'), target: '_blank'
.form-group .form-group
= field.check_box :managed, { label: s_('ClusterIntegration|GitLab-managed cluster'), = field.check_box :managed, { label: s_('ClusterIntegration|GitLab-managed cluster'),
......
# frozen_string_literal: true
require 'spec_helper'
describe 'clusters/clusters/gcp/_form' do
let(:admin) { create(:admin) }
let(:environment) { create(:environment) }
let(:gcp_cluster) { create(:cluster, :provided_by_gcp) }
let(:clusterable) { ClusterablePresenter.fabricate(environment.project, current_user: admin) }
before do
assign(:environment, environment)
assign(:gcp_cluster, gcp_cluster)
allow(view).to receive(:clusterable).and_return(clusterable)
allow(view).to receive(:url_for).and_return('#')
allow(view).to receive(:token_in_session).and_return('')
end
context 'with all feature flags enabled' do
it 'has a cloud run checkbox' do
render
expect(rendered).to have_selector("input[id='cluster_provider_gcp_attributes_cloud_run']")
end
end
context 'with cloud run feature flag disabled' do
before do
stub_feature_flags(create_cloud_run_clusters: false)
end
it 'does not have a cloud run checkbox' do
render
expect(rendered).not_to have_selector("input[id='cluster_provider_gcp_attributes_cloud_run']")
end
end
end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment