summaryrefslogtreecommitdiff
path: root/lib/sidebars/projects/menus/infrastructure_menu.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sidebars/projects/menus/infrastructure_menu.rb')
-rw-r--r--lib/sidebars/projects/menus/infrastructure_menu.rb17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/sidebars/projects/menus/infrastructure_menu.rb b/lib/sidebars/projects/menus/infrastructure_menu.rb
index e26bb2237e6..92e9cbb7040 100644
--- a/lib/sidebars/projects/menus/infrastructure_menu.rb
+++ b/lib/sidebars/projects/menus/infrastructure_menu.rb
@@ -11,6 +11,7 @@ module Sidebars
add_item(kubernetes_menu_item)
add_item(serverless_menu_item)
add_item(terraform_menu_item)
+ add_item(google_cloud_menu_item)
true
end
@@ -87,6 +88,22 @@ module Sidebars
item_id: :terraform
)
end
+
+ def google_cloud_menu_item
+ feature_is_enabled = Feature.enabled?(:incubation_5mp_google_cloud)
+ user_has_permissions = can?(context.current_user, :manage_project_google_cloud, context.project)
+
+ unless feature_is_enabled && user_has_permissions
+ return ::Sidebars::NilMenuItem.new(item_id: :incubation_5mp_google_cloud)
+ end
+
+ ::Sidebars::MenuItem.new(
+ title: _('Google Cloud'),
+ link: project_google_cloud_index_path(context.project),
+ active_routes: {},
+ item_id: :google_cloud
+ )
+ end
end
end
end