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>2022-05-11 09:08:03 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2022-05-11 09:08:03 +0300
commit18b54e46b77786995acdb1026c2ec35956e33780 (patch)
tree0ed0d6bf11a0337febb5a30707ad25f426ab760b /app/assets/javascripts/analytics
parentdefc424997d8329613ef3951ab30adf6b3b94f01 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/analytics')
-rw-r--r--app/assets/javascripts/analytics/shared/components/value_stream_metrics.vue5
-rw-r--r--app/assets/javascripts/analytics/shared/constants.js27
2 files changed, 29 insertions, 3 deletions
diff --git a/app/assets/javascripts/analytics/shared/components/value_stream_metrics.vue b/app/assets/javascripts/analytics/shared/components/value_stream_metrics.vue
index acc82761e88..6ac1bce4032 100644
--- a/app/assets/javascripts/analytics/shared/components/value_stream_metrics.vue
+++ b/app/assets/javascripts/analytics/shared/components/value_stream_metrics.vue
@@ -1,6 +1,6 @@
<script>
import { GlDeprecatedSkeletonLoading as GlSkeletonLoading } from '@gitlab/ui';
-import { flatten, isEqual } from 'lodash';
+import { flatten, isEqual, keyBy } from 'lodash';
import createFlash from '~/flash';
import { sprintf, s__ } from '~/locale';
import { METRICS_POPOVER_CONTENT } from '../constants';
@@ -30,7 +30,8 @@ const fetchMetricsData = (reqs = [], path, params) => {
const extractMetricsGroupData = (keyList = [], data = []) => {
if (!keyList.length || !data.length) return [];
- return data.filter(({ identifier = '' }) => identifier.length && keyList.includes(identifier));
+ const kv = keyBy(data, 'identifier');
+ return keyList.map((id) => kv[id] || null).filter((obj) => Boolean(obj));
};
const groupRawMetrics = (groups = [], rawData = []) => {
diff --git a/app/assets/javascripts/analytics/shared/constants.js b/app/assets/javascripts/analytics/shared/constants.js
index 05e68bf5d9a..38d05552783 100644
--- a/app/assets/javascripts/analytics/shared/constants.js
+++ b/app/assets/javascripts/analytics/shared/constants.js
@@ -55,13 +55,38 @@ export const METRICS_POPOVER_CONTENT = {
commits: {
description: s__('ValueStreamAnalytics|Number of commits pushed to the default branch'),
},
+ 'time-to-restore-service': {
+ description: s__(
+ 'ValueStreamAnalytics|Median time an incident was open on a production environment in the given time period.',
+ ),
+ },
+ time_to_restore_service: {
+ description: s__(
+ 'ValueStreamAnalytics|Median time an incident was open on a production environment in the given time period.',
+ ),
+ },
+ 'change-failure-rate': {
+ description: s__(
+ 'ValueStreamAnalytics|Percentage of deployments that cause an incident in production.',
+ ),
+ },
+ change_failure_rate: {
+ description: s__(
+ 'ValueStreamAnalytics|Percentage of deployments that cause an incident in production.',
+ ),
+ },
};
const KEY_METRICS_TITLE = s__('ValueStreamAnalytics|Key metrics');
const KEY_METRICS_KEYS = ['lead_time', 'cycle_time', 'issues', 'commits', 'deploys'];
const DORA_METRICS_TITLE = s__('ValueStreamAnalytics|DORA metrics');
-const DORA_METRICS_KEYS = ['deployment_frequency', 'lead_time_for_changes'];
+const DORA_METRICS_KEYS = [
+ 'deployment_frequency',
+ 'lead_time_for_changes',
+ 'time_to_restore_service',
+ 'change_failure_rate',
+];
export const VSA_METRICS_GROUPS = [
{ key: 'key_metrics', title: KEY_METRICS_TITLE, keys: KEY_METRICS_KEYS },