Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-04-04 12:08:31 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-04-04 12:08:31 +0300
commit9e5c2e7342d1393f90e74a2ae4b3f27492c22e1f (patch)
tree0ca4b741649d8ef90cee272b44832b9f4edd254c
parentf3f3149fc5249ad27378e4f2c22b8c3ff429a493 (diff)
Add latest changes from gitlab-org/gitlab@master
-rw-r--r--app/assets/javascripts/diffs/components/diff_file_header.vue15
-rw-r--r--app/assets/javascripts/sidebar/components/participants/participants.vue2
-rw-r--r--app/services/ci/retry_job_service.rb21
-rw-r--r--config/feature_flags/development/retry_job_start_pipeline_after_commit.yml8
-rw-r--r--doc/development/service_ping/review_guidelines.md1
-rw-r--r--doc/user/application_security/dependency_scanning/index.md2
-rw-r--r--doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_11.pngbin0 -> 38646 bytes
-rw-r--r--doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_9.pngbin27667 -> 0 bytes
-rw-r--r--doc/user/application_security/policies/scan-execution-policies.md2
-rw-r--r--doc/user/project/merge_requests/squash_and_merge.md13
-rw-r--r--doc/user/project/remote_development/connect_machine.md107
-rw-r--r--doc/user/project/remote_development/index.md117
-rw-r--r--doc/user/project/repository/file_finder.md40
-rw-r--r--lib/gitlab/usage_data_counters/ci_template_unique_counter.rb4
-rw-r--r--lib/gitlab/usage_data_counters/known_events/analytics.yml13
-rw-r--r--lib/gitlab/usage_data_counters/known_events/ci_templates.yml151
-rw-r--r--lib/gitlab/usage_data_counters/known_events/ci_users.yml2
-rw-r--r--lib/gitlab/usage_data_counters/known_events/code_review_events.yml112
-rw-r--r--lib/gitlab/usage_data_counters/known_events/common.yml69
-rw-r--r--lib/gitlab/usage_data_counters/known_events/container_registry_events.yml5
-rw-r--r--lib/gitlab/usage_data_counters/known_events/ecosystem.yml11
-rw-r--r--lib/gitlab/usage_data_counters/known_events/error_tracking.yml2
-rw-r--r--lib/gitlab/usage_data_counters/known_events/importer_events.yml5
-rw-r--r--lib/gitlab/usage_data_counters/known_events/kubernetes_agent.yml1
-rw-r--r--lib/gitlab/usage_data_counters/known_events/package_events.yml22
-rw-r--r--lib/gitlab/usage_data_counters/known_events/quickactions.yml63
-rw-r--r--lib/gitlab/usage_data_counters/known_events/work_items.yml7
-rw-r--r--locale/gitlab.pot16
-rw-r--r--spec/frontend/diffs/components/diff_file_header_spec.js8
-rw-r--r--spec/services/ci/retry_job_service_spec.rb40
30 files changed, 259 insertions, 600 deletions
diff --git a/app/assets/javascripts/diffs/components/diff_file_header.vue b/app/assets/javascripts/diffs/components/diff_file_header.vue
index 7b736b6c668..0f1c13f818f 100644
--- a/app/assets/javascripts/diffs/components/diff_file_header.vue
+++ b/app/assets/javascripts/diffs/components/diff_file_header.vue
@@ -202,6 +202,9 @@ export default {
externalUrlLabel() {
return sprintf(__('View on %{url}'), { url: this.diffFile.formatted_external_url });
},
+ labelToggleFile() {
+ return this.expanded ? __('Hide file contents') : __('Show file contents');
+ },
},
watch: {
'idState.moreActionsShown': {
@@ -288,12 +291,14 @@ export default {
@click.self="handleToggleFile"
>
<div class="file-header-content">
- <gl-icon
+ <gl-button
v-if="collapsible"
- ref="collapseIcon"
- :name="collapseIcon"
- :size="16"
- class="diff-toggle-caret gl-mr-2"
+ ref="collapseButton"
+ class="gl-mr-2"
+ category="tertiary"
+ size="small"
+ :icon="collapseIcon"
+ :aria-label="labelToggleFile"
@click.stop="handleToggleFile"
/>
<a
diff --git a/app/assets/javascripts/sidebar/components/participants/participants.vue b/app/assets/javascripts/sidebar/components/participants/participants.vue
index ebf577ecdfd..1232145fb24 100644
--- a/app/assets/javascripts/sidebar/components/participants/participants.vue
+++ b/app/assets/javascripts/sidebar/components/participants/participants.vue
@@ -69,7 +69,7 @@ export default {
},
participantLabel() {
return sprintf(
- n__('%{count} participant', '%{count} participants', this.participants.length),
+ n__('%{count} Participant', '%{count} Participants', this.participants.length),
{ count: this.loading ? '' : this.participantCount },
);
},
diff --git a/app/services/ci/retry_job_service.rb b/app/services/ci/retry_job_service.rb
index da0e80dfed7..0764eb95907 100644
--- a/app/services/ci/retry_job_service.rb
+++ b/app/services/ci/retry_job_service.rb
@@ -19,7 +19,7 @@ module Ci
end
# rubocop: disable CodeReuse/ActiveRecord
- def clone!(job, variables: [], enqueue_if_actionable: false)
+ def clone!(job, variables: [], enqueue_if_actionable: false, start_pipeline: false)
# Cloning a job requires a strict type check to ensure
# the attributes being used for the clone are taken straight
# from the model and not overridden by other abstractions.
@@ -32,7 +32,11 @@ module Ci
new_job.set_enqueue_immediately!
end
+ start_pipeline_proc = -> { start_pipeline(job, new_job) } if start_pipeline && start_pipeline_after_commit?
+
new_job.run_after_commit do
+ start_pipeline_proc.call if start_pipeline_proc
+
::Ci::CopyCrossDatabaseAssociationsService.new.execute(job, new_job)
::Deployments::CreateForBuildService.new.execute(new_job)
@@ -59,15 +63,14 @@ module Ci
def check_assignable_runners!(job); end
def retry_job(job, variables: [])
- clone!(job, variables: variables, enqueue_if_actionable: true).tap do |new_job|
+ clone!(job, variables: variables, enqueue_if_actionable: true, start_pipeline: true).tap do |new_job|
check_assignable_runners!(new_job) if new_job.is_a?(Ci::Build)
next if new_job.failed?
ResetSkippedJobsService.new(project, current_user).execute(job)
- Ci::PipelineCreation::StartPipelineService.new(job.pipeline).execute
- new_job.reset
+ start_pipeline(job, new_job) unless start_pipeline_after_commit?
end
end
@@ -76,6 +79,16 @@ module Ci
raise Gitlab::Access::AccessDeniedError, '403 Forbidden'
end
end
+
+ def start_pipeline(job, new_job)
+ Ci::PipelineCreation::StartPipelineService.new(job.pipeline).execute
+ new_job.reset
+ end
+
+ def start_pipeline_after_commit?
+ Feature.enabled?(:retry_job_start_pipeline_after_commit, project)
+ end
+ strong_memoize_attr :start_pipeline_after_commit?
end
end
diff --git a/config/feature_flags/development/retry_job_start_pipeline_after_commit.yml b/config/feature_flags/development/retry_job_start_pipeline_after_commit.yml
new file mode 100644
index 00000000000..dce73e16119
--- /dev/null
+++ b/config/feature_flags/development/retry_job_start_pipeline_after_commit.yml
@@ -0,0 +1,8 @@
+---
+name: retry_job_start_pipeline_after_commit
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/116480
+rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/403934
+milestone: '15.11'
+type: development
+group: group::pipeline execution
+default_enabled: false
diff --git a/doc/development/service_ping/review_guidelines.md b/doc/development/service_ping/review_guidelines.md
index 0227900f54b..d94f094584f 100644
--- a/doc/development/service_ping/review_guidelines.md
+++ b/doc/development/service_ping/review_guidelines.md
@@ -59,7 +59,6 @@ are regular backend changes.
metrics that are based on Database.
- Add `~Data Warehouse::Impact Check` for any database metric that has a query change. Changes in queries can affect [data operations](https://about.gitlab.com/handbook/business-technology/data-team/how-we-work/triage/#gitlabcom-db-structure-changes).
- For tracking using Redis HLL (HyperLogLog):
- - Check the Redis slot.
- Check if a [feature flag is needed](implement.md#recommendations).
- For a metric's YAML definition:
- Check the metric's `description`.
diff --git a/doc/user/application_security/dependency_scanning/index.md b/doc/user/application_security/dependency_scanning/index.md
index 7501aefa158..c6905e62c52 100644
--- a/doc/user/application_security/dependency_scanning/index.md
+++ b/doc/user/application_security/dependency_scanning/index.md
@@ -933,7 +933,7 @@ Then the Gemnasium scanner generates the following CycloneDX SBOMs:
└── gl-sbom-go-go.cdx.json
```
-The CycloneDX SBOMs can be downloaded [the same way as other job artifacts](../../../ci/pipelines/job_artifacts.md#download-job-artifacts).
+You can download CycloneDX SBOMs [the same way as other job artifacts](../../../ci/pipelines/job_artifacts.md#download-job-artifacts).
### Merging multiple CycloneDX SBOMs
diff --git a/doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_11.png b/doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_11.png
new file mode 100644
index 00000000000..76b9a971172
--- /dev/null
+++ b/doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_11.png
Binary files differ
diff --git a/doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_9.png b/doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_9.png
deleted file mode 100644
index 57e729158da..00000000000
--- a/doc/user/application_security/policies/img/scan_execution_policy_rule_mode_v15_9.png
+++ /dev/null
Binary files differ
diff --git a/doc/user/application_security/policies/scan-execution-policies.md b/doc/user/application_security/policies/scan-execution-policies.md
index 96048bb2308..55a4994e168 100644
--- a/doc/user/application_security/policies/scan-execution-policies.md
+++ b/doc/user/application_security/policies/scan-execution-policies.md
@@ -44,7 +44,7 @@ Most policy changes take effect as soon as the merge request is merged. Any chan
do not go through a merge request and are committed directly to the default branch may require up to 10 minutes
before the policy changes take effect.
-![Scan Execution Policy Editor Rule Mode](img/scan_execution_policy_rule_mode_v15_9.png)
+![Scan Execution Policy Editor Rule Mode](img/scan_execution_policy_rule_mode_v15_11.png)
## Scan execution policies schema
diff --git a/doc/user/project/merge_requests/squash_and_merge.md b/doc/user/project/merge_requests/squash_and_merge.md
index 9f87f1e2e0d..075716e90c8 100644
--- a/doc/user/project/merge_requests/squash_and_merge.md
+++ b/doc/user/project/merge_requests/squash_and_merge.md
@@ -33,7 +33,14 @@ squash commits and merge commits.
## Set default squash options for a merge request
Users with permission to create or edit a merge request can set the default squash options
-for a merge request. To do this:
+for a merge request.
+
+Prerequisites:
+
+- Your project must be [configured](#configure-squash-options-for-a-project) to allow or
+ encourage squashing.
+
+To do this:
1. Go to the merge request and select **Edit**.
1. Select or clear the **Squash commits when merge request is accepted** checkbox.
@@ -58,6 +65,10 @@ squash the commits as part of the merge process:
> - [Enabled on GitLab.com and self-managed by default](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/39382) in GitLab 13.3.
> - [Generally available](https://gitlab.com/gitlab-org/gitlab/-/issues/232536) in GitLab 13.8. Feature flag `squash_options` removed.
+Prerequisites:
+
+- You must have at least the Maintainer role for this project.
+
To configure the default squashing behavior for all merge requests in your project:
1. On the top bar, select **Main menu > Projects** and find your project.
diff --git a/doc/user/project/remote_development/connect_machine.md b/doc/user/project/remote_development/connect_machine.md
new file mode 100644
index 00000000000..9f4c7fc45c7
--- /dev/null
+++ b/doc/user/project/remote_development/connect_machine.md
@@ -0,0 +1,107 @@
+---
+stage: Create
+group: Editor
+info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
+---
+
+# Tutorial: Connect a remote machine to the Web IDE **(FREE)**
+
+This tutorial shows you how to:
+
+- Create a development environment outside of GitLab.
+- Connect a remote machine to the [Web IDE](../web_ide_beta/index.md).
+
+To connect a remote machine to the Web IDE, you must:
+
+1. [Generate Let's Encrypt certificates](#generate-lets-encrypt-certificates).
+1. [Connect a development environment to the Web IDE](#connect-a-development-environment-to-the-web-ide).
+
+## Prerequisites
+
+- A remote virtual machine with root access
+- A domain address resolving to that machine
+- Docker installation
+
+## Generate Let's Encrypt certificates
+
+To generate Let's Encrypt certificates:
+
+1. Create an `A` record to point a domain to your remote machine (for example, from `example.remote.gitlab.dev` to `1.2.3.4`).
+1. Install [Certbot](https://certbot.eff.org/) to enable HTTPS:
+
+ ```shell
+ sudo apt-get update
+ sudo apt-get install certbot
+ ```
+
+1. Generate the certificates:
+
+ ```shell
+ export EMAIL="YOUR_EMAIL@example.com"
+ export DOMAIN="example.remote.gitlab.dev"
+
+ certbot -d "${DOMAIN}" \
+ -m "${EMAIL}" \
+ --config-dir ~/.certbot/config \
+ --logs-dir ~/.certbot/logs \
+ --work-dir ~/.certbot/work \
+ --manual \
+ --preferred-challenges dns certonly
+ ```
+
+## Connect a development environment to the Web IDE
+
+To connect a development environment to the Web IDE:
+
+1. Create a development environment:
+
+ ```shell
+ export CERTS_DIR="/home/ubuntu/.certbot/config/live/${DOMAIN}"
+ export PROJECTS_DIR="/home/ubuntu"
+
+ docker run -d \
+ --name my-environment \
+ -p 3443:3443 \
+ -v "${CERTS_DIR}/fullchain.pem:/gitlab-rd-web-ide/certs/fullchain.pem" \
+ -v "${CERTS_DIR}/privkey.pem:/gitlab-rd-web-ide/certs/privkey.pem" \
+ -v "${PROJECTS_DIR}:/projects" \
+ registry.gitlab.com/gitlab-org/remote-development/gitlab-rd-web-ide-docker:0.2-alpha \
+ --log-level warn --domain "${DOMAIN}" --ignore-version-mismatch
+ ```
+
+ The new development environment starts automatically.
+
+1. Fetch a token:
+
+ ```shell
+ docker exec my-environment cat TOKEN
+ ```
+
+1. [Configure a remote connection](#configure-a-remote-connection).
+
+### Configure a remote connection
+
+To configure a remote connection from the Web IDE:
+
+1. Open the Web IDE.
+1. On the menu bar, select **View > Terminal** or press <kbd>Control</kbd>+<kbd>`</kbd>.
+1. In the terminal panel, select **Configure a remote connection**.
+1. Enter the URL for the remote host including the port (for example, `yourdomain.com:3443`).
+1. Enter the project path.
+1. Enter the token you've fetched.
+
+Alternatively, you can pass the parameters from a URL and connect directly to the Web IDE:
+
+1. Run this command:
+
+ ```shell
+ echo "https://gitlab-org.gitlab.io/gitlab-web-ide?remoteHost=${DOMAIN}:3443&hostPath=/projects"
+ ```
+
+1. Go to that URL and enter the token you've fetched.
+
+You've done it! Your development environment now runs as a remote host that's connected to the Web IDE.
+
+## Related topics
+
+- [Manage a development environment](index.md#manage-a-development-environment)
diff --git a/doc/user/project/remote_development/index.md b/doc/user/project/remote_development/index.md
index 29711b89d23..31c0a8eb51c 100644
--- a/doc/user/project/remote_development/index.md
+++ b/doc/user/project/remote_development/index.md
@@ -4,7 +4,7 @@ group: Editor
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments
---
-# Remote Development **(FREE)**
+# Remote development **(FREE)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/95169) in GitLab 15.4 [with a flag](../../../administration/feature_flags.md) named `vscode_web_ide`. Disabled by default.
@@ -22,70 +22,40 @@ As with all projects, the items mentioned on this page are subject to change or
The development, release, and timing of any products, features, or functionality remain at the
sole discretion of GitLab Inc.
-You can use the [Web IDE](../web_ide/index.md) to commit changes to a project directly from your web browser without installing any dependencies or cloning any repositories. The Web IDE, however, lacks a native runtime environment on which you would compile code, run tests, or generate real-time feedback in the IDE. For a more complete IDE experience, you can pair the [Web IDE Beta](../web_ide_beta/index.md) with a Remote Development environment that has been properly configured to run as a host.
+## Web IDE as a frontend
-## Connect a remote machine to the Web IDE
+You can use the [Web IDE](../web_ide_beta/index.md) to make, commit, and push changes to a project directly from your web browser.
+This way, you can update any project without having to install any dependencies or clone any repositories locally.
-Prerequisites:
+The Web IDE, however, lacks a native runtime environment where you could compile code, run tests, or generate real-time feedback.
+With remote development, you can use:
-- A remote virtual machine with root access
-- A domain address resolving to that machine
-- Docker installation
+- The Web IDE as a frontend
+- A separate machine as a backend runtime environment
-To connect a remote machine to the Web IDE, you must:
+For a complete IDE experience, connect the Web IDE to a [development environment](#workspace) that's configured to run as a remote host.
+For more information, see [connect a remote machine to the Web IDE](connect_machine.md).
-1. [Generate Let's Encrypt certificates](#generate-lets-encrypt-certificates).
-1. [Connect a development environment to the Web IDE](#connect-a-development-environment-to-the-web-ide).
+## Workspace
-### Generate Let's Encrypt certificates
+A workspace is a virtual sandbox environment for your code that includes:
-To generate Let's Encrypt certificates:
+- A runtime environment
+- Dependencies
+- Configuration files
-1. [Point a domain to your remote machine](#point-a-domain-to-your-remote-machine).
-1. [Install Certbot](#install-certbot).
-1. [Generate the certificates](#generate-the-certificates).
+You can create a workspace from scratch or from a template that you can also customize.
-#### Point a domain to your remote machine
+When you configure and connect a workspace to the [Web IDE](../web_ide_beta/index.md), you can:
-To point a domain to your remote machine, create an `A` record from `example.remote.gitlab.dev` to `1.2.3.4`.
+- Edit files directly from the Web IDE and commit and push changes to GitLab.
+- Use the Web IDE to run tests, debug code, and view real-time feedback.
-#### Install Certbot
+## Manage a development environment
-[Certbot](https://certbot.eff.org/) is a free and open-source software tool that automatically uses Let's Encrypt certificates on manually administered websites to enable HTTPS.
+### Create a development environment
-To install Certbot, run the following command:
-
-```shell
-sudo apt-get update
-sudo apt-get install certbot
-```
-
-#### Generate the certificates
-
-```shell
-export EMAIL="YOUR_EMAIL@example.com"
-export DOMAIN="example.remote.gitlab.dev"
-
-certbot -d "${DOMAIN}" \
- -m "${EMAIL}" \
- --config-dir ~/.certbot/config \
- --logs-dir ~/.certbot/logs \
- --work-dir ~/.certbot/work \
- --manual \
- --preferred-challenges dns certonly
-```
-
-### Connect a development environment to the Web IDE
-
-To connect a development environment to the Web IDE:
-
-1. [Create a development environment](#manage-a-development-environment).
-1. [Fetch a token](#fetch-a-token).
-1. [Configure a remote connection](#configure-a-remote-connection).
-
-#### Manage a development environment
-
-**Create a development environment**
+To create a development environment, run this command:
```shell
export CERTS_DIR="/home/ubuntu/.certbot/config/live/${DOMAIN}"
@@ -103,54 +73,31 @@ docker run -d \
The new development environment starts automatically.
-**Stop a development environment**
+### Stop a development environment
+
+To stop a running development environment, run this command:
```shell
docker container stop my-environment
```
-**Start a development environment**
+### Start a development environment
+
+To start a stopped development environment, run this command:
```shell
docker container start my-environment
```
-The token changes every time you restart the development environment.
+The token changes every time you start the development environment.
-**Remove a development environment**
+### Remove a development environment
To remove a development environment:
-1. Stop the development environment.
-1. Run the following command:
+1. [Stop the development environment](#stop-a-development-environment).
+1. Run this command:
```shell
docker container rm my-environment
```
-
-#### Fetch a token
-
-```shell
-docker exec my-environment cat TOKEN
-```
-
-#### Configure a remote connection
-
-To configure a remote connection from the Web IDE:
-
-1. Open the Web IDE.
-1. In the Menu Bar, select **View > Terminal** or press <kbd>Control</kbd>+<kbd>`</kbd>.
-1. In the terminal panel, select **Configure a remote connection**.
-1. Enter the URL for the remote host including the port (for example, `yourdomain.com:3443`).
-1. Enter the project path.
-1. Enter the [token you fetched](#fetch-a-token).
-
-Alternatively, you can pass the parameters from a URL and connect directly to the Web IDE:
-
-1. Run the following command:
-
- ```shell
- echo "https://gitlab-org.gitlab.io/gitlab-web-ide?remoteHost=${DOMAIN}:3443&hostPath=/projects"
- ```
-
-1. Go to that URL and enter the [token you fetched](#fetch-a-token).
diff --git a/doc/user/project/repository/file_finder.md b/doc/user/project/repository/file_finder.md
index 733ba34b30f..4971fdb55b7 100644
--- a/doc/user/project/repository/file_finder.md
+++ b/doc/user/project/repository/file_finder.md
@@ -6,36 +6,24 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# File finder **(FREE)**
-The file finder feature allows you to search for a file in a repository using the
-GitLab UI. To use it:
+With file finder, you can search for a file in a repository from the GitLab UI.
-1. Go to your project's **Repository > Files**.
-1. In the upper-right corner, select **Find File**.
+To search for a file:
-If you prefer to keep your fingers on the keyboard, use the
-[shortcut button](../../shortcuts.md), which you can invoke from anywhere
-in a project.
+1. On the top bar, select **Main menu > Projects** and find your project.
+1. On the left sidebar, select **Repository > Files**.
+1. In the upper right, select **Find file**.
+1. In the search box, start typing the file name.
+1. From the dropdown list, select the file.
-Press `t` to launch the File search function when in **Issues**,
-**Merge requests**, **Milestones**, even the project's settings.
+To narrow down your results, include `/` in your search.
-Start typing what you are searching for and watch the magic happen. With the
-up/down arrows, you go up and down the results, with `Esc` you close the search
-and go back to **Files**
-
-## How it works
-
-The File finder feature is powered by the [Fuzzy filter](https://github.com/jeancroy/fuzz-aldrin-plus) library.
-
-It implements a fuzzy search with the highlight and tries to provide intuitive
-results by recognizing patterns that people use while searching.
-
-For example, consider the [GitLab FOSS repository](https://gitlab.com/gitlab-org/gitlab-foss/tree/master) and that we want to open
-the `app/controllers/admin/deploy_keys_controller.rb` file.
+![Find file button](img/file_finder_find_file_v12_10.png)
-Using a fuzzy search, we start by typing letters that get us closer to the file.
+To go to the file finder, you can also press <kbd>t</kbd> from anywhere in a project.
+To go back to **Files**, press <kbd>Esc</kbd>.
-NOTE:
-To narrow down your search, include `/` in your search terms.
+## How it works
-![Find file button](img/file_finder_find_file_v12_10.png)
+File finder is powered by the [`fuzzaldrin-plus`](https://github.com/jeancroy/fuzz-aldrin-plus) library.
+The library implements fuzzy search to narrow down and highlight results while typing.
diff --git a/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb b/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb
index 7f6d67e01c7..97091ff975b 100644
--- a/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb
+++ b/lib/gitlab/usage_data_counters/ci_template_unique_counter.rb
@@ -2,7 +2,7 @@
module Gitlab::UsageDataCounters
class CiTemplateUniqueCounter
- REDIS_SLOT = 'ci_templates'
+ PREFIX = 'ci_templates'
KNOWN_EVENTS_FILE_PATH = File.expand_path('known_events/ci_templates.yml', __dir__)
class << self
@@ -28,7 +28,7 @@ module Gitlab::UsageDataCounters
def ci_template_event_name(template_name, config_source)
prefix = 'implicit_' if config_source.to_s == 'auto_devops_source'
- "p_#{REDIS_SLOT}_#{prefix}#{template_to_event_name(template_name)}"
+ "p_#{PREFIX}_#{prefix}#{template_to_event_name(template_name)}"
end
def expand_template_name(template_name)
diff --git a/lib/gitlab/usage_data_counters/known_events/analytics.yml b/lib/gitlab/usage_data_counters/known_events/analytics.yml
index 1c390f2d7fd..0b30308b552 100644
--- a/lib/gitlab/usage_data_counters/known_events/analytics.yml
+++ b/lib/gitlab/usage_data_counters/known_events/analytics.yml
@@ -1,39 +1,26 @@
- name: users_viewing_analytics_group_devops_adoption
- redis_slot: analytics
aggregation: weekly
- name: i_analytics_dev_ops_adoption
- redis_slot: analytics
aggregation: weekly
- name: i_analytics_dev_ops_score
- redis_slot: analytics
aggregation: weekly
- name: i_analytics_instance_statistics
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_pipelines
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_valuestream
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_repo
- redis_slot: analytics
aggregation: weekly
- name: i_analytics_cohorts
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_ci_cd_pipelines
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_ci_cd_deployment_frequency
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_ci_cd_lead_time
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_ci_cd_time_to_restore_service
- redis_slot: analytics
aggregation: weekly
- name: p_analytics_ci_cd_change_failure_rate
- redis_slot: analytics
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/ci_templates.yml b/lib/gitlab/usage_data_counters/known_events/ci_templates.yml
index e717679e3dc..82c023e6e38 100644
--- a/lib/gitlab/usage_data_counters/known_events/ci_templates.yml
+++ b/lib/gitlab/usage_data_counters/known_events/ci_templates.yml
@@ -4,455 +4,304 @@
# Do not edit it manually!
---
- name: p_ci_templates_terraform_base_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_terraform_base
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_dotnet
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_nodejs
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_openshift
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_auto_devops
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_bash
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_rust
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_elixir
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_clojure
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_crystal
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_getting_started
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_code_quality
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_verify_load_performance_testing
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_verify_accessibility
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_verify_failfast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_verify_browser_performance
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_verify_browser_performance_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_grails
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_sast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast_runner_validation
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast_on_demand_scan
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_secret_detection
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_license_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_coverage_fuzzing_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast_on_demand_api_scan
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_coverage_fuzzing
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_api_fuzzing_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_secure_binaries
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast_api
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_container_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_sast_iac
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dependency_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast_api_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_container_scanning_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_api_fuzzing
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_dast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_api_discovery
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_fortify_fod_sast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_security_sast_iac_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_qualys_iac_security
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_ios_fastlane
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_composer
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_c
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_python
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_android_fastlane
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_android_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_django
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_maven
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_liquibase
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_flutter
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_workflows_branch_pipelines
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_workflows_mergerequest_pipelines
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_laravel
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_kaniko
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_php
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_packer
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_themekit
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_terraform
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_katalon
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_mono
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_go
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_scala
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_latex
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_android
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_indeni_cloudrail
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_matlab
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_deploy_ecs
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_aws_cf_provision_and_deploy_ec2
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_aws_deploy_ecs
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_gradle
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_chef
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_dast_default_branch_deploy
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_load_performance_testing
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_helm_2to3
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_sast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_secret_detection
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_license_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_code_intelligence
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_code_quality
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_deploy_ecs
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_deploy_ec2
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_license_scanning_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_deploy
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_build
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_browser_performance_testing
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_container_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_container_scanning_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_dependency_scanning_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_test
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_sast_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_sast_iac
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_secret_detection_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_dependency_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_deploy_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_browser_performance_testing_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_cf_provision
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_build_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_jobs_sast_iac_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_terraform_latest
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_swift
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_jekyll
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_harp
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_octopress
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_brunch
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_doxygen
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_hyde
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_lektor
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_jbake
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_hexo
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_middleman
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_hugo
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_pelican
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_nanoc
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_swaggerui
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_jigsaw
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_metalsmith
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_gatsby
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_pages_html
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_dart
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_docker
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_julia
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_npm
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_dotnet_core
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_5_minute_production_app
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_ruby
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_auto_devops
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_browser_performance_testing
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_build
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_code_intelligence
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_code_quality
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_container_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_dast_default_branch_deploy
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_dependency_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_deploy
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_deploy_ec2
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_deploy_ecs
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_helm_2to3
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_license_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_sast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_secret_detection
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_jobs_test
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_security_container_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_security_dast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_security_dependency_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_security_license_scanning
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_security_sast
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_implicit_security_secret_detection
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_terraform_module_base
- redis_slot: ci_templates
aggregation: weekly
- name: p_ci_templates_terraform_module
- redis_slot: ci_templates
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/ci_users.yml b/lib/gitlab/usage_data_counters/known_events/ci_users.yml
index 6db10366b83..49757c6e672 100644
--- a/lib/gitlab/usage_data_counters/known_events/ci_users.yml
+++ b/lib/gitlab/usage_data_counters/known_events/ci_users.yml
@@ -1,6 +1,4 @@
- name: ci_users_executing_deployment_job
- redis_slot: ci_users
aggregation: weekly
- name: ci_users_executing_verify_environment_job
- redis_slot: ci_users
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/code_review_events.yml b/lib/gitlab/usage_data_counters/known_events/code_review_events.yml
index f64da801c39..db0c0653f63 100644
--- a/lib/gitlab/usage_data_counters/known_events/code_review_events.yml
+++ b/lib/gitlab/usage_data_counters/known_events/code_review_events.yml
@@ -1,345 +1,233 @@
---
- name: i_code_review_create_note_in_ipynb_diff
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_create_note_in_ipynb_diff_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_create_note_in_ipynb_diff_commit
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_note_in_ipynb_diff
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_note_in_ipynb_diff_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_note_in_ipynb_diff_commit
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_mr_diffs
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_single_file_diffs
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_mr_single_file_diffs
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_toggled_task_item_status
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_create_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_close_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_reopen_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_approve_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_unapprove_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_resolve_thread
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_unresolve_thread
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_edit_mr_title
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_edit_mr_desc
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_merge_mr
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_mr_comment
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_edit_mr_comment
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_remove_mr_comment
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_review_note
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_publish_review
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_multiline_mr_comment
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_edit_multiline_mr_comment
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_remove_multiline_mr_comment
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_add_suggestion
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_apply_suggestion
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_assigned
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_marked_as_draft
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_unmarked_as_draft
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_review_requested
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_approval_rule_added
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_approval_rule_deleted
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_approval_rule_edited
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_vs_code_api_request
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_jetbrains_api_request
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_gitlab_cli_api_request
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_create_mr_from_issue
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_mr_discussion_locked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_mr_discussion_unlocked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_time_estimate_changed
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_time_spent_changed
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_assignees_changed
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_reviewers_changed
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_milestone_changed
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_labels_changed
- redis_slot: code_review
aggregation: weekly
# Diff settings events
- name: i_code_review_click_diff_view_setting
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_click_single_file_mode_setting
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_click_file_browser_setting
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_click_whitespace_setting
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_diff_view_inline
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_diff_view_parallel
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_file_browser_tree_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_file_browser_list_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_diff_show_whitespace
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_diff_hide_whitespace
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_diff_single_file
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_diff_multiple_files
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_load_conflict_ui
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_resolve_conflict
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_searches_diff
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_total_suggestions_applied
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_total_suggestions_added
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_user_resolve_thread_in_issue
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_widget_nothing_merge_click_new_file
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_post_merge_delete_branch
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_post_merge_click_revert
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_post_merge_click_cherry_pick
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_post_merge_submit_revert_modal
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_post_merge_submit_cherry_pick_modal
- redis_slot: code_review
aggregation: weekly
# MR Widget Extensions
## Test Summary
- name: i_code_review_merge_request_widget_test_summary_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_test_summary_full_report_clicked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_test_summary_expand
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_test_summary_expand_success
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_test_summary_expand_warning
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_test_summary_expand_failed
- redis_slot: code_review
aggregation: weekly
## Accessibility
- name: i_code_review_merge_request_widget_accessibility_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_accessibility_full_report_clicked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_accessibility_expand
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_accessibility_expand_success
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_accessibility_expand_warning
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_accessibility_expand_failed
- redis_slot: code_review
aggregation: weekly
## Code Quality
- name: i_code_review_merge_request_widget_code_quality_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_code_quality_full_report_clicked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_code_quality_expand
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_code_quality_expand_success
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_code_quality_expand_warning
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_code_quality_expand_failed
- redis_slot: code_review
aggregation: weekly
## Terraform
- name: i_code_review_merge_request_widget_terraform_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_terraform_full_report_clicked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_terraform_expand
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_terraform_expand_success
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_terraform_expand_warning
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_terraform_expand_failed
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_submit_review_approve
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_submit_review_comment
- redis_slot: code_review
aggregation: weekly
## License Compliance
- name: i_code_review_merge_request_widget_license_compliance_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_license_compliance_full_report_clicked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_license_compliance_expand
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_license_compliance_expand_success
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_license_compliance_expand_warning
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_license_compliance_expand_failed
- redis_slot: code_review
aggregation: weekly
## Security Reports
- name: i_code_review_merge_request_widget_security_reports_view
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_security_reports_full_report_clicked
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_security_reports_expand
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_security_reports_expand_success
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_security_reports_expand_warning
- redis_slot: code_review
aggregation: weekly
- name: i_code_review_merge_request_widget_security_reports_expand_failed
- redis_slot: code_review
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/common.yml b/lib/gitlab/usage_data_counters/known_events/common.yml
index 3314997f873..d3520961665 100644
--- a/lib/gitlab/usage_data_counters/known_events/common.yml
+++ b/lib/gitlab/usage_data_counters/known_events/common.yml
@@ -1,19 +1,14 @@
---
# Compliance category
- name: g_edit_by_web_ide
- redis_slot: edit
aggregation: daily
- name: g_edit_by_sfe
- redis_slot: edit
aggregation: daily
- name: g_edit_by_snippet_ide
- redis_slot: edit
aggregation: daily
- name: g_edit_by_live_preview
- redis_slot: edit
aggregation: daily
- name: i_search_total
- redis_slot: search
aggregation: weekly
- name: wiki_action
aggregation: daily
@@ -26,209 +21,145 @@
- name: merge_request_action
aggregation: daily
- name: i_source_code_code_intelligence
- redis_slot: source_code
aggregation: daily
# Incident management
- name: incident_management_alert_status_changed
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_alert_assigned
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_alert_todo
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_created
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_reopened
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_closed
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_assigned
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_todo
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_comment
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_zoom_meeting
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_relate
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_unrelate
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_incident_change_confidential
- redis_slot: incident_management
aggregation: weekly
# Incident management timeline events
- name: incident_management_timeline_event_created
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_timeline_event_edited
- redis_slot: incident_management
aggregation: weekly
- name: incident_management_timeline_event_deleted
- redis_slot: incident_management
aggregation: weekly
# Incident management alerts
- name: incident_management_alert_create_incident
- redis_slot: incident_management
aggregation: weekly
# Testing category
- name: i_testing_test_case_parsed
- redis_slot: testing
aggregation: weekly
- name: i_testing_test_report_uploaded
- redis_slot: testing
aggregation: weekly
- name: i_testing_coverage_report_uploaded
- redis_slot: testing
aggregation: weekly
# Project Management group
- name: g_project_management_issue_title_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_description_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_assignee_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_made_confidential
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_made_visible
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_created
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_closed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_reopened
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_label_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_milestone_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_cross_referenced
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_moved
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_related
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_unrelated
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_marked_as_duplicate
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_locked
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_unlocked
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_designs_added
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_designs_modified
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_designs_removed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_due_date_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_design_comments_removed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_time_estimate_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_time_spent_changed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_comment_added
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_comment_edited
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_comment_removed
- redis_slot: project_management
aggregation: daily
- name: g_project_management_issue_cloned
- redis_slot: project_management
aggregation: daily
# Runner group
- name: g_runner_fleet_read_jobs_statistics
- redis_slot: runner
aggregation: weekly
# Secrets Management
- name: i_snippets_show
- redis_slot: snippets
aggregation: weekly
# Terraform
- name: p_terraform_state_api_unique_users
- redis_slot: terraform
aggregation: weekly
# Pipeline Authoring group
- name: o_pipeline_authoring_unique_users_committing_ciconfigfile
- redis_slot: pipeline_authoring
aggregation: weekly
- name: o_pipeline_authoring_unique_users_pushing_mr_ciconfigfile
- redis_slot: pipeline_authoring
aggregation: weekly
- name: i_ci_secrets_management_id_tokens_build_created
- redis_slot: ci_secrets_management
aggregation: weekly
# Merge request widgets
- name: users_expanding_secure_security_report
- redis_slot: secure
aggregation: weekly
- name: users_expanding_testing_code_quality_report
- redis_slot: testing
aggregation: weekly
- name: users_expanding_testing_accessibility_report
- redis_slot: testing
aggregation: weekly
- name: users_expanding_testing_license_compliance_report
- redis_slot: testing
aggregation: weekly
- name: users_visiting_testing_license_compliance_full_report
- redis_slot: testing
aggregation: weekly
- name: users_visiting_testing_manage_license_compliance
- redis_slot: testing
aggregation: weekly
- name: users_clicking_license_testing_visiting_external_website
- redis_slot: testing
aggregation: weekly
# Geo group
- name: g_geo_proxied_requests
- redis_slot: geo
aggregation: daily
# Manage
- name: unique_active_user
aggregation: weekly
# Environments page
- name: users_visiting_environments_pages
- redis_slot: users
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/container_registry_events.yml b/lib/gitlab/usage_data_counters/known_events/container_registry_events.yml
index ac40079a6dc..aa0f9965fa7 100644
--- a/lib/gitlab/usage_data_counters/known_events/container_registry_events.yml
+++ b/lib/gitlab/usage_data_counters/known_events/container_registry_events.yml
@@ -1,16 +1,11 @@
---
- name: i_container_registry_push_tag_user
aggregation: weekly
- redis_slot: container_registry
- name: i_container_registry_delete_tag_user
aggregation: weekly
- redis_slot: container_registry
- name: i_container_registry_push_repository_user
aggregation: weekly
- redis_slot: container_registry
- name: i_container_registry_delete_repository_user
aggregation: weekly
- redis_slot: container_registry
- name: i_container_registry_create_repository_user
aggregation: weekly
- redis_slot: container_registry
diff --git a/lib/gitlab/usage_data_counters/known_events/ecosystem.yml b/lib/gitlab/usage_data_counters/known_events/ecosystem.yml
index 03bbba663c5..6e4a893d19a 100644
--- a/lib/gitlab/usage_data_counters/known_events/ecosystem.yml
+++ b/lib/gitlab/usage_data_counters/known_events/ecosystem.yml
@@ -1,35 +1,24 @@
---
# Ecosystem category
- name: i_ecosystem_jira_service_close_issue
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_jira_service_cross_reference
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_issue_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_push_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_deployment_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_wiki_page_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_merge_request_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_note_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_tag_push_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_confidential_note_notification
- redis_slot: ecosystem
aggregation: weekly
- name: i_ecosystem_slack_service_confidential_issue_notification
- redis_slot: ecosystem
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/error_tracking.yml b/lib/gitlab/usage_data_counters/known_events/error_tracking.yml
index efed16c11f8..ebfd1b274f9 100644
--- a/lib/gitlab/usage_data_counters/known_events/error_tracking.yml
+++ b/lib/gitlab/usage_data_counters/known_events/error_tracking.yml
@@ -1,7 +1,5 @@
---
- name: error_tracking_view_details
- redis_slot: error_tracking
aggregation: weekly
- name: error_tracking_view_list
- redis_slot: error_tracking
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/importer_events.yml b/lib/gitlab/usage_data_counters/known_events/importer_events.yml
index a6c90a6c762..abbd83a012b 100644
--- a/lib/gitlab/usage_data_counters/known_events/importer_events.yml
+++ b/lib/gitlab/usage_data_counters/known_events/importer_events.yml
@@ -1,18 +1,13 @@
---
# Importer events
- name: github_import_project_start
- redis_slot: import
aggregation: weekly
- name: github_import_project_success
- redis_slot: import
aggregation: weekly
- name: github_import_project_failure
- redis_slot: import
aggregation: weekly
- name: github_import_project_cancelled
- redis_slot: import
aggregation: weekly
- name: github_import_project_partially_completed
- redis_slot: import
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/kubernetes_agent.yml b/lib/gitlab/usage_data_counters/known_events/kubernetes_agent.yml
index 9703c022ef5..b3d1c51c0e7 100644
--- a/lib/gitlab/usage_data_counters/known_events/kubernetes_agent.yml
+++ b/lib/gitlab/usage_data_counters/known_events/kubernetes_agent.yml
@@ -1,3 +1,2 @@
- name: agent_users_using_ci_tunnel
- redis_slot: agent
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/package_events.yml b/lib/gitlab/usage_data_counters/known_events/package_events.yml
index d9797635240..47cc7f98838 100644
--- a/lib/gitlab/usage_data_counters/known_events/package_events.yml
+++ b/lib/gitlab/usage_data_counters/known_events/package_events.yml
@@ -1,67 +1,45 @@
---
- name: i_package_composer_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_composer_user
aggregation: weekly
- redis_slot: package
- name: i_package_conan_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_conan_user
aggregation: weekly
- redis_slot: package
- name: i_package_generic_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_generic_user
aggregation: weekly
- redis_slot: package
- name: i_package_helm_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_helm_user
aggregation: weekly
- redis_slot: package
- name: i_package_maven_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_maven_user
aggregation: weekly
- redis_slot: package
- name: i_package_npm_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_npm_user
aggregation: weekly
- redis_slot: package
- name: i_package_nuget_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_nuget_user
aggregation: weekly
- redis_slot: package
- name: i_package_pypi_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_pypi_user
aggregation: weekly
- redis_slot: package
- name: i_package_rubygems_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_rubygems_user
aggregation: weekly
- redis_slot: package
- name: i_package_terraform_module_deploy_token
aggregation: weekly
- redis_slot: package
- name: i_package_terraform_module_user
aggregation: weekly
- redis_slot: package
- name: i_package_rpm_user
aggregation: weekly
- redis_slot: package
- name: i_package_rpm_deploy_token
aggregation: weekly
- redis_slot: package
diff --git a/lib/gitlab/usage_data_counters/known_events/quickactions.yml b/lib/gitlab/usage_data_counters/known_events/quickactions.yml
index 306ed79ea23..7006173cc59 100644
--- a/lib/gitlab/usage_data_counters/known_events/quickactions.yml
+++ b/lib/gitlab/usage_data_counters/known_events/quickactions.yml
@@ -1,190 +1,127 @@
---
- name: i_quickactions_assign_multiple
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_approve
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unapprove
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_assign_single
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_assign_self
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_assign_reviewer
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_award
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_board_move
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_clone
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_close
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_confidential
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_copy_metadata_merge_request
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_copy_metadata_issue
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_create_merge_request
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_done
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_draft
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_due
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_duplicate
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_estimate
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_label
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_lock
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_merge
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_milestone
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_move
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_promote_to_incident
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_timeline
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_ready
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_reassign
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_reassign_reviewer
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_rebase
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_relabel
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_relate
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_remove_due_date
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_remove_estimate
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_remove_milestone
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_remove_time_spent
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_remove_zoom
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_reopen
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_severity
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_shrug
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_spend_subtract
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_spend_add
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_submit_review
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_subscribe
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_tableflip
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_tag
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_target_branch
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_title
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_todo
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unassign_specific
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unassign_all
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unassign_reviewer
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unlabel_specific
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unlabel_all
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unlock
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_unsubscribe
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_wip
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_zoom
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_link
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_invite_email_single
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_invite_email_multiple
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_add_contacts
- redis_slot: quickactions
aggregation: weekly
- name: i_quickactions_remove_contacts
- redis_slot: quickactions
aggregation: weekly
diff --git a/lib/gitlab/usage_data_counters/known_events/work_items.yml b/lib/gitlab/usage_data_counters/known_events/work_items.yml
index 1f0cc0c8a2e..a6e5b9e1af5 100644
--- a/lib/gitlab/usage_data_counters/known_events/work_items.yml
+++ b/lib/gitlab/usage_data_counters/known_events/work_items.yml
@@ -1,28 +1,21 @@
---
- name: users_updating_work_item_title
- redis_slot: users
aggregation: weekly
- name: users_creating_work_items
- redis_slot: users
aggregation: weekly
- name: users_updating_work_item_dates
- redis_slot: users
aggregation: weekly
- name: users_updating_work_item_labels
- redis_slot: users
aggregation: weekly
- name: users_updating_work_item_milestone
- redis_slot: users
aggregation: weekly
- name: users_updating_work_item_iteration
# The event tracks an EE feature.
# It's added here so it can be aggregated into the CE/EE 'OR' aggregate metrics.
# It will report 0 for CE instances and should not be used with 'AND' aggregators.
- redis_slot: users
aggregation: weekly
- name: users_updating_weight_estimate
# The event tracks an EE feature.
# It's added here so it can be aggregated into the CE/EE 'OR' aggregate metrics.
# It will report 0 for CE instances and should not be used with 'AND' aggregators.
- redis_slot: users
aggregation: weekly
diff --git a/locale/gitlab.pot b/locale/gitlab.pot
index 0503067e8cf..2ee997829bb 100644
--- a/locale/gitlab.pot
+++ b/locale/gitlab.pot
@@ -574,6 +574,11 @@ msgstr ""
msgid "%{count} LOC/commit"
msgstr ""
+msgid "%{count} Participant"
+msgid_plural "%{count} Participants"
+msgstr[0] ""
+msgstr[1] ""
+
msgid "%{count} approval required from %{name}"
msgid_plural "%{count} approvals required from %{name}"
msgstr[0] ""
@@ -630,11 +635,6 @@ msgstr ""
msgid "%{count} of %{total}"
msgstr ""
-msgid "%{count} participant"
-msgid_plural "%{count} participants"
-msgstr[0] ""
-msgstr[1] ""
-
msgid "%{count} project"
msgid_plural "%{count} projects"
msgstr[0] ""
@@ -21330,6 +21330,9 @@ msgstr ""
msgid "Hide file browser"
msgstr ""
+msgid "Hide file contents"
+msgstr ""
+
msgid "Hide group projects"
msgstr ""
@@ -48697,6 +48700,9 @@ msgstr ""
msgid "Vulnerability|Select a severity"
msgstr ""
+msgid "Vulnerability|Sent request:"
+msgstr ""
+
msgid "Vulnerability|Set the status of the vulnerability finding based on the information available to you."
msgstr ""
diff --git a/spec/frontend/diffs/components/diff_file_header_spec.js b/spec/frontend/diffs/components/diff_file_header_spec.js
index 4515a8e8926..900aa8d1469 100644
--- a/spec/frontend/diffs/components/diff_file_header_spec.js
+++ b/spec/frontend/diffs/components/diff_file_header_spec.js
@@ -85,7 +85,7 @@ describe('DiffFileHeader component', () => {
const findExternalLink = () => wrapper.findComponent({ ref: 'externalLink' });
const findReplacedFileButton = () => wrapper.findComponent({ ref: 'replacedFileButton' });
const findViewFileButton = () => wrapper.findComponent({ ref: 'viewButton' });
- const findCollapseIcon = () => wrapper.findComponent({ ref: 'collapseIcon' });
+ const findCollapseButton = () => wrapper.findComponent({ ref: 'collapseButton' });
const findEditButton = () => wrapper.findComponent({ ref: 'editButton' });
const findReviewFileCheckbox = () => wrapper.find("[data-testid='fileReviewCheckbox']");
@@ -111,7 +111,7 @@ describe('DiffFileHeader component', () => {
${'hidden'} | ${false}
`('collapse toggle is $visibility if collapsible is $collapsible', ({ collapsible }) => {
createComponent({ props: { collapsible } });
- expect(findCollapseIcon().exists()).toBe(collapsible);
+ expect(findCollapseButton().exists()).toBe(collapsible);
});
it.each`
@@ -120,7 +120,7 @@ describe('DiffFileHeader component', () => {
${false} | ${'chevron-right'}
`('collapse icon is $icon if expanded is $expanded', ({ icon, expanded }) => {
createComponent({ props: { expanded, collapsible: true } });
- expect(findCollapseIcon().props('name')).toBe(icon);
+ expect(findCollapseButton().props('icon')).toBe(icon);
});
it('when header is clicked emits toggleFile', async () => {
@@ -133,7 +133,7 @@ describe('DiffFileHeader component', () => {
it('when collapseIcon is clicked emits toggleFile', async () => {
createComponent({ props: { collapsible: true } });
- findCollapseIcon().vm.$emit('click', new Event('click'));
+ findCollapseButton().vm.$emit('click', new Event('click'));
await nextTick();
expect(wrapper.emitted().toggleFile).toBeDefined();
});
diff --git a/spec/services/ci/retry_job_service_spec.rb b/spec/services/ci/retry_job_service_spec.rb
index 10acf032b1a..398aa674555 100644
--- a/spec/services/ci/retry_job_service_spec.rb
+++ b/spec/services/ci/retry_job_service_spec.rb
@@ -354,7 +354,45 @@ RSpec.describe Ci::RetryJobService, feature_category: :continuous_integration do
include_context 'retryable build'
- it_behaves_like 'retries the job'
+ context 'when retry_job_start_pipeline_after_commit is enabled' do
+ it_behaves_like 'retries the job'
+ end
+
+ context 'when retry_job_start_pipeline_after_commit is disabled' do
+ before do
+ stub_feature_flags(retry_job_start_pipeline_after_commit: false)
+ end
+
+ it_behaves_like 'retries the job'
+ end
+
+ context 'automatic retryable build' do
+ let!(:auto_retryable_build) do
+ create(:ci_build, pipeline: pipeline, ci_stage: stage, user: user, options: { retry: 1 })
+ end
+
+ def drop_build!
+ auto_retryable_build.drop_with_exit_code!('test failure', 1)
+ end
+
+ context 'when retry_job_start_pipeline_after_commit is enabled' do
+ it 'creates a new build and enqueues BuildQueueWorker' do
+ expect { drop_build! }.to change { Ci::Build.count }.by(1)
+ .and change { BuildQueueWorker.jobs.count }.by(1)
+ end
+ end
+
+ context 'when retry_job_start_pipeline_after_commit is disabled' do
+ before do
+ stub_feature_flags(retry_job_start_pipeline_after_commit: false)
+ end
+
+ it 'creates a new build but does not enqueue BuildQueueWorker' do
+ expect { drop_build! }.to change { Ci::Build.count }.by(1)
+ .and change { BuildQueueWorker.jobs.count }.by(0)
+ end
+ end
+ end
context 'when there are subsequent jobs that are skipped' do
let!(:subsequent_build) do