From 25307dda309ede41ea2e67f16f6de25d0ec1c40e Mon Sep 17 00:00:00 2001
From: GitLab Bot
Date: Fri, 5 Nov 2021 18:12:21 +0000
Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master
---
.gitlab/issue_templates/Problem Validation.md | 8 ++
CHANGELOG.md | 9 +++
.../clusters/agents/components/show.vue | 1 +
.../javascripts/clusters/agents/index.js | 2 +-
.../google_cloud/components/app.vue | 50 ++++++++++++
.../components/incubation_banner.vue | 44 +++++++++++
.../components/service_accounts.vue | 65 +++++++++++++++
app/assets/javascripts/google_cloud/index.js | 19 +++++
.../pages/projects/google_cloud/index.js | 3 +
.../javascripts/pages/projects/project.js | 8 +-
.../components/shared/delete_button.vue | 11 ++-
app/assets/javascripts/terms/index.js | 2 +-
.../projects/cluster_agents_controller.rb | 6 ++
app/helpers/projects_helper.rb | 33 +++++---
app/models/commit_status.rb | 2 +-
app/models/merge_request_diff_commit.rb | 1 +
app/models/user.rb | 13 ++-
app/views/shared/_no_password.html.haml | 16 ++--
app/views/shared/_no_ssh.html.haml | 14 ++--
.../development/cluster_vulnerabilities.yml | 8 ++
.../development/terms_of_service_vue.yml | 2 +-
doc/administration/feature_flags.md | 6 +-
doc/administration/sidekiq.md | 14 ++++
doc/user/project/badges.md | 17 ++--
doc/user/project/wiki/group.md | 17 +++-
.../groups/graphql/get_milestones_query.rb | 56 -------------
.../fix_merge_request_diff_commit_users.rb | 53 ++++++++++---
locale/gitlab.pot | 66 +++++++++++++---
package.json | 4 +-
.../projects/show/no_password_spec.rb | 11 ++-
spec/features/projects_spec.rb | 2 +-
.../clusters/agents/components/show_spec.js | 63 ++++++++++-----
.../google_cloud/components/app_spec.js | 66 ++++++++++++++++
.../components/incubation_banner_spec.js | 60 ++++++++++++++
.../components/service_accounts_spec.js | 79 +++++++++++++++++++
.../__snapshots__/version_row_spec.js.snap | 1 +
.../project_delete_button_spec.js.snap | 4 +-
.../__snapshots__/delete_button_spec.js.snap | 4 +-
spec/helpers/projects_helper_spec.rb | 14 ++--
.../graphql/get_milestones_query_spec.rb | 35 --------
...ix_merge_request_diff_commit_users_spec.rb | 30 +++++++
spec/models/commit_status_spec.rb | 16 ++++
spec/models/user_spec.rb | 33 +++++++-
yarn.lock | 16 ++--
44 files changed, 778 insertions(+), 206 deletions(-)
create mode 100644 app/assets/javascripts/google_cloud/components/app.vue
create mode 100644 app/assets/javascripts/google_cloud/components/incubation_banner.vue
create mode 100644 app/assets/javascripts/google_cloud/components/service_accounts.vue
create mode 100644 app/assets/javascripts/google_cloud/index.js
create mode 100644 app/assets/javascripts/pages/projects/google_cloud/index.js
create mode 100644 config/feature_flags/development/cluster_vulnerabilities.yml
delete mode 100644 lib/bulk_imports/groups/graphql/get_milestones_query.rb
create mode 100644 spec/frontend/google_cloud/components/app_spec.js
create mode 100644 spec/frontend/google_cloud/components/incubation_banner_spec.js
create mode 100644 spec/frontend/google_cloud/components/service_accounts_spec.js
delete mode 100644 spec/lib/bulk_imports/groups/graphql/get_milestones_query_spec.rb
diff --git a/.gitlab/issue_templates/Problem Validation.md b/.gitlab/issue_templates/Problem Validation.md
index 5d417c5a26d..3f92510b6af 100644
--- a/.gitlab/issue_templates/Problem Validation.md
+++ b/.gitlab/issue_templates/Problem Validation.md
@@ -1,3 +1,7 @@
+
+
## Problem Statement
@@ -45,4 +49,8 @@ For example, if the solution will take a product manager, designer, and engineer
- [ ] The problem is well described and detailed with necessary requirements for product design to understand the problem
- [ ] The problem is well described and detailed with necessary requirements for engineering to understand the problem
+## Research Issue
+
+
+
/label ~"workflow::validation backlog" ~devops:: ~category: ~group::
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6c670421d88..6b8363ed543 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2293,6 +2293,15 @@ entry.
- [Remove diffs gradual load feature flag](gitlab-org/gitlab@027d7c4327b5b6205a84281239027273517bf81b) ([merge request](gitlab-org/gitlab!55478))
- [Remove partial index for Hashed Storage migration](gitlab-org/gitlab@3ed017a1023d7b0941a7606b69e6caee8d22f15c) ([merge request](gitlab-org/gitlab!62920))
+## 14.0.12 (2021-11-05)
+
+### Changed (4 changes)
+
+- [Geo: Alternate redownload and normal design sync attempts](gitlab-org/gitlab@ed34172e5c7425316480efb732a9429e93e81017) ([merge request](gitlab-org/gitlab!73722)) **GitLab Enterprise Edition**
+- [Geo: Alternate redownload and normal SSF sync attempts](gitlab-org/gitlab@c0f2f40b98c4b9fc72c21c474a2224e045263ea2) ([merge request](gitlab-org/gitlab!73722)) **GitLab Enterprise Edition**
+- [Geo: Alternate redownload and normal project syncs](gitlab-org/gitlab@6370a7258719d5eb0ad83c54383ecb7f4fd54fc2) ([merge request](gitlab-org/gitlab!73722)) **GitLab Enterprise Edition**
+- [Geo: Reduce frequency of redownload attempts](gitlab-org/gitlab@1bcd41f28733b01286a42689857f6530c0805186) ([merge request](gitlab-org/gitlab!73722)) **GitLab Enterprise Edition**
+
## 14.0.11 (2021-09-23)
### Fixed (1 change)
diff --git a/app/assets/javascripts/clusters/agents/components/show.vue b/app/assets/javascripts/clusters/agents/components/show.vue
index 5c672d288c5..afbba9d1f7c 100644
--- a/app/assets/javascripts/clusters/agents/components/show.vue
+++ b/app/assets/javascripts/clusters/agents/components/show.vue
@@ -128,6 +128,7 @@ export default {
+
diff --git a/app/assets/javascripts/clusters/agents/index.js b/app/assets/javascripts/clusters/agents/index.js
index bcb5b271203..426d8d83847 100644
--- a/app/assets/javascripts/clusters/agents/index.js
+++ b/app/assets/javascripts/clusters/agents/index.js
@@ -1,7 +1,7 @@
import Vue from 'vue';
import VueApollo from 'vue-apollo';
import createDefaultClient from '~/lib/graphql';
-import AgentShowPage from './components/show.vue';
+import AgentShowPage from 'ee_else_ce/clusters/agents/components/show.vue';
Vue.use(VueApollo);
diff --git a/app/assets/javascripts/google_cloud/components/app.vue b/app/assets/javascripts/google_cloud/components/app.vue
new file mode 100644
index 00000000000..1e5be9df019
--- /dev/null
+++ b/app/assets/javascripts/google_cloud/components/app.vue
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/assets/javascripts/google_cloud/components/incubation_banner.vue b/app/assets/javascripts/google_cloud/components/incubation_banner.vue
new file mode 100644
index 00000000000..652b8c1aecb
--- /dev/null
+++ b/app/assets/javascripts/google_cloud/components/incubation_banner.vue
@@ -0,0 +1,44 @@
+
+
+
+
+ {{ __('This is an experimental feature developed by GitLab Incubation Engineering.') }}
+
+
+ {{ content }}
+
+
+ {{ content }}
+
+
+ {{ content }}
+
+
+
+
diff --git a/app/assets/javascripts/google_cloud/components/service_accounts.vue b/app/assets/javascripts/google_cloud/components/service_accounts.vue
new file mode 100644
index 00000000000..b70b25a5dc3
--- /dev/null
+++ b/app/assets/javascripts/google_cloud/components/service_accounts.vue
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
{{ __('Service Accounts') }}
+
{{ __('Service Accounts keys authorize GitLab to deploy your Google Cloud project') }}
+
+
+
+ {{ value ? '✔' : __('Not found') }}
+
+
+ {{ value ? '✔' : __('Not found') }}
+
+
+
+
+ {{ __('Create service account') }}
+
+
+
+
diff --git a/app/assets/javascripts/google_cloud/index.js b/app/assets/javascripts/google_cloud/index.js
new file mode 100644
index 00000000000..a2838605219
--- /dev/null
+++ b/app/assets/javascripts/google_cloud/index.js
@@ -0,0 +1,19 @@
+import Vue from 'vue';
+import App from './components/app.vue';
+
+const elementRenderer = (element, props = {}) => (createElement) =>
+ createElement(element, { props });
+
+export default () => {
+ const root = document.querySelector('#js-google-cloud');
+
+ // uncomment this once backend is ready
+ // const dataset = JSON.parse(root.getAttribute('data'));
+ const mockDataset = {
+ createServiceAccountUrl: '#create-url',
+ serviceAccounts: [],
+ emptyIllustrationUrl:
+ 'https://gitlab.com/gitlab-org/gitlab-svgs/-/raw/main/illustrations/pipelines_empty.svg',
+ };
+ return new Vue({ el: root, render: elementRenderer(App, mockDataset) });
+};
diff --git a/app/assets/javascripts/pages/projects/google_cloud/index.js b/app/assets/javascripts/pages/projects/google_cloud/index.js
new file mode 100644
index 00000000000..4506ea8efd1
--- /dev/null
+++ b/app/assets/javascripts/pages/projects/google_cloud/index.js
@@ -0,0 +1,3 @@
+import initGoogleCloud from '~/google_cloud/index';
+
+initGoogleCloud();
diff --git a/app/assets/javascripts/pages/projects/project.js b/app/assets/javascripts/pages/projects/project.js
index 9e93f709937..a26aeeb6db4 100644
--- a/app/assets/javascripts/pages/projects/project.js
+++ b/app/assets/javascripts/pages/projects/project.js
@@ -23,14 +23,14 @@ export default class Project {
});
}
- $('.hide-no-ssh-message').on('click', function (e) {
+ $('.js-hide-no-ssh-message').on('click', function (e) {
Cookies.set('hide_no_ssh_message', 'false');
- $(this).parents('.no-ssh-key-message').remove();
+ $(this).parents('.js-no-ssh-key-message').remove();
return e.preventDefault();
});
- $('.hide-no-password-message').on('click', function (e) {
+ $('.js-hide-no-password-message').on('click', function (e) {
Cookies.set('hide_no_password_message', 'false');
- $(this).parents('.no-password-message').remove();
+ $(this).parents('.js-no-password-message').remove();
return e.preventDefault();
});
$('.hide-auto-devops-implicitly-enabled-banner').on('click', function (e) {
diff --git a/app/assets/javascripts/projects/components/shared/delete_button.vue b/app/assets/javascripts/projects/components/shared/delete_button.vue
index 525ea462847..2e46f437ace 100644
--- a/app/assets/javascripts/projects/components/shared/delete_button.vue
+++ b/app/assets/javascripts/projects/components/shared/delete_button.vue
@@ -1,5 +1,5 @@