summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 07:33:21 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2022-05-19 07:33:21 +0000
commit36a59d088eca61b834191dacea009677a96c052f (patch)
treee4f33972dab5d8ef79e3944a9f403035fceea43f /data
parenta1761f15ec2cae7c7f7bbda39a75494add0dfd6f (diff)
downloadgitlab-ce-36a59d088eca61b834191dacea009677a96c052f.tar.gz
Add latest changes from gitlab-org/gitlab@15-0-stable-eev15.0.0-rc42
Diffstat (limited to 'data')
-rw-r--r--data/deprecations/14-0-nfs-fot-git-repository-storage.yml2
-rw-r--r--data/deprecations/14-10-dependency-scanning-default-java-version.yml16
-rw-r--r--data/deprecations/14-3-repository-push-audit-events.yml4
-rw-r--r--data/deprecations/14-5-certificate-based-integration-with-kubernetes-saas.yml19
-rw-r--r--data/deprecations/14-5-certificate-based-integration-with-kubernetes.yml22
-rw-r--r--data/deprecations/14-5-deprecate-convert-instance-runner-to-project.yml8
-rw-r--r--data/deprecations/14-5-deprecate-defaultMergeCommitMessageWithDescription-graphql.yml3
-rw-r--r--data/deprecations/14-5-deprecate-sles-12sp2.yml2
-rw-r--r--data/deprecations/14-5-remove-package-pipelines-api.yml6
-rw-r--r--data/deprecations/14-6-deprecate-types.yml3
-rw-r--r--data/deprecations/14-6-job_char_limit.yml3
-rw-r--r--data/deprecations/14-6-pipeline-fields-package-deprecation.yml13
-rw-r--r--data/deprecations/14-7-deprecate-static-site-editor.yml4
-rw-r--r--data/deprecations/14-8-deprecate-projectFingerprint-from-PipelineSecurityReportFinding-GraphQL.yml2
-rw-r--r--data/deprecations/14-8-enforce-pat-expiration.yml1
-rw-r--r--data/deprecations/14-8-enforce-ssh-expiration.yml1
-rw-r--r--data/deprecations/14-8-graphql-ids.yml2
-rw-r--r--data/deprecations/14-8-grpc-proxy.yml2
-rw-r--r--data/deprecations/14-8-protect-cns-chs.yml2
-rw-r--r--data/deprecations/14-8-runner-api-active-field-replaced-with-paused-breaking-change.yml4
-rw-r--r--data/deprecations/14-8-runner-api-status-filter-does-accept-active-or-paused.yml2
-rw-r--r--data/deprecations/14-8-sast-analyzer-removals.yml11
-rw-r--r--data/deprecations/14-9-deprecate-composer-download-permissions.yml5
-rw-r--r--data/deprecations/14-9-deprecate-permissions-change-package-settings.yml1
-rw-r--r--data/deprecations/14-9-deprecate-testcoveragesetting.yml3
-rw-r--r--data/deprecations/14-9-deprecation-htpassword-authentication-container-registry.yml (renamed from data/deprecations/templates/14-9-deprecation-htpassword-authentication-container-registry.yml)1
-rw-r--r--data/deprecations/15-0-JTW_v2_update.yml28
-rw-r--r--data/deprecations/15-0-ci-cd-settings-update-mutation-renamed.yml19
-rw-r--r--data/deprecations/15-0-deprecate-postgresql-12.yml19
-rw-r--r--data/deprecations/15-0-oauth-noexpiry.yml3
-rw-r--r--data/deprecations/15-0-oauth.yml3
-rw-r--r--data/deprecations/15-0-runner-status-legacy-mode.yml18
-rw-r--r--data/deprecations/15-2-deprecation-vulnerability-report-state-sort.yml19
-rw-r--r--data/deprecations/distribution_deprecations_14-4.yml1
-rw-r--r--data/deprecations/templates/_deprecation_template.md.erb11
-rw-r--r--data/deprecations/templates/example.yml20
-rw-r--r--data/removals/14_0/removal_enablement_pg11.yml4
-rw-r--r--data/removals/14_10/14-10-package-permissions-composer-change.yml12
-rw-r--r--data/removals/15_0/15-0-Legacy-approval-status-names-from-License-Compliance-API.yml11
-rw-r--r--data/removals/15_0/15-0-Pseudonymizer.yml13
-rw-r--r--data/removals/15_0/15-0-Retire-js-analyzer.yml13
-rw-r--r--data/removals/15_0/15-0-SLES-12-SP2.yml10
-rw-r--r--data/removals/15_0/15-0-advanced-search-elasticsearch-6-8.yml16
-rw-r--r--data/removals/15_0/15-0-bundler-audit.yml13
-rw-r--r--data/removals/15_0/15-0-container-registry-htpasswd.yml11
-rw-r--r--data/removals/15_0/15-0-custom_hooks_dir.yml12
-rw-r--r--data/removals/15_0/15-0-database-deprecate-legacy-database-conf.yml17
-rw-r--r--data/removals/15_0/15-0-dependency-scanning-default-java-version.yml15
-rw-r--r--data/removals/15_0/15-0-dependency-scanning-python-image.yml11
-rw-r--r--data/removals/15_0/15-0-ds-default-analyzers.yml12
-rw-r--r--data/removals/15_0/15-0-geo-remove-db-rake-tasks.yml31
-rw-r--r--data/removals/15_0/15-0-geo-remove-promote-db.yml13
-rw-r--r--data/removals/15_0/15-0-geo-remove-promote-to-primary-node.yml13
-rw-r--r--data/removals/15_0/15-0-gitaly-internal-socket-dir.yml13
-rw-r--r--data/removals/15_0/15-0-managed-cluster-applications.yml12
-rw-r--r--data/removals/15_0/15-0-oauth-implicit-grant.yml16
-rw-r--r--data/removals/15_0/15-0-oauth-tokens-no-expiry.yml18
-rw-r--r--data/removals/15_0/15-0-omniauth-kerberos-gem.yml21
-rw-r--r--data/removals/15_0/15-0-package-container-registry-group-api.yml14
-rw-r--r--data/removals/15_0/15-0-package-settings-permissions.yml18
-rw-r--r--data/removals/15_0/15-0-praefect-database-no-proxy.yml11
-rw-r--r--data/removals/15_0/15-0-praefect-virtual-storage.yml9
-rw-r--r--data/removals/15_0/15-0-protect-cns-chs.yml21
-rw-r--r--data/removals/15_0/15-0-protect-vulnerability-check.yml18
-rw-r--r--data/removals/15_0/15-0-removal-artifacts-keyword.yml16
-rw-r--r--data/removals/15_0/15-0-removal-testcoveragesetting.yml14
-rw-r--r--data/removals/15_0/15-0-remove-background-upload-object-storage.yml20
-rw-r--r--data/removals/15_0/15-0-remove-dependency-proxy-feature-flag.yml13
-rw-r--r--data/removals/15_0/15-0-remove-replicaiton-detail-routes.yml12
-rw-r--r--data/removals/15_0/15-0-remove-versions-packagetype.yml13
-rw-r--r--data/removals/15_0/15-0-remove_ff_push_rules_supersede_code_owners.yml16
-rw-r--r--data/removals/15_0/15-0-request-profiling.yml18
-rw-r--r--data/removals/15_0/15-0-runner-api-status-renames-not_connected.yml (renamed from data/deprecations/14-6-runner-api-status-renames-not_connected.yml)3
-rw-r--r--data/removals/15_0/15-0-runner-disable-strict-host-key-check.yml14
-rw-r--r--data/removals/15_0/15-0-runner_api_new_stale_status_breaking_change.yml (renamed from data/deprecations/14-6-runner_api_new_stale_status_breaking_change.yml)7
-rw-r--r--data/removals/15_0/15-0-sast-dotnet-21.yml33
-rw-r--r--data/removals/15_0/15-0-sast-spotbugs-java-8.yml28
-rw-r--r--data/removals/15_0/15-0-secret-detection-configurations.yml30
-rw-r--r--data/removals/15_0/15-0-serverless.yml17
-rw-r--r--data/removals/15_0/15-0-sidekiq-metrics-health-check-config.yml24
-rw-r--r--data/removals/15_0/15-0-static-site-editor.yml17
-rw-r--r--data/removals/15_0/15-0-tracing.yml16
-rw-r--r--data/removals/15_0/15-0-type.yml10
-rw-r--r--data/removals/15_0/15_0-logging.yml16
-rw-r--r--data/removals/15_0/15_0-remove-pipelines-from-version-field.yml16
-rw-r--r--data/removals/15_0/removal-manage-premium-required-pipelines.yml18
-rw-r--r--data/removals/15_0/removal_manage_ repository_push_audit_event.yml17
-rw-r--r--data/removals/15_0/removal_manage_optional_pat_expiration.yml13
-rw-r--r--data/removals/15_0/removal_manage_ssh_expiration.yml13
-rw-r--r--data/removals/15_0/removal_manage_status_check_passed_status.yml25
-rw-r--r--data/removals/templates/example.yml20
-rw-r--r--data/whats_new/202107220001_14_1.yml12
-rw-r--r--data/whats_new/202109200001_14_03.yml2
-rw-r--r--data/whats_new/2021111800001_14_05.yml2
94 files changed, 1039 insertions, 117 deletions
diff --git a/data/deprecations/14-0-nfs-fot-git-repository-storage.yml b/data/deprecations/14-0-nfs-fot-git-repository-storage.yml
index 28e58a0c60d..5a0fc88dad9 100644
--- a/data/deprecations/14-0-nfs-fot-git-repository-storage.yml
+++ b/data/deprecations/14-0-nfs-fot-git-repository-storage.yml
@@ -16,7 +16,7 @@
We encourage customers currently using NFS for Git repositories to plan their migration by reviewing our documentation on [migrating to Gitaly Cluster](https://docs.gitlab.com/ee/administration/gitaly/index.html#migrate-to-gitaly-cluster).
reporter: mjwood
- stage: create # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ stage: create
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-10-dependency-scanning-default-java-version.yml b/data/deprecations/14-10-dependency-scanning-default-java-version.yml
new file mode 100644
index 00000000000..c589f2bb3ac
--- /dev/null
+++ b/data/deprecations/14-10-dependency-scanning-default-java-version.yml
@@ -0,0 +1,16 @@
+- name: "Dependency Scanning default Java version changed to 17"
+ announcement_milestone: "14.10"
+ announcement_date: "2022-04-22"
+ removal_milestone: "15.0"
+ removal_date: "2021-05-22"
+ breaking_change: true
+ reporter: NicoleSchwartz
+ body: |
+ In GitLab 15.0, for Dependency Scanning, the default version of Java that the scanner expects will be updated from 11 to 17. Java 17 is [the most up-to-date Long Term Support (LTS) version](https://en.wikipedia.org/wiki/Java_version_history). Dependency scanning continues to support the same [range of versions (8, 11, 13, 14, 15, 16, 17)](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#supported-languages-and-package-managers), only the default version is changing. If your project uses the previous default of Java 11, be sure to [set the `DS_Java_Version` variable to match](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#configuring-specific-analyzers-used-by-dependency-scanning).
+# The following items are not published on the docs page, but may be used in the future.
+ stage: secure # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: ultimate # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#configuring-specific-analyzers-used-by-dependency-scanning
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/14-3-repository-push-audit-events.yml b/data/deprecations/14-3-repository-push-audit-events.yml
index 587dc98d03c..033fa957320 100644
--- a/data/deprecations/14-3-repository-push-audit-events.yml
+++ b/data/deprecations/14-3-repository-push-audit-events.yml
@@ -5,7 +5,7 @@
removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
breaking_change: true
body: | # Do not modify this line, instead modify the lines below.
- Audit events for [repository events](https://docs.gitlab.com/ee/administration/audit_events.html#repository-push-deprecated) are now deprecated and will be removed in GitLab 15.0.
+ Audit events for [repository events](https://docs.gitlab.com/ee/administration/audit_events.html#removed-events) are now deprecated and will be removed in GitLab 15.0.
These events have always been disabled by default and had to be manually enabled with a
feature flag. Enabling them can cause too many events to be generated which can
@@ -13,4 +13,4 @@
stage: Manage
tiers: Premium
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/337993
- documentation_url: https://docs.gitlab.com/ee/administration/audit_events.html#repository-push-deprecated
+ documentation_url: https://docs.gitlab.com/ee/administration/audit_events.html#removed-events
diff --git a/data/deprecations/14-5-certificate-based-integration-with-kubernetes-saas.yml b/data/deprecations/14-5-certificate-based-integration-with-kubernetes-saas.yml
new file mode 100644
index 00000000000..774b41a4170
--- /dev/null
+++ b/data/deprecations/14-5-certificate-based-integration-with-kubernetes-saas.yml
@@ -0,0 +1,19 @@
+- name: "SaaS certificate-based integration with Kubernetes"
+ announcement_milestone: "14.5"
+ announcement_date: "2021-11-15"
+ removal_milestone: "15.6"
+ removal_date: "2022-11-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: |
+ The certificate-based integration with Kubernetes will be [deprecated and removed](https://about.gitlab.com/blog/2021/11/15/deprecating-the-cert-based-kubernetes-integration/). As a GitLab SaaS customer, on new namespaces, you will no longer be able to integrate GitLab and your cluster using the certificate-based approach as of GitLab 15.0. The integration for current users will be enabled per namespace. The integrations are expected to be switched off completely on GitLab SaaS around 2022 November 22.
+
+ For a more robust, secure, forthcoming, and reliable integration with Kubernetes, we recommend you use the
+ [agent for Kubernetes](https://docs.gitlab.com/ee/user/clusters/agent/) to connect Kubernetes clusters with GitLab. [How do I migrate?](https://docs.gitlab.com/ee/user/infrastructure/clusters/migrate_to_gitlab_agent.html)
+
+ For updates and details about this deprecation, follow [this epic](https://gitlab.com/groups/gitlab-org/configure/-/epics/8).
+
+ GitLab self-managed customers can still use the feature [with a feature flag](https://docs.gitlab.com/ee/update/deprecations.html#self-managed-certificate-based-integration-with-kubernetes).
+ stage: Configure
+ tiers: [Free, Premium, Ultimate]
+ issue_url: 'https://gitlab.com/groups/gitlab-org/configure/-/epics/8'
+ documentation_url: 'https://docs.gitlab.com/ee/user/infrastructure/clusters/#certificate-based-kubernetes-integration-deprecated'
diff --git a/data/deprecations/14-5-certificate-based-integration-with-kubernetes.yml b/data/deprecations/14-5-certificate-based-integration-with-kubernetes.yml
index 5cf9354cd05..6ab678c4199 100644
--- a/data/deprecations/14-5-certificate-based-integration-with-kubernetes.yml
+++ b/data/deprecations/14-5-certificate-based-integration-with-kubernetes.yml
@@ -1,27 +1,21 @@
-- name: "Certificate-based integration with Kubernetes"
+- name: "Self-managed certificate-based integration with Kubernetes"
announcement_milestone: "14.5"
announcement_date: "2021-11-15"
- removal_milestone: "15.6"
- removal_date: "2022-11-22" # the date of the milestone release when this feature is planned to be removed
+ removal_milestone: "16.0"
+ removal_date: "2023-05-22" # the date of the milestone release when this feature is planned to be removed
breaking_change: true
body: |
- [The certificate-based integration with Kubernetes will be deprecated and removed](https://about.gitlab.com/blog/2021/11/15/deprecating-the-cert-based-kubernetes-integration/).
+ The certificate-based integration with Kubernetes [will be deprecated and removed](https://about.gitlab.com/blog/2021/11/15/deprecating-the-cert-based-kubernetes-integration/).
- If you are a self-managed customer, in GitLab 15.0, a feature flag will be introduced so you can keep
- certificate-based integration enabled. The flag will be disabled by default.
- The flag and the related code will be removed in GitLab 15.6.
+ As a self-managed customer, we are introducing a feature flag in GitLab 15.0 so you can keep your certificate-based integration enabled. However, the feature flag will be disabled by default, so this change is a **breaking change**.
- Until the final removal in 15.6, features built on the integration will continue to work, and
- GitLab will continue to fix security and critical issues.
-
- If you use GitLab.com, certificate-based integrations will cease functioning in 15.0.
+ In GitLab 16.0 we will remove both the feature and its related code. Until the final removal in 16.0, features built on this integration will continue to work, if you enable the feature flag. Until the feature is removed, GitLab will continue to fix security and critical issues as they arise.
For a more robust, secure, forthcoming, and reliable integration with Kubernetes, we recommend you use the
- [agent for Kubernetes](https://docs.gitlab.com/ee/user/clusters/agent/) to connect Kubernetes clusters with GitLab.
- See the documentation for [how to migrate](https://docs.gitlab.com/ee/user/infrastructure/clusters/migrate_to_gitlab_agent.html).
+ [agent for Kubernetes](https://docs.gitlab.com/ee/user/clusters/agent/) to connect Kubernetes clusters with GitLab. [How do I migrate?](https://docs.gitlab.com/ee/user/infrastructure/clusters/migrate_to_gitlab_agent.html)
For updates and details about this deprecation, follow [this epic](https://gitlab.com/groups/gitlab-org/configure/-/epics/8).
stage: Configure
- tiers: [Free, Silver, Gold, Core, Premium, Ultimate]
+ tiers: [Core, Premium, Ultimate]
issue_url: 'https://gitlab.com/groups/gitlab-org/configure/-/epics/8'
documentation_url: 'https://docs.gitlab.com/ee/user/infrastructure/clusters/#certificate-based-kubernetes-integration-deprecated'
diff --git a/data/deprecations/14-5-deprecate-convert-instance-runner-to-project.yml b/data/deprecations/14-5-deprecate-convert-instance-runner-to-project.yml
index 9b45454fef8..f6b47162a36 100644
--- a/data/deprecations/14-5-deprecate-convert-instance-runner-to-project.yml
+++ b/data/deprecations/14-5-deprecate-convert-instance-runner-to-project.yml
@@ -1,11 +1,15 @@
-- name: "Converting an instance (shared) runner to a project (specific) runner"
+- name: "Changing an instance (shared) runner to a project (specific) runner"
announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
announcement_date: "2021-11-22"
removal_milestone: "15.0" # the milestone when this feature is planned to be removed
removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
breaking_change: true
body: | # Do not modify this line, instead modify the lines below.
- In GitLab 15.0, we will remove the feature that enables you to convert an instance (shared) runner to a project (specific) runner. Users who need to add a runner to only a particular project can register a runner to the project directly.
+ In GitLab 15.0, you can no longer change an instance (shared) runner to a project (specific) runner.
+
+ Users often accidentally change instance runners to project runners, and they're unable to change them back. GitLab does not allow you to change a project runner to a shared runner because of the security implications. A runner meant for one project could be set to run jobs for an entire instance.
+
+ Administrators who need to add runners for multiple projects can register a runner for one project, then go to the Admin view and choose additional projects.
stage: Verify
tiers: [Core, Premium, Ultimate]
diff --git a/data/deprecations/14-5-deprecate-defaultMergeCommitMessageWithDescription-graphql.yml b/data/deprecations/14-5-deprecate-defaultMergeCommitMessageWithDescription-graphql.yml
index 2dfc20ae14e..85cb235f445 100644
--- a/data/deprecations/14-5-deprecate-defaultMergeCommitMessageWithDescription-graphql.yml
+++ b/data/deprecations/14-5-deprecate-defaultMergeCommitMessageWithDescription-graphql.yml
@@ -7,7 +7,8 @@
body: | # Do not modify this line, instead modify the lines below.
The GraphQL API field `defaultMergeCommitMessageWithDescription` has been deprecated and will be removed in GitLab 15.0. For projects with a commit message template set, it will ignore the template.
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ stage: create
+ reporter: phikai
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-5-deprecate-sles-12sp2.yml b/data/deprecations/14-5-deprecate-sles-12sp2.yml
index 69f8eb73bfd..adfbea4ce42 100644
--- a/data/deprecations/14-5-deprecate-sles-12sp2.yml
+++ b/data/deprecations/14-5-deprecate-sles-12sp2.yml
@@ -6,3 +6,5 @@
breaking_change: true
body: | # Do not modify this line, instead modify the lines below.
Long term service and support (LTSS) for SUSE Linux Enterprise Server (SLES) 12 SP2 [ended on March 31, 2021](https://www.suse.com/lifecycle/). The CA certificates on SP2 include the expired DST root certificate, and it's not getting new CA certificate package updates. We have implemented some [workarounds](https://gitlab.com/gitlab-org/gitlab-omnibus-builder/-/merge_requests/191), but we will not be able to continue to keep the build running properly.
+ stage: enablement
+ reporter: dorrino
diff --git a/data/deprecations/14-5-remove-package-pipelines-api.yml b/data/deprecations/14-5-remove-package-pipelines-api.yml
index 392636f90a0..91b2971297f 100644
--- a/data/deprecations/14-5-remove-package-pipelines-api.yml
+++ b/data/deprecations/14-5-remove-package-pipelines-api.yml
@@ -1,13 +1,13 @@
- name: "Package pipelines in API payload is paginated" # The name of the feature to be deprecated
announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
announcement_date: "2021-11-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
- removal_milestone: "15.0" # The milestone when this feature is planned to be removed
- removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ removal_milestone: "16.0" # The milestone when this feature is planned to be removed
+ removal_date: "2023-05-22" # the date of the milestone release when this feature is planned to be removed
breaking_change: true
body: | # Do not modify this line, instead modify the lines below.
A request to the API for `/api/v4/projects/:id/packages` returns a paginated result of packages. Each package lists all of its pipelines in this response. This is a performance concern, as it's possible for a package to have hundreds or thousands of associated pipelines.
- In milestone 15.0, we will remove the `pipelines` attribute from the API response.
+ In milestone 16.0, we will remove the `pipelines` attribute from the API response.
stage: package
tiers: Free
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/289956
diff --git a/data/deprecations/14-6-deprecate-types.yml b/data/deprecations/14-6-deprecate-types.yml
index 3db9f574d38..7f6c1a4cfa5 100644
--- a/data/deprecations/14-6-deprecate-types.yml
+++ b/data/deprecations/14-6-deprecate-types.yml
@@ -7,7 +7,8 @@
body: | # Do not modify this line, instead modify the lines below.
The `type` and `types` CI/CD keywords will be removed in GitLab 15.0. Pipelines that use these keywords will stop working, so you must switch to `stage` and `stages`, which have the same behavior.
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ stage: verify
+ reporter: dhershkovitch
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-6-job_char_limit.yml b/data/deprecations/14-6-job_char_limit.yml
index ee3efafe9f6..b7dff12da5f 100644
--- a/data/deprecations/14-6-job_char_limit.yml
+++ b/data/deprecations/14-6-job_char_limit.yml
@@ -7,7 +7,8 @@
body: | # Do not modify this line, instead modify the lines below.
In GitLab 15.0 we are going to limit the number of characters in CI/CD job names to 255. Any pipeline with job names that exceed the 255 character limit will stop working after the 15.0 release.
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ reporter: dhershkovitch
+ stage: verify
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/342800 # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-6-pipeline-fields-package-deprecation.yml b/data/deprecations/14-6-pipeline-fields-package-deprecation.yml
deleted file mode 100644
index 14892d2bbae..00000000000
--- a/data/deprecations/14-6-pipeline-fields-package-deprecation.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-- name: "`pipelines` fields in the Package GraphQL types"
- announcement_milestone: "14.6" # The milestone when this feature was first announced as deprecated.
- announcement_date: "2021-12-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
- removal_milestone: "15.0" # The milestone when this feature is planned to be removed
- removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
- breaking_change: true
- body: | # Do not modify this line, instead modify the lines below.
- As part of the work to create a [Package Registry GraphQL API](https://gitlab.com/groups/gitlab-org/-/epics/6318), the Package group deprecated the `pipelines` fields in all Package-related GraphQL types. As of GitLab 14.6, the `pipelines` field is deprecated in [`Package`](https://docs.gitlab.com/ee/api/graphql/reference/index.html#package) and [`PackageDetailsType`](https://docs.gitlab.com/ee/api/graphql/reference/index.html#packagedetailstype) due to scalability and performance concerns.
-
- In milestone 15.0, we will completely remove `pipelines` from `Package` and `PackageDetailsType`. You can follow and contribute to work on a replacement in the epic [GitLab-#7214](https://gitlab.com/groups/gitlab-org/-/epics/7214).
- stage: package
- tiers: Free
- issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/347219
diff --git a/data/deprecations/14-7-deprecate-static-site-editor.yml b/data/deprecations/14-7-deprecate-static-site-editor.yml
index 18f2ec26645..0960bffe4cf 100644
--- a/data/deprecations/14-7-deprecate-static-site-editor.yml
+++ b/data/deprecations/14-7-deprecate-static-site-editor.yml
@@ -4,7 +4,9 @@
removal_milestone: "15.0" # The milestone when this feature is planned to be removed
removal_date: "2022-05-22" # This should almost always be the 22nd of a month (YYYY-MM-22), the date of the milestone release when this feature is planned to be removed.
body: | # Do not modify this line, instead modify the lines below.
- The Static Site Editor will no longer be available starting in GitLab 15.0. Improvements to the Markdown editing experience across GitLab will deliver smiliar benefit but with a wider reach. Incoming requests to the Static Site Editor will be redirected to the Web IDE. Current users of the Static Site Editor can view the [documentation](https://docs.gitlab.com/ee/user/project/static_site_editor/) for more information, including how to remove the configuration files from existing projects.
+ The Static Site Editor will no longer be available starting in GitLab 15.0. Improvements to the Markdown editing experience across GitLab will deliver smiliar benefit but with a wider reach. Incoming requests to the Static Site Editor will be redirected to the [Web IDE](https://docs.gitlab.com/ee/user/project/web_ide/index.html).
+
+ Current users of the Static Site Editor can view the [documentation](https://docs.gitlab.com/ee/user/project/static_site_editor/) for more information, including how to remove the configuration files from existing projects.
# The following items are not published on the docs page, but may be used in the future.
stage: Create # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
tiers: [Free, Premium, Ultimate] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
diff --git a/data/deprecations/14-8-deprecate-projectFingerprint-from-PipelineSecurityReportFinding-GraphQL.yml b/data/deprecations/14-8-deprecate-projectFingerprint-from-PipelineSecurityReportFinding-GraphQL.yml
index 0638f86968a..36104ad15d8 100644
--- a/data/deprecations/14-8-deprecate-projectFingerprint-from-PipelineSecurityReportFinding-GraphQL.yml
+++ b/data/deprecations/14-8-deprecate-projectFingerprint-from-PipelineSecurityReportFinding-GraphQL.yml
@@ -11,7 +11,7 @@
The method for calculating fingerprints has changed, resulting in different values. Going forward, the new values will be
exposed in the UUID field. Data previously available in the projectFingerprint field will eventually be removed entirely.
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ stage: secure
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-8-enforce-pat-expiration.yml b/data/deprecations/14-8-enforce-pat-expiration.yml
index bb5155984ef..bc8e35a4e2c 100644
--- a/data/deprecations/14-8-enforce-pat-expiration.yml
+++ b/data/deprecations/14-8-enforce-pat-expiration.yml
@@ -9,5 +9,6 @@
The feature to disable enforcement of PAT expiration is unusual from a security perspective.
We have become concerned that this unusual feature could create unexpected behavior for users.
Unexpected behavior in a security feature is inherently dangerous, so we have decided to remove this feature.
+ stage: manage
issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/351962" # (optional) This is a link to the deprecation issue in GitLab
documentation_url: "https://docs.gitlab.com/ee/user/admin_area/settings/account_and_limit_settings.html#allow-expired-personal-access-tokens-to-be-used-deprecated" # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-8-enforce-ssh-expiration.yml b/data/deprecations/14-8-enforce-ssh-expiration.yml
index 2f8362001df..5887e749d2c 100644
--- a/data/deprecations/14-8-enforce-ssh-expiration.yml
+++ b/data/deprecations/14-8-enforce-ssh-expiration.yml
@@ -9,5 +9,6 @@
The feature to disable enforcement of SSH expiration is unusual from a security perspective.
We have become concerned that this unusual feature could create unexpected behavior for users.
Unexpected behavior in a security feature is inherently dangerous, so we have decided to remove this feature.
+ stage: manage
issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/351963" # (optional) This is a link to the deprecation issue in GitLab
documentation_url: "https://docs.gitlab.com/ee/user/admin_area/settings/account_and_limit_settings.html#allow-expired-ssh-keys-to-be-used-deprecated" # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-8-graphql-ids.yml b/data/deprecations/14-8-graphql-ids.yml
index 67ff418c51a..cd830a313b1 100644
--- a/data/deprecations/14-8-graphql-ids.yml
+++ b/data/deprecations/14-8-graphql-ids.yml
@@ -58,7 +58,7 @@
to one of the other two forms (using the correct appropriate type in the signature, or using
an inline argument expression).
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ stage: ecosystem
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: 'https://gitlab.com/gitlab-org/gitlab/-/issues/257883'
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-8-grpc-proxy.yml b/data/deprecations/14-8-grpc-proxy.yml
index 1ec505fd216..9d161dbc8f9 100644
--- a/data/deprecations/14-8-grpc-proxy.yml
+++ b/data/deprecations/14-8-grpc-proxy.yml
@@ -18,7 +18,7 @@
increase throughput and reduce Go garbage collection latency. For more information, see
the [relevant epic](https://gitlab.com/groups/gitlab-com/gl-infra/-/epics/463).
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ stage: platform
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/14-8-protect-cns-chs.yml b/data/deprecations/14-8-protect-cns-chs.yml
index 8ea76d1b371..6fb67e98b2c 100644
--- a/data/deprecations/14-8-protect-cns-chs.yml
+++ b/data/deprecations/14-8-protect-cns-chs.yml
@@ -6,7 +6,7 @@
breaking_change: true
reporter: sam.white
body: | # Do not modify this line, instead modify the lines below.
- All functionality related to GitLab's Container Network Security and Container Host Security categories is deprecated in GitLab 14.8 and scheduled for removal in GitLab 15.0. Users who need a replacement for this functionality are encouraged to evaluate the following open source projects as potential solutions that can be installed and managed outside of GitLab: [AppArmor](https://gitlab.com/apparmor/apparmor), [Cilium](https://github.com/cilium/cilium), [Falco](https://github.com/falcosecurity/falco), [FluentD](https://github.com/fluent/fluentd), [Pod Security Admission](https://kubernetes.io/docs/concepts/security/pod-security-admission/). To integrate these technologies into GitLab, add the desired Helm charts into your copy of the [Cluster Management Project Template](https://docs.gitlab.com/ee/user/clusters/management_project_template.html). Deploy these Helm charts in production by calling commands through the GitLab [Secure CI/CD Tunnel](https://docs.gitlab.com/ee/user/clusters/agent/repository.html#run-kubectl-commands-using-the-cicd-tunnel).
+ All functionality related to GitLab's Container Network Security and Container Host Security categories is deprecated in GitLab 14.8 and scheduled for removal in GitLab 15.0. Users who need a replacement for this functionality are encouraged to evaluate the following open source projects as potential solutions that can be installed and managed outside of GitLab: [AppArmor](https://gitlab.com/apparmor/apparmor), [Cilium](https://github.com/cilium/cilium), [Falco](https://github.com/falcosecurity/falco), [FluentD](https://github.com/fluent/fluentd), [Pod Security Admission](https://kubernetes.io/docs/concepts/security/pod-security-admission/). To integrate these technologies into GitLab, add the desired Helm charts into your copy of the [Cluster Management Project Template](https://docs.gitlab.com/ee/user/clusters/management_project_template.html). Deploy these Helm charts in production by calling commands through GitLab [CI/CD](https://docs.gitlab.com/ee/user/clusters/agent/ci_cd_workflow.html).
As part of this change, the following specific capabilities within GitLab are now deprecated, and are scheduled for removal in GitLab 15.0:
diff --git a/data/deprecations/14-8-runner-api-active-field-replaced-with-paused-breaking-change.yml b/data/deprecations/14-8-runner-api-active-field-replaced-with-paused-breaking-change.yml
index 0300641e540..99af852c13e 100644
--- a/data/deprecations/14-8-runner-api-active-field-replaced-with-paused-breaking-change.yml
+++ b/data/deprecations/14-8-runner-api-active-field-replaced-with-paused-breaking-change.yml
@@ -27,7 +27,7 @@
existing runners.
stage: Verify
tiers: [Core, Premium, Ultimate]
- issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/347211
- documentation_url: https://docs.gitlab.com/ee/api/runners.html
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/351109
+ documentation_url: https://docs.gitlab.com/ee/api/graphql/reference/#cirunner
image_url: # (optional) This is a link to a thumbnail image depicting the feature
video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/14-8-runner-api-status-filter-does-accept-active-or-paused.yml b/data/deprecations/14-8-runner-api-status-filter-does-accept-active-or-paused.yml
index 8f706840f0d..174e51f5f5d 100644
--- a/data/deprecations/14-8-runner-api-status-filter-does-accept-active-or-paused.yml
+++ b/data/deprecations/14-8-runner-api-status-filter-does-accept-active-or-paused.yml
@@ -15,4 +15,4 @@
stage: Verify
tiers: [Core, Premium, Ultimate]
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/351109
- documentation_url: https://docs.gitlab.com/ee/api/runners.html
+ documentation_url: https://docs.gitlab.com/ee/api/graphql/reference/#queryrunners
diff --git a/data/deprecations/14-8-sast-analyzer-removals.yml b/data/deprecations/14-8-sast-analyzer-removals.yml
index 6bbeee0cd6b..cf9549f7315 100644
--- a/data/deprecations/14-8-sast-analyzer-removals.yml
+++ b/data/deprecations/14-8-sast-analyzer-removals.yml
@@ -1,8 +1,8 @@
- name: "SAST analyzer consolidation and CI/CD template changes"
announcement_milestone: "14.8"
announcement_date: "2022-02-22"
- removal_milestone: "15.0"
- removal_date: "2022-05-22"
+ removal_milestone: "15.2"
+ removal_date: "2022-07-22"
breaking_change: true
reporter: connorgilbert
body: | # Do not modify this line, instead modify the lines below.
@@ -11,12 +11,15 @@
We are reducing the number of analyzers used in GitLab SAST as part of our long-term strategy to deliver a better and more consistent user experience.
Streamlining the set of analyzers will also enable faster [iteration](https://about.gitlab.com/handbook/values/#iteration), better [results](https://about.gitlab.com/handbook/values/#results), and greater [efficiency](https://about.gitlab.com/handbook/values/#results) (including a reduction in CI runner usage in most cases).
- In GitLab 15.0, GitLab SAST will no longer use the following analyzers:
+ In GitLab 15.2, GitLab SAST will no longer use the following analyzers:
- [ESLint](https://gitlab.com/gitlab-org/security-products/analyzers/eslint) (JavaScript, TypeScript, React)
- [Gosec](https://gitlab.com/gitlab-org/security-products/analyzers/gosec) (Go)
- [Bandit](https://gitlab.com/gitlab-org/security-products/analyzers/bandit) (Python)
+ NOTE:
+ This change was originally planned for GitLab 15.0 and has been postponed.
+
These analyzers will be removed from the [GitLab-managed SAST CI/CD template](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml) and replaced with the [Semgrep-based analyzer](https://gitlab.com/gitlab-org/security-products/analyzers/semgrep).
They will no longer receive routine updates, except for security issues.
We will not delete container images previously published for these analyzers; any such change would be announced as a [deprecation, removal, or breaking change announcement](https://about.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-removals-and-breaking-changes).
@@ -25,7 +28,7 @@
This change will make it simpler to scan Java code; compilation will no longer be required.
This change will be reflected in the automatic language detection portion of the [GitLab-managed SAST CI/CD template](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml).
- If you applied customizations to any of the affected analyzers, you must take action as detailed in the [deprecation issue for this change](https://gitlab.com/gitlab-org/gitlab/-/issues/352554#breaking-change).
+ If you applied customizations to any of the affected analyzers or if you currently disable the Semgrep analyzer in your pipelines, you must take action as detailed in the [deprecation issue for this change](https://gitlab.com/gitlab-org/gitlab/-/issues/352554#breaking-change).
# The following items are not published on the docs page, but may be used in the future.
stage: Secure
tiers: [Free, Silver, Gold, Core, Premium, Ultimate]
diff --git a/data/deprecations/14-9-deprecate-composer-download-permissions.yml b/data/deprecations/14-9-deprecate-composer-download-permissions.yml
index 79cb2a81c53..e44f1c55167 100644
--- a/data/deprecations/14-9-deprecate-composer-download-permissions.yml
+++ b/data/deprecations/14-9-deprecate-composer-download-permissions.yml
@@ -1,11 +1,12 @@
- name: "Permissions change for downloading Composer dependencies"
announcement_milestone: "14.9"
announcement_date: "2022-03-22"
- removal_milestone: "15.0"
- removal_date: "2022-05-22"
+ removal_milestone: "14.10"
+ removal_date: "2022-04-22"
breaking_change: true
reporter: trizzi
body: | # Do not modify this line, instead modify the lines below.
The GitLab Composer repository can be used to push, search, fetch metadata about, and download PHP dependencies. All these actions require authentication, except for downloading dependencies.
Downloading Composer dependencies without authentication is deprecated in GitLab 14.9, and will be removed in GitLab 15.0. Starting with GitLab 15.0, you must authenticate to download Composer dependencies.
+ stage: package
diff --git a/data/deprecations/14-9-deprecate-permissions-change-package-settings.yml b/data/deprecations/14-9-deprecate-permissions-change-package-settings.yml
index 740b3ca2e0d..366f0e83470 100644
--- a/data/deprecations/14-9-deprecate-permissions-change-package-settings.yml
+++ b/data/deprecations/14-9-deprecate-permissions-change-package-settings.yml
@@ -14,3 +14,4 @@
- [Container Registry cleanup policy](https://docs.gitlab.com/ee/api/graphql/reference/#containerexpirationpolicy)
- [Dependency Proxy time-to-live policy](https://docs.gitlab.com/ee/api/graphql/reference/#dependencyproxyimagettlgrouppolicy)
- [Enabling the Dependency Proxy for your group](https://docs.gitlab.com/ee/api/graphql/reference/#dependencyproxysetting)
+ stage: package
diff --git a/data/deprecations/14-9-deprecate-testcoveragesetting.yml b/data/deprecations/14-9-deprecate-testcoveragesetting.yml
index 9015172eeb9..e6dfb22562b 100644
--- a/data/deprecations/14-9-deprecate-testcoveragesetting.yml
+++ b/data/deprecations/14-9-deprecate-testcoveragesetting.yml
@@ -7,8 +7,9 @@
reporter: jreporter # GitLab username of the person reporting the deprecation
body: | # Do not modify this line, instead modify the lines below.
To simplify setting a test coverage pattern, in GitLab 15.0 the
- [project setting for test coverage parsing](https://docs.gitlab.com/ee/ci/pipelines/settings.html#add-test-coverage-results-using-project-settings-deprecated)
+ [project setting for test coverage parsing](https://docs.gitlab.com/ee/ci/pipelines/settings.html#add-test-coverage-results-using-project-settings-removed)
is being removed.
Instead, using the project’s `.gitlab-ci.yml`, provide a regular expression with the `coverage` keyword to set
testing coverage results in merge requests.
+ stage: verify
diff --git a/data/deprecations/templates/14-9-deprecation-htpassword-authentication-container-registry.yml b/data/deprecations/14-9-deprecation-htpassword-authentication-container-registry.yml
index 14c6b235a1a..5d940b5e14d 100644
--- a/data/deprecations/templates/14-9-deprecation-htpassword-authentication-container-registry.yml
+++ b/data/deprecations/14-9-deprecation-htpassword-authentication-container-registry.yml
@@ -9,3 +9,4 @@
The Container Registry supports [authentication](https://gitlab.com/gitlab-org/container-registry/-/blob/master/docs/configuration.md#auth) with `htpasswd`. It relies on an [Apache `htpasswd` file](https://httpd.apache.org/docs/2.4/programs/htpasswd.html), with passwords hashed using `bcrypt`.
Since it isn't used in the context of GitLab (the product), `htpasswd` authentication will be deprecated in GitLab 14.9 and removed in GitLab 15.0.
+ stage: package
diff --git a/data/deprecations/15-0-JTW_v2_update.yml b/data/deprecations/15-0-JTW_v2_update.yml
deleted file mode 100644
index 39880d7fbe0..00000000000
--- a/data/deprecations/15-0-JTW_v2_update.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-# This is a template for a feature deprecation
-# A deprecation typically occurs when a feature or capability is planned to be removed in a future release.
-# Deprecations should be announced at least two releases prior to removal. Any breaking changes should only be done in major releases.
-#
-# Below is an example of what a single entry should look like, it's required attributes,
-# and what types we expect those attribute values to be.
-#
-# For more information please refer to the handbook documentation here:
-# https://about.gitlab.com/handbook/marketing/blog/release-posts/#deprecations
-#
-# Please delete this line and above before submitting your merge request.
-
-- name: "Changes to the `CI_JOB_JWT`" # The name of the feature to be deprecated
- announcement_milestone: "14.8" # The milestone when this feature was first announced as deprecated.
- announcement_date: "2022-02-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
- removal_milestone: "15.0" # The milestone when this feature is planned to be removed
- removal_date: "2022-05-22" # The date of the milestone release when this feature is planned to be removed. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
- breaking_change: true # If this deprecation is a breaking change, set this value to true
- reporter: dhershkovitch # GitLab username of the person reporting the deprecation
- body: | # Do not modify this line, instead modify the lines below.
- The `CI_JOB_JWT` will be updated to support a wider variety of cloud providers. It will be changed to match [`CI_JOB_JWT_V2`](https://docs.gitlab.com/ee/ci/variables/predefined_variables.html), but this change may not be backwards compatible for all users, including Hashicorp Vault users. To maintain the current behavior, users can switch to using `CI_JOB_JWT_V1`, or update their configuration in GitLab 15.0 to use the improved `CI_JOB_JWT`.
-# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
- tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
- issue_url: # (optional) This is a link to the deprecation issue in GitLab
- documentation_url: # (optional) This is a link to the current documentation page
- image_url: # (optional) This is a link to a thumbnail image depicting the feature
- video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-0-ci-cd-settings-update-mutation-renamed.yml b/data/deprecations/15-0-ci-cd-settings-update-mutation-renamed.yml
new file mode 100644
index 00000000000..7f426190963
--- /dev/null
+++ b/data/deprecations/15-0-ci-cd-settings-update-mutation-renamed.yml
@@ -0,0 +1,19 @@
+- name: "CiCdSettingsUpdate mutation renamed to ProjectCiCdSettingsUpdate"
+ announcement_milestone: "15.0"
+ announcement_date: "2022-05-22"
+ removal_milestone: "16.0"
+ removal_date: "2023-05-22"
+ breaking_change: true
+ reporter: pedropombeiro
+ stage: Verify
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/361801
+ body: |
+ The `CiCdSettingsUpdate` mutation was renamed to `ProjectCiCdSettingsUpdate` in GitLab 15.0.
+ The `CiCdSettingsUpdate` mutation will be removed in GitLab 16.0.
+ Any user scripts that use the `CiCdSettingsUpdate` mutation must be updated to use `ProjectCiCdSettingsUpdate`
+ instead.
+
+ tiers: [Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/api/graphql/reference/#mutationprojectcicdsettingsupdate
+ image_url:
+ video_url:
diff --git a/data/deprecations/15-0-deprecate-postgresql-12.yml b/data/deprecations/15-0-deprecate-postgresql-12.yml
new file mode 100644
index 00000000000..bebfba64405
--- /dev/null
+++ b/data/deprecations/15-0-deprecate-postgresql-12.yml
@@ -0,0 +1,19 @@
+- name: "PostgreSQL 12 deprecated"
+ announcement_milestone: "15.0"
+ announcement_date: "2022-05-22"
+ removal_milestone: "16.0"
+ removal_date: "2023-05-22"
+ breaking_change: true
+ reporter: iroussos
+ body: | # Do not modify this line, instead modify the lines below.
+ Support for PostgreSQL 12 is scheduled for removal in GitLab 16.0.
+ In GitLab 16.0, PostgreSQL 13 becomes the minimum required PostgreSQL version.
+
+ PostgreSQL 12 will be supported for the full GitLab 15 release cycle.
+ PostgreSQL 13 will also be supported for instances that want to upgrade prior to GitLab 16.0.
+
+ Upgrading to PostgreSQL 13 is not yet supported for GitLab instances with Geo enabled. Geo support for PostgreSQL 13 will be announced in a minor release version of GitLab 15, after the process is fully supported and validated. For more information, read the Geo related verifications on the [support epic for PostgreSQL 13](https://gitlab.com/groups/gitlab-org/-/epics/3832).
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/349185
+ documentation_url: https://docs.gitlab.com/omnibus/development/managing-postgresql-versions.html
diff --git a/data/deprecations/15-0-oauth-noexpiry.yml b/data/deprecations/15-0-oauth-noexpiry.yml
index 154630c9f16..9f2521998aa 100644
--- a/data/deprecations/15-0-oauth-noexpiry.yml
+++ b/data/deprecations/15-0-oauth-noexpiry.yml
@@ -16,7 +16,8 @@
1. Select **Expire access tokens** to enable them. Tokens must be revoked or they don’t expire.
# The following items are not published on the docs page, but may be used in the future.
- stage: # Manage
+ reporter: hsutor
+ stage: manage
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # https://gitlab.com/gitlab-org/gitlab/-/issues/21745
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/15-0-oauth.yml b/data/deprecations/15-0-oauth.yml
index 98c7c974808..7e1c3ff51cd 100644
--- a/data/deprecations/15-0-oauth.yml
+++ b/data/deprecations/15-0-oauth.yml
@@ -7,7 +7,8 @@
body: | # Do not modify this line, instead modify the lines below.
The OAuth implicit grant authorization flow will be removed in our next major release, GitLab 15.0. Any applications that use OAuth implicit grant should switch to alternative [supported OAuth flows](https://docs.gitlab.com/ee/api/oauth2.html).
# The following items are not published on the docs page, but may be used in the future.
- stage: # Manage
+ reporter: hsutor
+ stage: manage
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: # https://gitlab.com/gitlab-org/gitlab/-/issues/344609
documentation_url: # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/15-0-runner-status-legacy-mode.yml b/data/deprecations/15-0-runner-status-legacy-mode.yml
new file mode 100644
index 00000000000..ee7ac1af820
--- /dev/null
+++ b/data/deprecations/15-0-runner-status-legacy-mode.yml
@@ -0,0 +1,18 @@
+- name: "GraphQL API legacyMode argument for Runner status" # The name of the feature to be deprecated
+ announcement_milestone: "15.0" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2022-05-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "16.0" # The milestone when this feature is planned to be removed
+ removal_date: "2023-05-22" # The date of the milestone release when this feature is planned to be removed. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ breaking_change: true # If this deprecation is a breaking change, set this value to true
+ reporter: pedropombeiro # GitLab username of the person reporting the deprecation
+ body: | # Do not modify this line, instead modify the lines below.
+ The `legacyMode` argument to the `status` field in `RunnerType` will be rendered non-functional in the 16.0 release
+ as part of the deprecations details in the [issue](https://gitlab.com/gitlab-org/gitlab/-/issues/351109).
+
+ In GitLab 16.0 and later, the `status` field will act as if `legacyMode` is null. The `legacyMode` argument will
+ be present during the 16.x cycle to avoid breaking the API signature, and will be removed altogether in the
+ 17.0 release.
+ stage: Verify
+ tiers: [Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/360545
+ documentation_url: https://docs.gitlab.com/ee/api/graphql/reference/#cirunnerstatus
diff --git a/data/deprecations/15-2-deprecation-vulnerability-report-state-sort.yml b/data/deprecations/15-2-deprecation-vulnerability-report-state-sort.yml
new file mode 100644
index 00000000000..271e11f0d7f
--- /dev/null
+++ b/data/deprecations/15-2-deprecation-vulnerability-report-state-sort.yml
@@ -0,0 +1,19 @@
+- name: "Vulnerability Report sort by State" # (required) The name of the feature to be deprecated
+ announcement_milestone: "15.0" # (required) The milestone when this feature was first announced as deprecated.
+ announcement_date: "2022-05-22" # (required) The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "15.2" # (required) The milestone when this feature is planned to be removed
+ removal_date: "2022-07-22" # (required) The date of the milestone release when this feature is planned to be removed. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ breaking_change: false # (required) If this deprecation is a breaking change, set this value to true
+ reporter: matt_wilson # (required) GitLab username of the person reporting the deprecation
+ stage: Secure # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/360516 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ The ability to sort the Vulnerability Report by the `State` column was disabled and put behind a feature flag in GitLab 14.10 due to a refactor
+ of the underlying data model. The feature flag has remained off by default as further refactoring will be required to ensure sorting
+ by this value remains performant. Due to very low usage of the `State` column for sorting, the feature flag will instead be removed in
+ GitLab 15.2 to simplify the codebase and prevent any unwanted performance degradation.
+# The following items are not published on the docs page, but may be used in the future.
+ tiers: Ultimate # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/distribution_deprecations_14-4.yml b/data/deprecations/distribution_deprecations_14-4.yml
index b8c4e0d817c..5b7163d5b4d 100644
--- a/data/deprecations/distribution_deprecations_14-4.yml
+++ b/data/deprecations/distribution_deprecations_14-4.yml
@@ -2,5 +2,6 @@
announcement_milestone: "14.9" # The milestone when this feature was first announced as deprecated.
announcement_date: "2021-10-22"
removal_milestone: "15.0" # the milestone when this feature is planned to be removed
+ removal_date: "2022-05-22"
body: | # Do not modify this line, instead modify the lines below.
The [`custom_hooks_dir`](https://docs.gitlab.com/ee/administration/server_hooks.html#create-a-global-server-hook-for-all-repositories) setting is now configured in Gitaly, and will be removed from GitLab Shell in GitLab 15.0.
diff --git a/data/deprecations/templates/_deprecation_template.md.erb b/data/deprecations/templates/_deprecation_template.md.erb
index 09a53404798..46eb152d86a 100644
--- a/data/deprecations/templates/_deprecation_template.md.erb
+++ b/data/deprecations/templates/_deprecation_template.md.erb
@@ -36,15 +36,22 @@ For deprecation reviewers (Technical Writers only):
https://about.gitlab.com/handbook/marketing/blog/release-posts/#update-the-deprecations-doc
-->
+{::options parse_block_html="true" /}
+
View deprecations by the product versions in which they were announced.
Each deprecation has a **planned removal milestone** and indicates whether it is a breaking change.
Most of the deprecations are **planned for removal in 15.0**, and many of them are **breaking changes**.
+<div class="js-deprecation-filters"></div>
<% if milestones.any? -%>
<%- milestones.each do |milestone| %>
+<div class="announcement-milestone">
+
## <%= milestone %>
<%- entries.select{|d| d["announcement_milestone"] == milestone}.each do |deprecation| %>
+<div class="deprecation removal-<%= deprecation["removal_milestone"].gsub('.', '') %><% if deprecation["breaking_change"] -%> breaking-change<% end %>">
+
### <%= deprecation["name"]%>
<% if deprecation["breaking_change"] -%>
@@ -57,9 +64,11 @@ changes to your code, settings, or workflow.
<%= deprecation["body"] -%><% else %>
<%= deprecation["body"] -%><% end %><%- if deprecation["removal_milestone"] -%>
-**Planned removal milestone: <%= deprecation["removal_milestone"]%> (<%= deprecation["removal_date"]%>)**
+**Planned removal milestone: <span class="removal-milestone"><%= deprecation["removal_milestone"]%></span> (<%= deprecation["removal_date"]%>)**
+</div>
<%- end -%>
<%- end -%>
+</div>
<%- end -%>
<%- else -%>
diff --git a/data/deprecations/templates/example.yml b/data/deprecations/templates/example.yml
index 06e53084ed2..190235b0e3c 100644
--- a/data/deprecations/templates/example.yml
+++ b/data/deprecations/templates/example.yml
@@ -10,14 +10,16 @@
#
# Please delete this line and above before submitting your merge request.
-- name: "Feature name" # The name of the feature to be deprecated
- announcement_milestone: "XX.YY" # The milestone when this feature was first announced as deprecated.
- announcement_date: "YYYY-MM-DD" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
- removal_milestone: "XX.YY" # The milestone when this feature is planned to be removed
- removal_date: # The date of the milestone release when this feature is planned to be removed. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
- breaking_change: false # If this deprecation is a breaking change, set this value to true
- reporter: exampleuser # GitLab username of the person reporting the deprecation
- body: | # Do not modify this line, instead modify the lines below.
+- name: "Feature name" # (required) The name of the feature to be deprecated
+ announcement_milestone: "XX.YY" # (required) The milestone when this feature was first announced as deprecated.
+ announcement_date: "YYYY-MM-DD" # (required) The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "XX.YY" # (required) The milestone when this feature is planned to be removed
+ removal_date: # (required) The date of the milestone release when this feature is planned to be removed. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ breaking_change: false # (required) If this deprecation is a breaking change, set this value to true
+ reporter: exampleuser # (required) GitLab username of the person reporting the deprecation
+ stage: stage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/000000 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
<!-- START OF BODY COMMENT
This area supports markdown. Delete this entire comment and replace it with your markdown content.
@@ -26,9 +28,7 @@
END OF BODY COMMENT -->
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
- issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
image_url: # (optional) This is a link to a thumbnail image depicting the feature
video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/14_0/removal_enablement_pg11.yml b/data/removals/14_0/removal_enablement_pg11.yml
index 6f9c7718268..d409a1bc9d3 100644
--- a/data/removals/14_0/removal_enablement_pg11.yml
+++ b/data/removals/14_0/removal_enablement_pg11.yml
@@ -4,6 +4,6 @@
reporter: joshlambert
breaking_change: true
body: |
- PostgreSQL 12 will be the minimum required version in GitLab 14.0. It offers [significant improvements](https://www.postgresql.org/about/news/postgresql-12-released-1976/) to indexing, partitioning, and general performance benefits.
+ GitLab 14.0 requires PostgreSQL 12 or later. It offers [significant improvements](https://www.postgresql.org/about/news/postgresql-12-released-1976/) to indexing, partitioning, and general performance benefits.
- Starting in GitLab 13.7, all new installations default to version 12. From GitLab 13.8, single-node instances are automatically upgraded as well. If you aren't ready to upgrade, you can [opt out of automatic upgrades](https://docs.gitlab.com/omnibus/settings/database.html#opt-out-of-automatic-postgresql-upgrades).
+ Starting in GitLab 13.7, all new installations default to PostgreSQL version 12. From GitLab 13.8, single-node instances are automatically upgraded as well. If you aren't ready to upgrade, you can [opt out of automatic upgrades](https://docs.gitlab.com/omnibus/settings/database.html#opt-out-of-automatic-postgresql-upgrades).
diff --git a/data/removals/14_10/14-10-package-permissions-composer-change.yml b/data/removals/14_10/14-10-package-permissions-composer-change.yml
new file mode 100644
index 00000000000..e44f1c55167
--- /dev/null
+++ b/data/removals/14_10/14-10-package-permissions-composer-change.yml
@@ -0,0 +1,12 @@
+- name: "Permissions change for downloading Composer dependencies"
+ announcement_milestone: "14.9"
+ announcement_date: "2022-03-22"
+ removal_milestone: "14.10"
+ removal_date: "2022-04-22"
+ breaking_change: true
+ reporter: trizzi
+ body: | # Do not modify this line, instead modify the lines below.
+ The GitLab Composer repository can be used to push, search, fetch metadata about, and download PHP dependencies. All these actions require authentication, except for downloading dependencies.
+
+ Downloading Composer dependencies without authentication is deprecated in GitLab 14.9, and will be removed in GitLab 15.0. Starting with GitLab 15.0, you must authenticate to download Composer dependencies.
+ stage: package
diff --git a/data/removals/15_0/15-0-Legacy-approval-status-names-from-License-Compliance-API.yml b/data/removals/15_0/15-0-Legacy-approval-status-names-from-License-Compliance-API.yml
new file mode 100644
index 00000000000..4a241f913a1
--- /dev/null
+++ b/data/removals/15_0/15-0-Legacy-approval-status-names-from-License-Compliance-API.yml
@@ -0,0 +1,11 @@
+- name: "Legacy approval status names in License Compliance API"
+ announcement_milestone: "14.6"
+ announcement_date: "2021-12-13"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ reporter: sam.white
+ stage: secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/345839
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ We have now removed the deprecated legacy names for approval status of license policy (`blacklisted`, `approved`) in the API queries and responses. If you are using our License Compliance API you should stop using the `approved` and `blacklisted` query parameters, they are now `allowed` and `denied`. In 15.0 the responses will also stop using `approved` and `blacklisted` so you may need to adjust any of your custom tools.
diff --git a/data/removals/15_0/15-0-Pseudonymizer.yml b/data/removals/15_0/15-0-Pseudonymizer.yml
new file mode 100644
index 00000000000..f3ad893e5dc
--- /dev/null
+++ b/data/removals/15_0/15-0-Pseudonymizer.yml
@@ -0,0 +1,13 @@
+- name: "Pseudonymizer"
+ announcement_milestone: "14.7"
+ announcement_date: "2022-01-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ The Pseudonymizer feature is generally unused, can cause production issues with large databases, and can interfere with object storage development.
+ It was removed in GitLab 15.0.
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
+ documentation_url: "https://docs.gitlab.com/ee/administration/pseudonymizer.html"
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/219952"
diff --git a/data/removals/15_0/15-0-Retire-js-analyzer.yml b/data/removals/15_0/15-0-Retire-js-analyzer.yml
new file mode 100644
index 00000000000..5b5d38d039c
--- /dev/null
+++ b/data/removals/15_0/15-0-Retire-js-analyzer.yml
@@ -0,0 +1,13 @@
+- name: "Retire-JS Dependency Scanning tool"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sam.white
+ body: | # Do not modify this line, instead modify the lines below.
+ We have removed support for retire.js from Dependency Scanning as of May 22, 2022 in GitLab 15.0. JavaScript scanning functionality will not be affected as it is still being covered by Gemnasium.
+
+ If you have explicitly excluded retire.js using the `DS_EXCLUDED_ANALYZERS` variable, then you will be able to remove the reference to retire.js. If you have customized your pipeline’s Dependency Scanning configuration related to the `retire-js-dependency_scanning` job, then you will want to switch to `gemnasium-dependency_scanning`. If you have not used the `DS_EXCLUDED_ANALYZERS` to reference retire.js, or customized your template specifically for retire.js, you will not need to take any action.
+ stage: secure
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/289830"
diff --git a/data/removals/15_0/15-0-SLES-12-SP2.yml b/data/removals/15_0/15-0-SLES-12-SP2.yml
new file mode 100644
index 00000000000..40c51fa5f95
--- /dev/null
+++ b/data/removals/15_0/15-0-SLES-12-SP2.yml
@@ -0,0 +1,10 @@
+- name: "SUSE Linux Enterprise Server 12 SP2"
+ announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2021-11-22"
+ removal_milestone: "15.0" # the milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ Long term service and support (LTSS) for SUSE Linux Enterprise Server (SLES) 12 SP2 [ended on March 31, 2021](https://www.suse.com/lifecycle/). The CA certificates on SP2 include the expired DST root certificate, and it's not getting new CA certificate package updates. We have implemented some [workarounds](https://gitlab.com/gitlab-org/gitlab-omnibus-builder/-/merge_requests/191), but we will not be able to continue to keep the build running properly.
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
diff --git a/data/removals/15_0/15-0-advanced-search-elasticsearch-6-8.yml b/data/removals/15_0/15-0-advanced-search-elasticsearch-6-8.yml
new file mode 100644
index 00000000000..5877b9cf0af
--- /dev/null
+++ b/data/removals/15_0/15-0-advanced-search-elasticsearch-6-8.yml
@@ -0,0 +1,16 @@
+- name: "Elasticsearch 6.8.x in GitLab 15.0"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: JohnMcGuire
+ body: | # Do not modify this line, instead modify the lines below.
+ Elasticsearch 6.8 support has been removed in GitLab 15.0. Elasticsearch 6.8 has reached [end of life](https://www.elastic.co/support/eol).
+ If you use Elasticsearch 6.8, **you must upgrade your Elasticsearch version to 7.x** prior to upgrading to GitLab 15.0.
+ You should not upgrade to Elasticsearch 8 until you have completed the GitLab 15.0 upgrade.
+
+ View the [version requirements](https://docs.gitlab.com/ee/integration/elasticsearch.html#version-requirements) for details.
+# The following items are not published on the docs page, but may be used in the future.
+ stage: "Enablement"
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/350275
diff --git a/data/removals/15_0/15-0-bundler-audit.yml b/data/removals/15_0/15-0-bundler-audit.yml
new file mode 100644
index 00000000000..991280585ba
--- /dev/null
+++ b/data/removals/15_0/15-0-bundler-audit.yml
@@ -0,0 +1,13 @@
+- name: "bundler-audit Dependency Scanning tool"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sam.white
+ body: | # Do not modify this line, instead modify the lines below.
+ We are removing bundler-audit from Dependency Scanning on May 22, 2022 in 15.0. After this removal, Ruby scanning functionality will not be affected as it is still being covered by Gemnasium.
+
+ If you have explicitly excluded bundler-audit using the `DS_EXCLUDED_ANALYZERS` variable, then you will be able to remove the reference to bundler-audit. If you have customized your pipeline’s Dependency Scanning configuration related to the `bundler-audit-dependency_scanning` job, then you will want to switch to `gemnasium-dependency_scanning`. If you have not used the `DS_EXCLUDED_ANALYZERS` to reference bundler-audit or customized your template specifically for bundler-audit, you will not need to take any action.
+ stage: secure
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/347491"
diff --git a/data/removals/15_0/15-0-container-registry-htpasswd.yml b/data/removals/15_0/15-0-container-registry-htpasswd.yml
new file mode 100644
index 00000000000..e9a4b2e9882
--- /dev/null
+++ b/data/removals/15_0/15-0-container-registry-htpasswd.yml
@@ -0,0 +1,11 @@
+- name: "Container registry authentication with htpasswd"
+ announcement_milestone: "14.9"
+ announcement_date: "2022-03-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: trizzi
+ body: | # Do not modify this line, instead modify the lines below.
+ The Container Registry supports [authentication](https://gitlab.com/gitlab-org/container-registry/-/blob/master/docs/configuration.md#auth) with `htpasswd`. It relies on an [Apache `htpasswd` file](https://httpd.apache.org/docs/2.4/programs/htpasswd.html), with passwords hashed using `bcrypt`.
+
+ Since it isn't used in the context of GitLab (the product), `htpasswd` authentication will be deprecated in GitLab 14.9 and removed in GitLab 15.0.
diff --git a/data/removals/15_0/15-0-custom_hooks_dir.yml b/data/removals/15_0/15-0-custom_hooks_dir.yml
new file mode 100644
index 00000000000..2c116a55e1c
--- /dev/null
+++ b/data/removals/15_0/15-0-custom_hooks_dir.yml
@@ -0,0 +1,12 @@
+- name: "Move `custom_hooks_dir` setting from GitLab Shell to Gitaly"
+ announcement_milestone: "14.9"
+ announcement_date: "2022-03-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ The [`custom_hooks_dir`](https://docs.gitlab.com/ee/administration/server_hooks.html#create-a-global-server-hook-for-all-repositories) setting is now configured in Gitaly, and is removed from GitLab Shell in GitLab 15.0.
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/4208
+ documentation_url: https://docs.gitlab.com/ee/administration/server_hooks.html#create-a-global-server-hook-for-all-repositories
diff --git a/data/removals/15_0/15-0-database-deprecate-legacy-database-conf.yml b/data/removals/15_0/15-0-database-deprecate-legacy-database-conf.yml
new file mode 100644
index 00000000000..c9c64de7aff
--- /dev/null
+++ b/data/removals/15_0/15-0-database-deprecate-legacy-database-conf.yml
@@ -0,0 +1,17 @@
+- name: "Support for legacy format of `config/database.yml` removed"
+ announcement_milestone: "14.3"
+ announcement_date: "2021-09-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: |
+ The syntax of [GitLab's database](https://docs.gitlab.com/omnibus/settings/database.html)
+ configuration located in `database.yml` has changed and the legacy format has been removed.
+ The legacy format supported a single PostgreSQL adapter, whereas the new format supports multiple databases.
+ The `main:` database needs to be defined as a first configuration item.
+
+ This change only impacts users compiling GitLab from source, all the other installation methods handle this configuration automatically.
+ Instructions are available [in the source update documentation](https://docs.gitlab.com/ee/update/upgrading_from_source.html#new-configuration-options-for-databaseyml).
+ stage: Enablement
+ tiers: [Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/338182
diff --git a/data/removals/15_0/15-0-dependency-scanning-default-java-version.yml b/data/removals/15_0/15-0-dependency-scanning-default-java-version.yml
new file mode 100644
index 00000000000..dee3b5093fc
--- /dev/null
+++ b/data/removals/15_0/15-0-dependency-scanning-default-java-version.yml
@@ -0,0 +1,15 @@
+- name: "Dependency Scanning default Java version changed to 17"
+ announcement_milestone: "14.10"
+ announcement_date: "2022-04-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: NicoleSchwartz
+ body: |
+ For Dependency Scanning, the default version of Java that the scanner expects will be updated from 11 to 17. Java 17 is [the most up-to-date Long Term Support (LTS) version](https://en.wikipedia.org/wiki/Java_version_history). Dependency Scanning continues to support the same [range of versions (8, 11, 13, 14, 15, 16, 17)](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#supported-languages-and-package-managers), only the default version is changing. If your project uses the previous default of Java 11, be sure to [set the `DS_JAVA_VERSION` variable to match](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#configuring-specific-analyzers-used-by-dependency-scanning). Please note that consequently the default version of Gradle is now 7.3.3.
+ stage: secure
+ tiers: ultimate
+ issue_url:
+ documentation_url: https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#configuring-specific-analyzers-used-by-dependency-scanning
+ image_url:
+ video_url:
diff --git a/data/removals/15_0/15-0-dependency-scanning-python-image.yml b/data/removals/15_0/15-0-dependency-scanning-python-image.yml
new file mode 100644
index 00000000000..cbb1e32a211
--- /dev/null
+++ b/data/removals/15_0/15-0-dependency-scanning-python-image.yml
@@ -0,0 +1,11 @@
+- name: "End of support for Python 3.6 in Dependency Scanning"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sam.white
+ stage: secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/351503
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ For those using Dependency Scanning for Python projects, we are removing support for the default `gemnasium-python:2` image which uses Python 3.6, as well as the custom `gemnasium-python:2-python-3.9` image which uses Python 3.9. The new default image as of GitLab 15.0 will be for Python 3.9 as it is a [supported version](https://endoflife.date/python) and 3.6 [is no longer supported](https://endoflife.date/python).
diff --git a/data/removals/15_0/15-0-ds-default-analyzers.yml b/data/removals/15_0/15-0-ds-default-analyzers.yml
new file mode 100644
index 00000000000..702ce854d0d
--- /dev/null
+++ b/data/removals/15_0/15-0-ds-default-analyzers.yml
@@ -0,0 +1,12 @@
+- name: "DS_DEFAULT_ANALYZERS environment variable"
+ announcement_milestone: "14.0"
+ announcement_date: "2021-06-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sam.white
+ body: | # Do not modify this line, instead modify the lines below.
+ We are removing the `DS_DEFAULT_ANALYZERS` environment variable from Dependency Scanning on May 22, 2022 in 15.0. After this removal, this variable's value will be ignored. To configure which analyzers to run with the default configuration, you should use the `DS_EXCLUDED_ANALYZERS` variable instead.
+
+ stage: secure
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/333299"
diff --git a/data/removals/15_0/15-0-geo-remove-db-rake-tasks.yml b/data/removals/15_0/15-0-geo-remove-db-rake-tasks.yml
new file mode 100644
index 00000000000..571217f9c92
--- /dev/null
+++ b/data/removals/15_0/15-0-geo-remove-db-rake-tasks.yml
@@ -0,0 +1,31 @@
+- name: "Custom `geo:db:*` Rake tasks are no longer available"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ reporter: sranasinghe
+ stage: enablement
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/351945
+ body: |
+ In GitLab 14.8, we [deprecated the `geo:db:*` Rake tasks and replaced them with built-in tasks](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/77269/diffs) after [switching the Geo tracking database to use Rails' 6 support of multiple databases](https://gitlab.com/groups/gitlab-org/-/epics/6458).
+ The following `geo:db:*` tasks have been removed from GitLab 15.0 and have been replaced with their corresponding `db:*:geo` tasks:
+
+ - `geo:db:drop` -> `db:drop:geo`
+ - `geo:db:create` -> `db:create:geo`
+ - `geo:db:setup` -> `db:setup:geo`
+ - `geo:db:migrate` -> `db:migrate:geo`
+ - `geo:db:rollback` -> `db:rollback:geo`
+ - `geo:db:version` -> `db:version:geo`
+ - `geo:db:reset` -> `db:reset:geo`
+ - `geo:db:seed` -> `db:seed:geo`
+ - `geo:schema:load:geo` -> `db:schema:load:geo`
+ - `geo:db:schema:dump` -> `db:schema:dump:geo`
+ - `geo:db:migrate:up` -> `db:migrate:up:geo`
+ - `geo:db:migrate:down` -> `db:migrate:down:geo`
+ - `geo:db:migrate:redo` -> `db:migrate:redo:geo`
+ - `geo:db:migrate:status` -> `db:migrate:status:geo`
+ - `geo:db:test:prepare` -> `db:test:prepare:geo`
+ - `geo:db:test:load` -> `db:test:load:geo`
+ - `geo:db:test:purge` -> `db:test:purge:geo`
+ tiers: ["Premium", "Ultimate"]
diff --git a/data/removals/15_0/15-0-geo-remove-promote-db.yml b/data/removals/15_0/15-0-geo-remove-promote-db.yml
new file mode 100644
index 00000000000..65fa8fdff8e
--- /dev/null
+++ b/data/removals/15_0/15-0-geo-remove-promote-db.yml
@@ -0,0 +1,13 @@
+- name: "The `promote-db` command is no longer available from `gitlab-ctl`"
+ announcement_milestone: "14.5"
+ announcement_date: "2021-11-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sranasinghe
+ stage: enablement
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/345207
+ body: |
+ In GitLab 14.5, we introduced the command `gitlab-ctl promote` to promote any Geo secondary node to a primary during a failover. This command replaces `gitlab-ctl promote-db` which is used to promote database nodes in multi-node Geo secondary sites. The `gitlab-ctl promote-db` command has been removed in GitLab 15.0.
+ tiers: [Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/administration/geo/disaster_recovery/planned_failover.html
diff --git a/data/removals/15_0/15-0-geo-remove-promote-to-primary-node.yml b/data/removals/15_0/15-0-geo-remove-promote-to-primary-node.yml
new file mode 100644
index 00000000000..becc7b26b9a
--- /dev/null
+++ b/data/removals/15_0/15-0-geo-remove-promote-to-primary-node.yml
@@ -0,0 +1,13 @@
+- name: "Remove `promote-to-primary-node` command from `gitlab-ctl`"
+ announcement_milestone: "14.5"
+ announcement_date: "2021-11-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sranasinghe
+ stage: enablement
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/345207
+ body: |
+ In GitLab 14.5, we introduced the command `gitlab-ctl promote` to promote any Geo secondary node to a primary during a failover. This command replaces `gitlab-ctl promote-to-primary-node` which was only usable for single-node Geo sites. `gitlab-ctl promote-to-primary-node` has been removed in GitLab 15.0.
+ tiers: [Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/administration/geo/disaster_recovery/planned_failover.html
diff --git a/data/removals/15_0/15-0-gitaly-internal-socket-dir.yml b/data/removals/15_0/15-0-gitaly-internal-socket-dir.yml
new file mode 100644
index 00000000000..eedb50d2205
--- /dev/null
+++ b/data/removals/15_0/15-0-gitaly-internal-socket-dir.yml
@@ -0,0 +1,13 @@
+- name: "Support for `gitaly['internal_socket_dir']`"
+ announcement_milestone: "14.10"
+ announcement_date: "2022-04-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ Gitaly introduced a new directory that holds all runtime data Gitaly requires to operate correctly. This new directory replaces the old internal socket directory, and consequentially the usage of `gitaly['internal_socket_dir']` was deprecated in favor of `gitaly['runtime_dir']`.
+
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/6758
+ documentation_url: https://docs.gitlab.com/omnibus/update/gitlab_15_changes.html#removing-support-for-gitalys-internal-socket-path
diff --git a/data/removals/15_0/15-0-managed-cluster-applications.yml b/data/removals/15_0/15-0-managed-cluster-applications.yml
new file mode 100644
index 00000000000..b0e4bae8852
--- /dev/null
+++ b/data/removals/15_0/15-0-managed-cluster-applications.yml
@@ -0,0 +1,12 @@
+- name: "`Managed-Cluster-Applications.gitlab-ci.yml`"
+ announcement_milestone: "14.0"
+ announcement_date: "2021-06-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: nagyv-gitlab
+ body: | # Do not modify this line, instead modify the lines below.
+ The `Managed-Cluster-Applications.gitlab-ci.yml` CI/CD template is being removed. If you need an alternative, try the [Cluster Management project template](https://gitlab.com/gitlab-org/gitlab/-/issues/333610) instead. If your are not ready to move, you can copy the [last released version](https://gitlab.com/gitlab-org/gitlab-foss/-/blob/v14.10.1/lib/gitlab/ci/templates/Managed-Cluster-Applications.gitlab-ci.yml) of the template into your project.
+# The following items are not published on the docs page, but may be used in the future.
+ stage: "Configure"
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/333610
diff --git a/data/removals/15_0/15-0-oauth-implicit-grant.yml b/data/removals/15_0/15-0-oauth-implicit-grant.yml
new file mode 100644
index 00000000000..4a8cd53dc13
--- /dev/null
+++ b/data/removals/15_0/15-0-oauth-implicit-grant.yml
@@ -0,0 +1,16 @@
+- name: "OAuth implicit grant" # the name of the feature being removed. Avoid the words `deprecation`, `deprecate`, `removal`, and `remove` in this field because these are implied.
+ announcement_milestone: "14.0" # The milestone when this feature was deprecated.
+ announcement_date: "2021-06-22" # The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is being removed.
+ removal_date: "2022-05-22" # This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # Change to true if this removal is a breaking change.
+ reporter: hsutor # GitLab username of the person reporting the removal
+ body: | # Do not modify this line, instead modify the lines below.
+ The OAuth implicit grant authorization flow is no longer supported. Any applications that use OAuth implicit grant must switch to alternative [supported OAuth flows](https://docs.gitlab.com/ee/api/oauth2.html).
+# The following items are not published on the docs page, but may be used in the future.
+ stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-oauth-tokens-no-expiry.yml b/data/removals/15_0/15-0-oauth-tokens-no-expiry.yml
new file mode 100644
index 00000000000..f93b8253ec7
--- /dev/null
+++ b/data/removals/15_0/15-0-oauth-tokens-no-expiry.yml
@@ -0,0 +1,18 @@
+- name: "OAuth tokens without an expiration"
+ announcement_milestone: "14.3"
+ announcement_date: "2021-09-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: hsutor
+ body: |
+ GitLab no longer supports OAuth tokens [without an expiration](https://docs.gitlab.com/ee/integration/oauth_provider.html#expiring-access-tokens).
+
+ Any existing token without an expiration has one automatically generated and applied.
+# The following items are not published on the docs page, but may be used in the future.
+ stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: https://docs.gitlab.com/ee/integration/oauth_provider.html#expiring-access-tokens
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-omniauth-kerberos-gem.yml b/data/removals/15_0/15-0-omniauth-kerberos-gem.yml
new file mode 100644
index 00000000000..fa005ff0404
--- /dev/null
+++ b/data/removals/15_0/15-0-omniauth-kerberos-gem.yml
@@ -0,0 +1,21 @@
+- name: "`omniauth-kerberos` gem" # the name of the feature being removed. Avoid the words `deprecation`, `deprecate`, `removal`, and `remove` in this field because these are implied.
+ announcement_milestone: "14.3" # The milestone when this feature was deprecated.
+ announcement_date: "2021-09-22" # The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is being removed.
+ removal_date: "2022-05-22" # This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # Change to true if this removal is a breaking change.
+ reporter: hsutor # GitLab username of the person reporting the removal
+ body: | # Do not modify this line, instead modify the lines below.
+ The `omniauth-kerberos` gem is no longer supported. This gem has not been maintained and has very little usage. Therefore, we
+ removed support for this authentication method and recommend using [SPEGNO](https://en.wikipedia.org/wiki/SPNEGO) instead. You can
+ follow the [upgrade instructions](https://docs.gitlab.com/ee/integration/kerberos.html#upgrading-from-password-based-to-ticket-based-kerberos-sign-ins)
+ to upgrade from the removed integration to the new supported one.
+
+ We are not removing Kerberos SPNEGO integration. We are removing the old password-based Kerberos.
+# The following items are not published on the docs page, but may be used in the future.
+ stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-package-container-registry-group-api.yml b/data/removals/15_0/15-0-package-container-registry-group-api.yml
new file mode 100644
index 00000000000..4d992c6c75f
--- /dev/null
+++ b/data/removals/15_0/15-0-package-container-registry-group-api.yml
@@ -0,0 +1,14 @@
+- name: "Update to the Container Registry group-level API"
+ announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2021-11-22"
+ removal_milestone: "15.0" # the milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ In GitLab 15.0, support for the `tags` and `tags_count` parameters will be removed from the Container Registry API that [gets registry repositories from a group](../api/container_registry.md#within-a-group).
+
+ The `GET /groups/:id/registry/repositories` endpoint will remain, but won't return any info about tags. To get the info about tags, you can use the existing `GET /registry/repositories/:id` endpoint, which will continue to support the `tags` and `tag_count` options as it does today. The latter must be called once per image repository.
+ stage: Package
+ tiers: Free
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/336912
+ documentation_url: https://docs.gitlab.com/ee/api/container_registry.html#within-a-group
diff --git a/data/removals/15_0/15-0-package-settings-permissions.yml b/data/removals/15_0/15-0-package-settings-permissions.yml
new file mode 100644
index 00000000000..5a458b588b8
--- /dev/null
+++ b/data/removals/15_0/15-0-package-settings-permissions.yml
@@ -0,0 +1,18 @@
+- name: "GraphQL permissions change for Package settings"
+ announcement_milestone: "14.9"
+ announcement_date: "2022-03-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: trizzi
+ body: | # Do not modify this line, instead modify the lines below.
+ The GitLab Package stage offers a Package Registry, Container Registry, and Dependency Proxy to help you manage all of your dependencies using GitLab. Each of these product categories has a variety of settings that can be adjusted using the API.
+
+ The permissions model for GraphQL is being updated. After 15.0, users with the Guest, Reporter, and Developer role can no longer update these settings:
+
+ - [Package Registry settings](https://docs.gitlab.com/ee/api/graphql/reference/#packagesettings)
+ - [Container Registry cleanup policy](https://docs.gitlab.com/ee/api/graphql/reference/#containerexpirationpolicy)
+ - [Dependency Proxy time-to-live policy](https://docs.gitlab.com/ee/api/graphql/reference/#dependencyproxyimagettlgrouppolicy)
+ - [Enabling the Dependency Proxy for your group](https://docs.gitlab.com/ee/api/graphql/reference/#dependencyproxysetting)
+
+ The issue for this removal is [GitLab-#350682](https://gitlab.com/gitlab-org/gitlab/-/issues/350682)
diff --git a/data/removals/15_0/15-0-praefect-database-no-proxy.yml b/data/removals/15_0/15-0-praefect-database-no-proxy.yml
new file mode 100644
index 00000000000..b363decc68e
--- /dev/null
+++ b/data/removals/15_0/15-0-praefect-database-no-proxy.yml
@@ -0,0 +1,11 @@
+- name: "Move Gitaly Cluster Praefect `database_host_no_proxy` and `database_port_no_proxy configs`"
+ announcement_milestone: "14.0"
+ announcement_date: "2021-05-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ The Gitaly Cluster configuration keys for `praefect['database_host_no_proxy']` and `praefect['database_port_no_proxy']` are replaced with `praefect['database_direct_host']` and `praefect['database_direct_port']`.
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/6150
diff --git a/data/removals/15_0/15-0-praefect-virtual-storage.yml b/data/removals/15_0/15-0-praefect-virtual-storage.yml
new file mode 100644
index 00000000000..a1ffa20bcfd
--- /dev/null
+++ b/data/removals/15_0/15-0-praefect-virtual-storage.yml
@@ -0,0 +1,9 @@
+- name: "Gitaly nodes in virtual storage"
+ announcement_milestone: "13.12" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2021-04-22"
+ removal_milestone: "15.0" # the milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ Configuring the Gitaly nodes directly in the virtual storage's root configuration object has been deprecated in GitLab 13.12 and is no longer supported in GitLab 15.0. You must move the Gitaly nodes under the `'nodes'` key as described in [the Praefect configuration](https://docs.gitlab.com/ee/administration/gitaly/praefect.html#praefect).
+ tiers: [Free, Premium, Ultimate]
diff --git a/data/removals/15_0/15-0-protect-cns-chs.yml b/data/removals/15_0/15-0-protect-cns-chs.yml
new file mode 100644
index 00000000000..470f809efa1
--- /dev/null
+++ b/data/removals/15_0/15-0-protect-cns-chs.yml
@@ -0,0 +1,21 @@
+- name: "Container Network and Host Security"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sam.white
+ body: | # Do not modify this line, instead modify the lines below.
+ All functionality related to the Container Network Security and Container Host Security categories was deprecated in GitLab 14.8 and is scheduled for removal in GitLab 15.0. Users who need a replacement for this functionality are encouraged to evaluate the following open source projects as potential solutions that can be installed and managed outside of GitLab: [AppArmor](https://gitlab.com/apparmor/apparmor), [Cilium](https://github.com/cilium/cilium), [Falco](https://github.com/falcosecurity/falco), [FluentD](https://github.com/fluent/fluentd), [Pod Security Admission](https://kubernetes.io/docs/concepts/security/pod-security-admission/). To integrate these technologies with GitLab, add the desired Helm charts in your copy of the [Cluster Management Project Template](https://docs.gitlab.com/ee/user/clusters/management_project_template.html). Deploy these Helm charts in production by calling commands through GitLab [CI/CD](https://docs.gitlab.com/ee/user/clusters/agent/ci_cd_workflow.html).
+
+ As part of this change, the following capabilities within GitLab are scheduled for removal in GitLab 15.0:
+
+ - The **Security & Compliance > Threat Monitoring** page.
+ - The Network Policy security policy type, as found on the **Security & Compliance > Policies** page.
+ - The ability to manage integrations with the following technologies through GitLab: AppArmor, Cilium, Falco, FluentD, and Pod Security Policies.
+ - All APIs related to the above functionality.
+
+ For additional context, or to provide feedback regarding this change, please reference our [deprecation issue](https://gitlab.com/groups/gitlab-org/-/epics/7476).
+# The following items are not published on the docs page, but may be used in the future.
+ stage: "Protect"
+ issue_url: https://gitlab.com/groups/gitlab-org/-/epics/7477
diff --git a/data/removals/15_0/15-0-protect-vulnerability-check.yml b/data/removals/15_0/15-0-protect-vulnerability-check.yml
new file mode 100644
index 00000000000..91052457612
--- /dev/null
+++ b/data/removals/15_0/15-0-protect-vulnerability-check.yml
@@ -0,0 +1,18 @@
+- name: "Vulnerability Check"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: sam.white
+ body: | # Do not modify this line, instead modify the lines below.
+ The vulnerability check feature was deprecated in GitLab 14.8 and is scheduled for removal in GitLab 15.0. We encourage you to migrate to the new security approvals feature instead. You can do so by navigating to **Security & Compliance > Policies** and creating a new Scan Result Policy.
+
+ The new security approvals feature is similar to vulnerability check. For example, both can require approvals for MRs that contain security vulnerabilities. However, security approvals improve the previous experience in several ways:
+
+ - Users can choose who is allowed to edit security approval rules. An independent security or compliance team can therefore manage rules in a way that prevents development project maintainers from modifying the rules.
+ - Multiple rules can be created and chained together to allow for filtering on different severity thresholds for each scanner type.
+ - A two-step approval process can be enforced for any desired changes to security approval rules.
+ - A single set of security policies can be applied to multiple development projects to allow for ease in maintaining a single, centralized ruleset.
+ stage: "Protect"
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/357300
diff --git a/data/removals/15_0/15-0-removal-artifacts-keyword.yml b/data/removals/15_0/15-0-removal-artifacts-keyword.yml
new file mode 100644
index 00000000000..39f618c47f5
--- /dev/null
+++ b/data/removals/15_0/15-0-removal-artifacts-keyword.yml
@@ -0,0 +1,16 @@
+- name: "`artifacts:report:cobertura` keyword"
+ announcement_milestone: "14.7"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ body: |
+ As of GitLab 15.0, the [`artifacts:report:cobertura`](https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscobertura-removed)
+ keyword has been [replaced](https://gitlab.com/gitlab-org/gitlab/-/issues/344533) by
+ [`artifacts:reports:coverage_report`](https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscoverage_report).
+ Cobertura is the only supported report file, but this is the first step towards GitLab supporting other report types.
+
+# The following items are not published on the docs page, but may be used in the future.
+ stage: Verify
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/348980
+ documentation_url: https://docs.gitlab.com/ee/ci/yaml/artifacts_reports.html#artifactsreportscobertura-removed
diff --git a/data/removals/15_0/15-0-removal-testcoveragesetting.yml b/data/removals/15_0/15-0-removal-testcoveragesetting.yml
new file mode 100644
index 00000000000..bd72a28f0db
--- /dev/null
+++ b/data/removals/15_0/15-0-removal-testcoveragesetting.yml
@@ -0,0 +1,14 @@
+- name: "Test coverage project CI/CD setting" # The headline announcing the removal. i.e. "`CI_PROJECT_CONFIG_PATH` removed in Gitlab 14.0"
+ announcement_milestone: "14.8" # The milestone when this feature was deprecated.
+ announcement_date: "2022-03-22" # The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is being removed.
+ removal_date: "2022-05-22" # This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # Change to true if this removal is a breaking change.
+ reporter: jreporter # GitLab username of the person reporting the removal
+ body: | # Do not modify this line, instead modify the lines below.
+ To specify a test coverage pattern, in GitLab 15.0 the
+ [project setting for test coverage parsing](https://docs.gitlab.com/ee/ci/pipelines/settings.html#add-test-coverage-results-to-a-merge-request-removed)
+ has been removed.
+
+ To set test coverage parsing, use the project’s `.gitlab-ci.yml` file by providing a regular expression with the
+ [`coverage` keyword](https://docs.gitlab.com/ee/ci/yaml/index.html#coverage).
diff --git a/data/removals/15_0/15-0-remove-background-upload-object-storage.yml b/data/removals/15_0/15-0-remove-background-upload-object-storage.yml
new file mode 100644
index 00000000000..7d077175b29
--- /dev/null
+++ b/data/removals/15_0/15-0-remove-background-upload-object-storage.yml
@@ -0,0 +1,20 @@
+- name: "Background upload for object storage"
+ announcement_milestone: "14.9"
+ announcement_date: "2022-03-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: fzimmer
+ body: | # Do not modify this line, instead modify the lines below.
+ To reduce the overall complexity and maintenance burden of GitLab's [object storage feature](https://docs.gitlab.com/ee/administration/object_storage.html), support for using `background_upload` has been removed in GitLab 15.0.
+
+ This impacts a small subset of object storage providers, including but not limited to:
+
+ - **OpenStack** Customers using OpenStack need to change their configuration to use the S3 API instead of Swift.
+ - **RackSpace** Customers using RackSpace-based object storage need to migrate data to a different provider.
+
+ If your object storage provider does not support `background_upload`, please [migrate objects to a supported object storage provider](https://docs.gitlab.com/ee/administration/object_storage.html#migrate-objects-to-a-different-object-storage-provider).
+ stage: Enablement
+ tiers: [Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/26600
+ documentation_url: https://docs.gitlab.com/ee/administration/object_storage.html
diff --git a/data/removals/15_0/15-0-remove-dependency-proxy-feature-flag.yml b/data/removals/15_0/15-0-remove-dependency-proxy-feature-flag.yml
new file mode 100644
index 00000000000..1d43573bb22
--- /dev/null
+++ b/data/removals/15_0/15-0-remove-dependency-proxy-feature-flag.yml
@@ -0,0 +1,13 @@
+- name: "Remove dependency_proxy_for_private_groups feature flag" # The name of the feature to be deprecated
+ announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2021-11-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ A feature flag was [introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/11582) in GitLab 13.7 as part of the change to require authentication to use the Dependency Proxy. Before GitLab 13.7, you could use the Dependency Proxy without authentication.
+
+ In GitLab 15.0, we will remove the feature flag, and you must always authenticate when you use the Dependency Proxy.
+ stage: package
+ tiers: Free
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/276777
diff --git a/data/removals/15_0/15-0-remove-replicaiton-detail-routes.yml b/data/removals/15_0/15-0-remove-replicaiton-detail-routes.yml
new file mode 100644
index 00000000000..133a7464a91
--- /dev/null
+++ b/data/removals/15_0/15-0-remove-replicaiton-detail-routes.yml
@@ -0,0 +1,12 @@
+- name: "Legacy Geo Admin UI routes"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ reporter: sranasinghe
+ stage: enablement
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/351345"
+ body: |
+ In GitLab 13.0, we introduced new project and design replication details routes in the Geo Admin UI. These routes are `/admin/geo/replication/projects` and `/admin/geo/replication/designs`. We kept the legacy routes and redirected them to the new routes. These legacy routes `/admin/geo/projects` and `/admin/geo/designs` have been removed in GitLab 15.0. Please update any bookmarks or scripts that may use the legacy routes.
+ tiers: ["Premium", "Ultimate"]
diff --git a/data/removals/15_0/15-0-remove-versions-packagetype.yml b/data/removals/15_0/15-0-remove-versions-packagetype.yml
new file mode 100644
index 00000000000..cfce5d8a226
--- /dev/null
+++ b/data/removals/15_0/15-0-remove-versions-packagetype.yml
@@ -0,0 +1,13 @@
+- name: "Remove Versions from PackageType"
+ announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2021-11-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # the date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ As part of the work to create a [Package Registry GraphQL API](https://gitlab.com/groups/gitlab-org/-/epics/6318), the Package group deprecated the `Version` type for the basic `PackageType` type and moved it to [`PackageDetailsType`](https://docs.gitlab.com/ee/api/graphql/reference/index.html#packagedetailstype).
+
+ In GitLab 15.0, we will completely remove `Version` from `PackageType`.
+ stage: package
+ tiers: Free
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/327453
diff --git a/data/removals/15_0/15-0-remove_ff_push_rules_supersede_code_owners.yml b/data/removals/15_0/15-0-remove_ff_push_rules_supersede_code_owners.yml
new file mode 100644
index 00000000000..b88b6a3f38f
--- /dev/null
+++ b/data/removals/15_0/15-0-remove_ff_push_rules_supersede_code_owners.yml
@@ -0,0 +1,16 @@
+- name: "Removed feature flag PUSH_RULES_SUPERSEDE_CODE_OWNERS" # The name of the feature to be deprecated
+ announcement_milestone: "14.8" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2022-02-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # The date of the milestone release when this feature is planned to be removed. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ breaking_change: true # If this deprecation is a breaking change, set this value to true
+ reporter: tlinz # GitLab username of the person reporting the deprecation
+ body: | # Do not modify this line, instead modify the lines below.
+ The feature flag `PUSH_RULES_SUPERSEDE_CODE_OWNERS` has been removed in GitLab 15.0. From now on, push rules will supersede CODEOWNERS. The CODEOWNERS feature is no longer available for access control.
+# The following items are not published on the docs page, but may be used in the future.
+ stage: create # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/262019 # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-request-profiling.yml b/data/removals/15_0/15-0-request-profiling.yml
new file mode 100644
index 00000000000..0ca6919130c
--- /dev/null
+++ b/data/removals/15_0/15-0-request-profiling.yml
@@ -0,0 +1,18 @@
+- name: "Request profiling"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: iroussos
+ body: | # Do not modify this line, instead modify the lines below.
+ [Request profiling](https://docs.gitlab.com/ee/administration/monitoring/performance/request_profiling.html) has been removed in GitLab 15.0.
+
+ We're working on [consolidating our profiling tools](https://gitlab.com/groups/gitlab-org/-/epics/7327) and making them more easily accessible.
+ We [evaluated](https://gitlab.com/gitlab-org/gitlab/-/issues/350152) the use of this feature and we found that it is not widely used.
+ It also depends on a few third-party gems that are not actively maintained anymore, have not been updated for the latest version of Ruby, or crash frequently when profiling heavy page loads.
+
+ For more information, check the [summary section of the deprecation issue](https://gitlab.com/gitlab-org/gitlab/-/issues/352488#deprecation-summary).
+ stage: Monitor
+ tiers: [Free, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/352488
diff --git a/data/deprecations/14-6-runner-api-status-renames-not_connected.yml b/data/removals/15_0/15-0-runner-api-status-renames-not_connected.yml
index a2aba7cadbe..9406936a2eb 100644
--- a/data/deprecations/14-6-runner-api-status-renames-not_connected.yml
+++ b/data/removals/15_0/15-0-runner-api-status-renames-not_connected.yml
@@ -5,7 +5,8 @@
breaking_change: true
body: | # Do not modify this line, instead modify the lines below.
The GitLab Runner REST and GraphQL [API](https://docs.gitlab.com/ee/api/runners.html#runners-api) endpoints
- will return `never_contacted` instead of `not_connected` as the status values in 15.0.
+ deprecated the `not_connected` status value in GitLab 14.6 and will start returning `never_contacted` in its place
+ starting in GitLab 15.0.
Runners that have never contacted the GitLab instance will also return `stale` if created more than 3 months ago.
stage: Verify
diff --git a/data/removals/15_0/15-0-runner-disable-strict-host-key-check.yml b/data/removals/15_0/15-0-runner-disable-strict-host-key-check.yml
new file mode 100644
index 00000000000..384d025ad66
--- /dev/null
+++ b/data/removals/15_0/15-0-runner-disable-strict-host-key-check.yml
@@ -0,0 +1,14 @@
+- name: "Known host required for GitLab Runner SSH executor"
+ announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
+ removal_milestone: "15.0" # the milestone when this feature is planned to be removed
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ In [GitLab 14.3](https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/3074), we added a configuration setting in the GitLab Runner `config.toml`. This setting, [`[runners.ssh.disable_strict_host_key_checking]`](https://docs.gitlab.com/runner/executors/ssh.html#security), controls whether or not to use strict host key checking with the SSH executor.
+
+ In GitLab 15.0, the default value for this configuration option has changed from `true` to `false`. This means that strict host key checking will be enforced when using the GitLab Runner SSH executor.
+ stage: Verify
+ tiers: [Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28192
+ documentation_url: https://docs.gitlab.com/runner/executors/ssh.html#security
+ announcement_date: "2021-11-22"
diff --git a/data/deprecations/14-6-runner_api_new_stale_status_breaking_change.yml b/data/removals/15_0/15-0-runner_api_new_stale_status_breaking_change.yml
index 0f21318d329..905bc3befce 100644
--- a/data/deprecations/14-6-runner_api_new_stale_status_breaking_change.yml
+++ b/data/removals/15_0/15-0-runner_api_new_stale_status_breaking_change.yml
@@ -5,9 +5,12 @@
removal_date: "2022-05-22"
breaking_change: true
body: | # Do not modify this line, instead modify the lines below.
- A breaking change will occur for the Runner [API](https://docs.gitlab.com/ee/api/runners.html#runners-api) endpoints in 15.0.
+ A breaking change was made to the Runner [API](https://docs.gitlab.com/ee/api/runners.html#runners-api) endpoints
+ in 15.0.
- Instead of the GitLab Runner API endpoints returning `offline` and `not_connected` for runners that have not contacted the GitLab instance in the past three months, the API endpoints will return the `stale` value, which was introduced in 14.6.
+ Instead of the GitLab Runner API endpoints returning `offline` and `not_connected` for runners that have not
+ contacted the GitLab instance in the past three months, the API endpoints now return the `stale` value,
+ which was introduced in 14.6.
stage: Verify
tiers: [Core, Premium, Ultimate]
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/347303
diff --git a/data/removals/15_0/15-0-sast-dotnet-21.yml b/data/removals/15_0/15-0-sast-dotnet-21.yml
new file mode 100644
index 00000000000..28f13949154
--- /dev/null
+++ b/data/removals/15_0/15-0-sast-dotnet-21.yml
@@ -0,0 +1,33 @@
+- name: "SAST support for .NET 2.1"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ reporter: connorgilbert
+ stage: Secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/352553
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ The [GitLab SAST Security Code Scan analyzer](https://gitlab.com/gitlab-org/security-products/analyzers/security-code-scan) scans .NET code for security vulnerabilities.
+ For technical reasons, the analyzer must first build the code to scan it.
+
+ In GitLab versions prior to 15.0, the default analyzer image (version 2) included support for:
+
+ - .NET 2.1
+ - .NET Core 3.1
+ - .NET 5.0
+
+ In GitLab 15.0, we've changed the default major version for this analyzer from version 2 to version 3. This change:
+
+ - Adds [severity values for vulnerabilities](https://gitlab.com/gitlab-org/gitlab/-/issues/350408) along with [other new features and improvements](https://gitlab.com/gitlab-org/security-products/analyzers/security-code-scan/-/blob/master/CHANGELOG.md).
+ - Removes .NET 2.1 support.
+ - Adds support for .NET 6.0, Visual Studio 2019, and Visual Studio 2022.
+
+ Version 3 was [announced in GitLab 14.6](https://about.gitlab.com/releases/2021/12/22/gitlab-14-6-released/#sast-support-for-net-6) and made available as an optional upgrade.
+
+ If you rely on .NET 2.1 support being present in the analyzer image by default, you must take action as detailed in the [deprecation issue for this change](https://gitlab.com/gitlab-org/gitlab/-/issues/352553#breaking-change).
+# The following items are not published on the docs page, but may be used in the future.
+ tiers: [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-sast-spotbugs-java-8.yml b/data/removals/15_0/15-0-sast-spotbugs-java-8.yml
new file mode 100644
index 00000000000..c6e59bf4b0f
--- /dev/null
+++ b/data/removals/15_0/15-0-sast-spotbugs-java-8.yml
@@ -0,0 +1,28 @@
+- name: "Out-of-the-box SAST (SpotBugs) support for Java 8"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ reporter: connorgilbert
+ stage: Secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/352549
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ The [GitLab SAST SpotBugs analyzer](https://gitlab.com/gitlab-org/security-products/analyzers/spotbugs) scans [Java, Scala, Groovy, and Kotlin code](https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks) for security vulnerabilities.
+ For technical reasons, the analyzer must first compile the code before scanning.
+ Unless you use the [pre-compilation strategy](https://docs.gitlab.com/ee/user/application_security/sast/#pre-compilation), the analyzer attempts to automatically compile your project's code.
+
+ In GitLab versions prior to 15.0, the analyzer image included Java 8 and Java 11 runtimes to facilitate compilation.
+
+ As of GitLab 15.0, we've:
+
+ - Removed Java 8 from the analyzer image to reduce the size of the image.
+ - Added Java 17 to the analyzer image to make it easier to compile with Java 17.
+ - Changed the default Java version from Java 8 to Java 17.
+
+ If you rely on Java 8 being present in the analyzer environment, you must take action as detailed in the [deprecation issue for this change](https://gitlab.com/gitlab-org/gitlab/-/issues/352549#breaking-change).
+# The following items are not published on the docs page, but may be used in the future.
+ tiers: [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-secret-detection-configurations.yml b/data/removals/15_0/15-0-secret-detection-configurations.yml
new file mode 100644
index 00000000000..0f759fae11c
--- /dev/null
+++ b/data/removals/15_0/15-0-secret-detection-configurations.yml
@@ -0,0 +1,30 @@
+- name: "Secret Detection configuration variables"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: false
+ reporter: connorgilbert
+ stage: Secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/352565
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ To make it simpler and more reliable to [customize GitLab Secret Detection](https://docs.gitlab.com/ee/user/application_security/secret_detection/#customizing-settings), we've removed some of the variables that you could previously set in your CI/CD configuration.
+
+ The following variables previously allowed you to customize the options for historical scanning, but interacted poorly with the [GitLab-managed CI/CD template](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/Secret-Detection.gitlab-ci.yml) and are now removed:
+
+ - `SECRET_DETECTION_COMMIT_FROM`
+ - `SECRET_DETECTION_COMMIT_TO`
+ - `SECRET_DETECTION_COMMITS`
+ - `SECRET_DETECTION_COMMITS_FILE`
+
+ The `SECRET_DETECTION_ENTROPY_LEVEL` previously allowed you to configure rules that only considered the entropy level of strings in your codebase, and is now removed.
+ This type of entropy-only rule created an unacceptable number of incorrect results (false positives).
+
+ You can still customize the behavior of the Secret Detection analyzer using the [available CI/CD variables](https://docs.gitlab.com/ee/user/application_security/secret_detection/#available-cicd-variables).
+
+ For further details, see [the deprecation issue for this change](https://gitlab.com/gitlab-org/gitlab/-/issues/352565).
+# The following items are not published on the docs page, but may be used in the future.
+ tiers: [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/user/application_security/secret_detection/#available-cicd-variables # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-serverless.yml b/data/removals/15_0/15-0-serverless.yml
new file mode 100644
index 00000000000..9f6a94037d8
--- /dev/null
+++ b/data/removals/15_0/15-0-serverless.yml
@@ -0,0 +1,17 @@
+- name: "GitLab Serverless"
+ announcement_milestone: "14.3"
+ announcement_date: "2021-09-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: nagyv-gitlab
+ body: | # Do not modify this line, instead modify the lines below.
+ All functionality related to GitLab Serverless was deprecated in GitLab 14.3 and is scheduled for removal in GitLab 15.0. Users who need a replacement for this functionality are encouraged to explore using the following technologies with GitLab CI/CD:
+
+ - [Serverless Framework](https://www.serverless.com)
+ - [AWS Serverless Application Model](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/deploying-using-gitlab.html)
+
+ For additional context, or to provide feedback regarding this change, please reference our [deprecation issue](https://gitlab.com/groups/gitlab-org/configure/-/epics/6).
+# The following items are not published on the docs page, but may be used in the future.
+ stage: "Configure"
+ issue_url: https://gitlab.com/groups/gitlab-org/configure/-/epics/6
diff --git a/data/removals/15_0/15-0-sidekiq-metrics-health-check-config.yml b/data/removals/15_0/15-0-sidekiq-metrics-health-check-config.yml
new file mode 100644
index 00000000000..cfd0d5f5b13
--- /dev/null
+++ b/data/removals/15_0/15-0-sidekiq-metrics-health-check-config.yml
@@ -0,0 +1,24 @@
+- name: "Sidekiq configuration for metrics and health checks"
+ announcement_milestone: "14.7"
+ announcement_date: "2021-01-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ In GitLab 15.0, you can no longer serve Sidekiq metrics and health checks over a single address and port.
+
+ To improve stability, availability, and prevent data loss in edge cases, GitLab now serves
+ [Sidekiq metrics and health checks from two separate servers](https://gitlab.com/groups/gitlab-org/-/epics/6409).
+
+ When you use Omnibus or Helm charts, if GitLab is configured for both servers to bind to the same address,
+ a configuration error occurs.
+ To prevent this error, choose different ports for the metrics and health check servers:
+
+ - [Configure Sidekiq health checks](https://docs.gitlab.com/ee/administration/sidekiq.html#configure-health-checks)
+ - [Configure the Sidekiq metrics server](https://docs.gitlab.com/ee/administration/sidekiq.html#configure-the-sidekiq-metrics-server)
+
+ If you installed GitLab from source, verify manually that both servers are configured to bind to separate addresses and ports.
+ stage: Enablement
+ tiers: [Free, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/347509
+ documentation_url: https://docs.gitlab.com/ee/administration/sidekiq.html
diff --git a/data/removals/15_0/15-0-static-site-editor.yml b/data/removals/15_0/15-0-static-site-editor.yml
new file mode 100644
index 00000000000..492c3b5e3d2
--- /dev/null
+++ b/data/removals/15_0/15-0-static-site-editor.yml
@@ -0,0 +1,17 @@
+- name: "Static Site Editor" # (required) the name of the feature being removed. Avoid the words `deprecation`, `deprecate`, `removal`, and `remove` in this field because these are implied.
+ announcement_milestone: "14.7" # (required) The milestone when this feature was deprecated.
+ announcement_date: "2022-01-22" # (required) The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "15.0" # (required) The milestone when this feature is being removed.
+ removal_date: "2022-05-22" # (required) This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: false # (required) Change to true if this removal is a breaking change.
+ reporter: ericschurter # (required) GitLab username of the person reporting the removal
+ stage: create # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/347137 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ The Static Site Editor was deprecated in GitLab 14.7 and the feature is being removed in GitLab 15.0. Incoming requests to the Static Site Editor will be redirected and open the target file to edit in the Web IDE. Current users of the Static Site Editor can view the [documentation](https://docs.gitlab.com/ee/user/project/static_site_editor/) for more information, including how to remove the configuration files from existing projects. We will continue investing in improvements to the Markdown editing experience by [maturing the Content Editor](https://gitlab.com/groups/gitlab-org/-/epics/5401) and making it available as a way to edit content across GitLab.
+
+# The following items are not published on the docs page, but may be used in the future.
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/user/project/static_site_editor/
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-tracing.yml b/data/removals/15_0/15-0-tracing.yml
new file mode 100644
index 00000000000..b2ad2e525c0
--- /dev/null
+++ b/data/removals/15_0/15-0-tracing.yml
@@ -0,0 +1,16 @@
+- name: "Jaeger integration removed in GitLab 15.0" # The headline announcing the removal. i.e. "`CI_PROJECT_CONFIG_PATH` removed in Gitlab 14.0"
+ announcement_milestone: "14.7" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2022-01-22"
+ removal_milestone: "15.0" # The milestone when this feature is being removed.
+ removal_date: "2022-05-22" # This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # Change to true if this removal is a breaking change.
+ reporter: kbychu # GitLab username of the person reporting the removal
+ body: | # Do not modify this line, instead modify the lines below.
+ Tracing in GitLab is an integration with Jaeger, an open-source end-to-end distributed tracing system. GitLab users could previously navigate to their Jaeger instance to gain insight into the performance of a deployed application, tracking each function or microservice that handles a given request. Tracing in GitLab was deprecated in GitLab 14.7, and removed in 15.0. To track work on a possible replacement, see the issue for [Opstrace integration with GitLab](https://gitlab.com/groups/gitlab-org/-/epics/6976).
+# The following items are not published on the docs page, but may be used in the future.
+ stage: Monitor # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: [Free] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/346540 # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: https://docs.gitlab.com/ee/operations/tracing.html # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15-0-type.yml b/data/removals/15_0/15-0-type.yml
new file mode 100644
index 00000000000..bb1b764f823
--- /dev/null
+++ b/data/removals/15_0/15-0-type.yml
@@ -0,0 +1,10 @@
+- name: "Remove `type` and `types` keyword from CI/CD configuration"
+ announcement_milestone: "14.6"
+ announcement_date: "2021-12-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: dhershkovitch
+ body: | # Do not modify this line, instead modify the lines below.
+ The `type` and `types` CI/CD keywords is removed in GitLab 15.0, so pipelines that use these keywords fail with a syntax error. Switch to `stage` and `stages`, which have the same behavior.
+# The following items are not published on the docs page, but may be used in the future.
diff --git a/data/removals/15_0/15_0-logging.yml b/data/removals/15_0/15_0-logging.yml
new file mode 100644
index 00000000000..2cff8f39e19
--- /dev/null
+++ b/data/removals/15_0/15_0-logging.yml
@@ -0,0 +1,16 @@
+- name: "ELK stack logging removed in GitLab 15.0" # The headline announcing the removal. i.e. "`CI_PROJECT_CONFIG_PATH` removed in Gitlab 14.0"
+ announcement_milestone: "14.7" # The milestone when this feature was deprecated.
+ announcement_date: "2022-01-22" # The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is being removed.
+ removal_date: "2022-05-22" # This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # Change to true if this removal is a breaking change.
+ reporter: kbychu # GitLab username of the person reporting the removal
+ body: | # Do not modify this line, instead modify the lines below.
+ The logging features in GitLab allow users to install the ELK stack (Elasticsearch, Logstash, and Kibana) to aggregate and manage application logs. Users could search for relevant logs in GitLab directly. However, since deprecating certificate-based integration with Kubernetes clusters and GitLab Managed Apps, this feature is no longer available. For more information on the future of logging and observability, you can follow the issue for [integrating Opstrace with GitLab](https://gitlab.com/groups/gitlab-org/-/epics/6976).
+# The following items are not published on the docs page, but may be used in the future.
+ stage: Monitor # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
+ tiers: [Free] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/346485 # (optional) This is a link to the deprecation issue in GitLab
+ documentation_url: https://docs.gitlab.com/ee/operations/index.html # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/removals/15_0/15_0-remove-pipelines-from-version-field.yml b/data/removals/15_0/15_0-remove-pipelines-from-version-field.yml
new file mode 100644
index 00000000000..46bb76b19e1
--- /dev/null
+++ b/data/removals/15_0/15_0-remove-pipelines-from-version-field.yml
@@ -0,0 +1,16 @@
+- name: "Remove pipelines field from the version field" # The name of the feature to be deprecated
+ announcement_milestone: "14.5" # The milestone when this feature was first announced as deprecated.
+ announcement_date: "2021-11-22" # The date of the milestone release when this feature was first announced as deprecated. This should almost always be the 22nd of a month (YYYY-MM-22), unless you did an out of band blog post.
+ removal_milestone: "15.0" # The milestone when this feature is planned to be removed
+ removal_date: "2022-05-22" # The date of the milestone release when this feature is planned to be removed
+ breaking_change: true
+ body: | # Do not modify this line, instead modify the lines below.
+ In GraphQL, there are two `pipelines` fields that you can use in a [`PackageDetailsType`](https://docs.gitlab.com/ee/api/graphql/reference/#packagedetailstype) to get the pipelines for package versions:
+
+ - The `versions` field's `pipelines` field. This returns all the pipelines associated with all the package's versions, which can pull an unbounded number of objects in memory and create performance concerns.
+ - The `pipelines` field of a specific `version`. This returns only the pipelines associated with that single package version.
+
+ To mitigate possible performance problems, we will remove the `versions` field's `pipelines` field in GitLab 15.0. Although you will no longer be able to get all pipelines for all versions of a package, you can still get the pipelines of a single version through the remaining `pipelines` field for that version.
+ stage: package
+ tiers: Free
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/342882
diff --git a/data/removals/15_0/removal-manage-premium-required-pipelines.yml b/data/removals/15_0/removal-manage-premium-required-pipelines.yml
new file mode 100644
index 00000000000..1e91fe1d3fc
--- /dev/null
+++ b/data/removals/15_0/removal-manage-premium-required-pipelines.yml
@@ -0,0 +1,18 @@
+- name: "Required pipeline configurations in Premium tier"
+ announcement_milestone: "14.8"
+ announcement_date: "2021-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: stkerr
+ body: |
+ [Required pipeline configuration](https://docs.gitlab.com/ee/user/admin_area/settings/continuous_integration.html#required-pipeline-configuration) helps to define and mandate organization-wide pipeline configurations and is a requirement at an executive and organizational level. To align better with our [pricing philosophy](https://about.gitlab.com/company/pricing/#three-tiers), this feature is removed from the Premium tier in GitLab 15.0. This feature continues to be available in the GitLab Ultimate tier.
+
+ We recommend customers use [Compliance Pipelines](https://docs.gitlab.com/ee/user/project/settings/index.html#compliance-pipeline-configuration), also in GitLab Ultimate, as an alternative as it provides greater flexibility, allowing required pipelines to be assigned to specific compliance framework labels.
+
+ This change also helps GitLab remain consistent in our tiering strategy with the other related Ultimate-tier features:
+
+ - [Security policies](https://docs.gitlab.com/ee/user/application_security/policies/).
+ - [Compliance framework pipelines](https://docs.gitlab.com/ee/user/project/settings/index.html#compliance-pipeline-configuration).
+
+ stage: "Manage"
diff --git a/data/removals/15_0/removal_manage_ repository_push_audit_event.yml b/data/removals/15_0/removal_manage_ repository_push_audit_event.yml
new file mode 100644
index 00000000000..474a5c41a95
--- /dev/null
+++ b/data/removals/15_0/removal_manage_ repository_push_audit_event.yml
@@ -0,0 +1,17 @@
+- name: "Audit events for repository push events"
+ announcement_milestone: "14.3"
+ announcement_date: "2021-09-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ body: |
+ Audit events for [repository events](https://docs.gitlab.com/ee/administration/audit_events.html#removed-events) are removed as of GitLab 15.0.
+
+ Audit events for repository events were always disabled by default and had to be manually enabled with a feature flag.
+ Enabling them could slow down GitLab instances by generating too many events. Therefore, they are removed.
+
+ Please note that we will add high-volume audit events in the future as part of [streaming audit events](https://docs.gitlab.com/ee/administration/audit_event_streaming.html). An example of this is how we will send [Git fetch actions](https://gitlab.com/gitlab-org/gitlab/-/issues/343984) as a streaming audit event. If you would be interested in seeing repository push events or some other action as a streaming audit event, please reach out to us!
+ stage: Manage
+ tiers: Premium
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/337993
+ documentation_url: https://docs.gitlab.com/ee/administration/audit_events.html#removed-events
diff --git a/data/removals/15_0/removal_manage_optional_pat_expiration.yml b/data/removals/15_0/removal_manage_optional_pat_expiration.yml
new file mode 100644
index 00000000000..21c5b99d1a8
--- /dev/null
+++ b/data/removals/15_0/removal_manage_optional_pat_expiration.yml
@@ -0,0 +1,13 @@
+- name: "Optional enforcement of personal access token expiration"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: stkerr
+ body: |
+ Allowing expired personal access tokens to be used is unusual from a security perspective and could create unusual situations where an
+ expired key is unintentionally able to be used. Unexpected behavior in a security feature is inherently dangerous and so we now do not let expired personal access tokens be used.
+
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/351962"
+ documentation_url: "https://docs.gitlab.com/ee/user/admin_area/settings/account_and_limit_settings.html#allow-expired-access-tokens-to-be-used-removed"
diff --git a/data/removals/15_0/removal_manage_ssh_expiration.yml b/data/removals/15_0/removal_manage_ssh_expiration.yml
new file mode 100644
index 00000000000..accd1d49f6f
--- /dev/null
+++ b/data/removals/15_0/removal_manage_ssh_expiration.yml
@@ -0,0 +1,13 @@
+- name: "Optional enforcement of SSH expiration"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: stkerr
+ body: |
+ Disabling SSH expiration enforcement is unusual from a security perspective and could create unusual situations where an expired
+ key is unintentionally able to be used. Unexpected behavior in a security feature is inherently dangerous and so now we enforce
+ expiration on all SSH keys.
+ issue_url: "https://gitlab.com/gitlab-org/gitlab/-/issues/351963"
+ documentation_url: "https://docs.gitlab.com/ee/user/admin_area/settings/account_and_limit_settings.html#allow-expired-ssh-keys-to-be-used-deprecated"
diff --git a/data/removals/15_0/removal_manage_status_check_passed_status.yml b/data/removals/15_0/removal_manage_status_check_passed_status.yml
new file mode 100644
index 00000000000..598cba369cb
--- /dev/null
+++ b/data/removals/15_0/removal_manage_status_check_passed_status.yml
@@ -0,0 +1,25 @@
+- name: "External status check API breaking changes"
+ announcement_milestone: "14.8"
+ announcement_date: "2022-02-22"
+ removal_milestone: "15.0"
+ removal_date: "2022-05-22"
+ breaking_change: true
+ reporter: stkerr
+ body: |
+ The [external status check API](https://docs.gitlab.com/ee/api/status_checks.html) was originally implemented to
+ support pass-by-default requests to mark a status check as passing. Pass-by-default requests are now removed.
+ Specifically, the following are removed:
+
+ - Requests that do not contain the `status` field.
+ - Requests that have the `status` field set to `approved`.
+
+ From GitLab 15.0, status checks are only set to a passing state if the `status` field is both present
+ and set to `passed`. Requests that:
+
+ - Do not contain the `status` field will be rejected with a `400` error. For more information, see [the relevant issue](https://gitlab.com/gitlab-org/gitlab/-/issues/338827).
+ - Contain any value other than `passed`, such as `approved`, cause the status check to fail. For more information, see [the relevant issue](https://gitlab.com/gitlab-org/gitlab/-/issues/339039).
+
+ To align with this change, API calls to list external status checks also return the value of `passed` rather than
+ `approved` for status checks that have passed.
+ stage: "Manage"
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/339039
diff --git a/data/removals/templates/example.yml b/data/removals/templates/example.yml
index 0904c6a6d7a..b6c3c75d496 100644
--- a/data/removals/templates/example.yml
+++ b/data/removals/templates/example.yml
@@ -9,14 +9,16 @@
#
# Please delete this line and above before submitting your merge request.
-- name: "Feature name" # the name of the feature being removed. Avoid the words `deprecation`, `deprecate`, `removal`, and `remove` in this field because these are implied.
- announcement_milestone: "XX.YY" # The milestone when this feature was deprecated.
- announcement_date: "YYYY-MM-DD" # The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
- removal_milestone: "XX.YY" # The milestone when this feature is being removed.
- removal_date: "YYYY-MM-DD" # This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
- breaking_change: false # Change to true if this removal is a breaking change.
- reporter: exampleuser # GitLab username of the person reporting the removal
- body: | # Do not modify this line, instead modify the lines below.
+- name: "Feature name" # (required) the name of the feature being removed. Avoid the words `deprecation`, `deprecate`, `removal`, and `remove` in this field because these are implied.
+ announcement_milestone: "XX.YY" # (required) The milestone when this feature was deprecated.
+ announcement_date: "YYYY-MM-DD" # (required) The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "XX.YY" # (required) The milestone when this feature is being removed.
+ removal_date: "YYYY-MM-DD" # (required) This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: false # (required) Change to true if this removal is a breaking change.
+ reporter: exampleuser # (required) GitLab username of the person reporting the removal
+ stage: stage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/000000 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
<!-- START OF BODY COMMENT
This area supports markdown. Delete this entire comment and replace it with your markdown content.
@@ -25,9 +27,7 @@
END OF BODY COMMENT -->
# The following items are not published on the docs page, but may be used in the future.
- stage: # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
- issue_url: # (optional) This is a link to the deprecation issue in GitLab
documentation_url: # (optional) This is a link to the current documentation page
image_url: # (optional) This is a link to a thumbnail image depicting the feature
video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/whats_new/202107220001_14_1.yml b/data/whats_new/202107220001_14_1.yml
index 3c67d74d3db..881d96c58d3 100644
--- a/data/whats_new/202107220001_14_1.yml
+++ b/data/whats_new/202107220001_14_1.yml
@@ -90,22 +90,22 @@
image_url: https://img.youtube.com/vi/-1MuKzWJXKQ/hqdefault.jpg
published_at: 2021-07-22
release: 14.1
-- title: CI/CD Tunnel for Kubernetes clusters
+- title: CI/CD workflow for Kubernetes clusters
body: |
- Until now, connecting Kubernetes clusters to GitLab CI/CD required users to open up their clusters towards GitLab. Some organizations do not encourage opening up their firewall externally due to security concerns.
+ Until now, connecting Kubernetes clusters to GitLab CI/CD required you to open up your clusters towards GitLab. Some organizations do not encourage opening up their firewall externally due to security concerns.
- GitLab now ships with a CI/CD Tunnel that connects GitLab Runners with your Kubernetes cluster using the [GitLab Kubernetes Agent](https://docs.gitlab.com/ee/user/clusters/agent/). This enables versatile GitOps workflows where the deployment logic can be coded in the pipeline.
+ GitLab now ships with a CI/CD functionality that connects runners with your Kubernetes cluster by using the [GitLab agent for Kubernetes](https://docs.gitlab.com/ee/user/clusters/agent/). This enables versatile GitOps workflows where the deployment logic can be coded in the pipeline.
You and your team can safely use your preferred tool to run the deployment itself using `kubectl`, `helm`, `kpt`, `tanka`, or anything else without security concerns.
- To use the tunnel, define the `kubecontext` in your CI/CD pipeline to connect with your agent. To simplify this process, we plan to [automatically inject the `kubecontext`](https://gitlab.com/gitlab-org/gitlab/-/issues/324275) into the CI/CD environment in a future iteration.
+ Define the `kubecontext` in your CI/CD pipeline to connect with your agent. To simplify this process, we plan to [automatically inject the `kubecontext`](https://gitlab.com/gitlab-org/gitlab/-/issues/324275) into the CI/CD environment in a future iteration.
- The CI/CD tunnel is currently supported only from the project where the agent was configured but we are working on [adding group-level support](https://gitlab.com/groups/gitlab-org/-/epics/5784). You can safely start using the tunnel on GitLab SaaS and self-managed instances.
+ This type of connection is currently supported only from the project where the agent was configured but we are working on [adding group-level support](https://gitlab.com/groups/gitlab-org/-/epics/5784). You can safely start using CI/CD in your jobs on GitLab SaaS and self-managed instances.
stage: Configure
self-managed: true
gitlab-com: true
packages: [Premium, Ultimate]
- url: https://docs.gitlab.com/ee/user/clusters/agent/ci_cd_tunnel.html
+ url: https://docs.gitlab.com/ee/user/clusters/agent/ci_cd_workflow.html
image_url: https://img.youtube.com/vi/eXxM4ScqiJs/hqdefault.jpg
published_at: 2021-07-22
release: 14.1
diff --git a/data/whats_new/202109200001_14_03.yml b/data/whats_new/202109200001_14_03.yml
index ab82772e637..fa0f05bf0a0 100644
--- a/data/whats_new/202109200001_14_03.yml
+++ b/data/whats_new/202109200001_14_03.yml
@@ -72,7 +72,7 @@
release: 14.3
- title: Grant group access to the GitLab Kubernetes Agent
body: |
- The GitLab Kubernetes Agent provides a secure connection between a Kubernetes cluster and GitLab. Until GitLab 14.2, the CI/CD Tunnel enabled pushing to a cluster only from the same project where the Kubernetes Agent was registered. In GitLab 14.3, the Agent can be authorized to access entire groups. As a result, every project under the authorized group has access to the cluster without the need to register an agent for every project.
+ The GitLab Kubernetes Agent provides a secure connection between a Kubernetes cluster and GitLab. Until GitLab 14.2, the GitLab CI/CD enabled pushing to a cluster only from the same project where the Kubernetes Agent was registered. In GitLab 14.3, the Agent can be authorized to access entire groups. As a result, every project under the authorized group has access to the cluster without the need to register an agent for every project.
stage: Configure
self-managed: true
gitlab-com: true
diff --git a/data/whats_new/2021111800001_14_05.yml b/data/whats_new/2021111800001_14_05.yml
index 5a7607478fc..71f4b0245b9 100644
--- a/data/whats_new/2021111800001_14_05.yml
+++ b/data/whats_new/2021111800001_14_05.yml
@@ -53,7 +53,7 @@
release: 14.5
- title: GitLab Kubernetes Agent available in GitLab Free
body: |
- Connecting a Kubernetes cluster with the GitLab Kubernetes Agent simplifies the setup for cluster applications and enables secure GitOps deployments to the cluster. Initially, the GitLab Kubernetes Agent was available only for Premium users. In our commitment to the open source ethos, we moved the core features of the GitLab Kubernetes Agent and the CI/CD Tunnel to GitLab Free. We expect that the open-sourced features are compelling to many users without dedicated infrastructure teams and strong requirements around cluster management. Advanced features remain available as part of the GitLab Premium offering.
+ Connecting a Kubernetes cluster with the GitLab Kubernetes Agent simplifies the setup for cluster applications and enables secure GitOps deployments to the cluster. Initially, the GitLab Kubernetes Agent was available only for Premium users. In our commitment to the open source ethos, we moved the core features of the GitLab agent for Kubernetes and the ability to use CI/CD with Kubernetes to GitLab Free. We expect that the open-sourced features are compelling to many users without dedicated infrastructure teams and strong requirements around cluster management. Advanced features remain available as part of the GitLab Premium offering.
stage: Configure
self-managed: true
gitlab-com: true