Draft: Speed up generation of frontend fixtures for analytics
What does this MR do?
This MR attempts to speed up frontend fixtures generation (run via rake frontend:fixture
) for analytics by sevaral minutes.
It uses let_it_be
and before_all
where feasible but also introduces a "run once" concept to run expensive steps in before
(which cannot be run with before_all
) only once per context.
Draft
Contributes to https://gitlab.com/gitlab-org/plan/-/issues/145.
Here's the output from test-prof
when run with FPROF=1
. Note:
-
Total
amount of factories created went down from 654 to 105🚀 -
Total events
went down from 53261 to 5714 -
Time
went down from7 minutes 26 seconds
to49.84 seconds
⚡ - Queries saved: 47547
Before
Total time: 01:48.098 of 07:19.649 (24.59%)
Total events: 53261
Top 5 slowest suites (by time):
Analytics (Ja...ript fixtures) (./ee/spec/frontend/fixtures/analytics.rb:4) – 01:48.098 (53261 / 18) of 07:19.649 (24.59%)
Finished in 7 minutes 26 seconds (files took 2.19 seconds to load)
18 examples, 0 failures
[TEST PROF INFO] Factories usage
Total: 654
Total top-level: 529
Total time: 49.7842s
Total uniq factories: 16
total top-level total time time per call top-level time name
154 154 15.6746s 0.1018s 15.6746s ci_build
68 68 4.5836s 0.0674s 4.5836s issue
50 18 4.5746s 0.0915s 1.7780s user
49 49 9.7396s 0.1988s 9.7396s merge_request
49 49 2.1604s 0.0441s 2.1604s ci_empty_pipeline
48 18 2.6381s 0.0550s 1.1548s group
48 0 0.3491s 0.0073s 0.0000s namespace_settings
45 45 1.1753s 0.0261s 1.1753s ci_pipeline
32 32 8.5108s 0.2660s 8.5108s project
30 30 2.5374s 0.0846s 2.5374s cycle_analytics_group_stage
18 18 0.3137s 0.0174s 0.3137s group_label
17 17 0.9429s 0.0555s 0.9429s milestone
15 15 0.1620s 0.0108s 0.1620s cycle_analytics_group_value_stream
15 0 1.3198s 0.0880s 0.0000s namespace
15 15 1.0397s 0.0693s 1.0397s labeled_issue
1 1 0.0113s 0.0113s 0.0113s license
After
Total time: 00:09.803 of 00:43.930 (22.32%)
Total events: 5714
Top 5 slowest suites (by time):
Analytics (Ja...ript fixtures) (./ee/spec/frontend/fixtures/analytics.rb:4) – 00:09.803 (5714 / 18) of 00:43.930 (22.32%)
Finished in 49.84 seconds (files took 2.01 seconds to load)
18 examples, 0 failures
[TEST PROF INFO] Factories usage
Total: 105
Total top-level: 69
Total time: 8.6895s
Total uniq factories: 16
total top-level total time time per call top-level time name
17 1 1.4826s 0.0872s 0.0516s user
16 16 4.2686s 0.2668s 4.2686s project
15 0 0.9995s 0.0666s 0.0000s namespace
15 15 1.0602s 0.0707s 1.0602s labeled_issue
13 13 0.8314s 0.0640s 0.8314s ci_build
5 5 0.2819s 0.0564s 0.2819s issue
4 4 0.0675s 0.0169s 0.0675s group_label
3 1 0.1974s 0.0658s 0.1098s group
3 0 0.0289s 0.0096s 0.0000s namespace_settings
3 3 1.5953s 0.5318s 1.5953s merge_request
3 3 0.0920s 0.0307s 0.0920s ci_empty_pipeline
3 3 0.0866s 0.0289s 0.0866s ci_pipeline
2 2 0.1651s 0.0825s 0.1651s cycle_analytics_group_stage
1 1 0.0108s 0.0108s 0.0108s license
1 1 0.0150s 0.0150s 0.0150s cycle_analytics_group_value_stream
1 1 0.0535s 0.0535s 0.0535s milestone
Output diff
diff --git a/tmp/frontend/fixtures-ee/analytics/type_of_work/tasks_by_type.json b/tmp/tests/frontend/fixtures-ee/analytics/type_of_work/tasks_by_type.json
index 2abd9529c2b..31c1d1b497b 100644
--- a/tmp/frontend/fixtures-ee/analytics/type_of_work/tasks_by_type.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/type_of_work/tasks_by_type.json
@@ -1 +1 @@
-[{"label":{"id":16,"title":"label16","color":"#990000","description":null,"group_id":82,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"series":[["2015-06-29",1],["2015-06-30",1],["2015-07-01",1],["2015-07-02",1]]},{"label":{"id":17,"title":"label17","color":"#990000","description":null,"group_id":82,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"series":[["2015-06-29",1],["2015-06-30",1],["2015-07-01",1],["2015-07-02",1]]},{"label":{"id":18,"title":"label18","color":"#990000","description":null,"group_id":82,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"series":[["2015-06-29",1],["2015-06-30",1],["2015-07-01",1],["2015-07-02",1]]}]
\ No newline at end of file
+[{"label":{"id":2,"title":"label2","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"series":[["2015-06-29",1],["2015-06-30",1],["2015-07-01",1],["2015-07-02",1]]},{"label":{"id":3,"title":"label3","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"series":[["2015-06-29",1],["2015-06-30",1],["2015-07-01",1],["2015-07-02",1]]},{"label":{"id":4,"title":"label4","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"series":[["2015-06-29",1],["2015-06-30",1],["2015-07-01",1],["2015-07-02",1]]}]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/median.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/median.json
index 5b3860c931f..bf751ebe561 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/median.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/median.json
@@ -1 +1 @@
-{"value":129600.0}
\ No newline at end of file
+{"value":null}
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/records.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/records.json
index d2dda095cb9..0637a088a01 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/records.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/code/records.json
@@ -1 +1 @@
-[{"title":"Awesome merge_request","author":{"id":12,"name":"John Doe13","username":"user12","state":"active","avatar_url":"https://www.gravatar.com/avatar/d25e135de81d110251ed8ed3e2798d79?s=80\u0026d=identicon","web_url":"http://localhost/user12","status_tooltip_html":null,"path":"/user12"},"iid":"3","total_time":{"days":2},"created_at":"less than a minute ago","url":"http://localhost/group16/project6/-/merge_requests/3","state":"merged"},{"title":"Awesome merge_request","author":{"id":12,"name":"John Doe13","username":"user12","state":"active","avatar_url":"https://www.gravatar.com/avatar/d25e135de81d110251ed8ed3e2798d79?s=80\u0026d=identicon","web_url":"http://localhost/user12","status_tooltip_html":null,"path":"/user12"},"iid":"4","total_time":{"days":1},"created_at":"less than a minute ago","url":"http://localhost/group16/project6/-/merge_requests/4","state":"merged"}]
\ No newline at end of file
+[]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/median.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/median.json
index d93bd21bb95..bf751ebe561 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/median.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/median.json
@@ -1 +1 @@
-{"value":345600.0}
\ No newline at end of file
+{"value":null}
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/records.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/records.json
index 25455fb2dc4..0637a088a01 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/records.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/issue/records.json
@@ -1 +1 @@
-[{"title":"My title 10","author":{"id":3,"name":"John Doe4","username":"user3","state":"active","avatar_url":"https://www.gravatar.com/avatar/2c75f98f3ea6cd6ee75cfbdfbb031388?s=80\u0026d=identicon","web_url":"http://localhost/user3","status_tooltip_html":null,"path":"/user3"},"iid":"2","total_time":{"days":5},"created_at":"5 days ago","url":"http://localhost/group4/project2/-/issues/2"},{"title":"My title 13","author":{"id":3,"name":"John Doe4","username":"user3","state":"active","avatar_url":"https://www.gravatar.com/avatar/2c75f98f3ea6cd6ee75cfbdfbb031388?s=80\u0026d=identicon","web_url":"http://localhost/user3","status_tooltip_html":null,"path":"/user3"},"iid":"3","total_time":{"days":4},"created_at":"4 days ago","url":"http://localhost/group4/project2/-/issues/3"},{"title":"My title 15","author":{"id":3,"name":"John Doe4","username":"user3","state":"active","avatar_url":"https://www.gravatar.com/avatar/2c75f98f3ea6cd6ee75cfbdfbb031388?s=80\u0026d=identicon","web_url":"http://localhost/user3","status_tooltip_html":null,"path":"/user3"},"iid":"4","total_time":{"days":3},"created_at":"3 days ago","url":"http://localhost/group4/project2/-/issues/4"}]
\ No newline at end of file
+[]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/median.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/median.json
index 532470c78f0..bf751ebe561 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/median.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/median.json
@@ -1 +1 @@
-{"value":388800.0}
\ No newline at end of file
+{"value":null}
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/records.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/records.json
index 4fbb2d5d7b9..0637a088a01 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/records.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/review/records.json
@@ -1 +1 @@
-[{"title":"Awesome merge_request","author":{"id":20,"name":"John Doe21","username":"user20","state":"active","avatar_url":"https://www.gravatar.com/avatar/fb32cf62136a195ec4f40ec6d1cfffdc?s=80\u0026d=identicon","web_url":"http://localhost/user20","status_tooltip_html":null,"path":"/user20"},"iid":"4","total_time":{"seconds":0},"created_at":"less than a minute ago","url":"http://localhost/group28/project10/-/merge_requests/4","state":"merged"},{"title":"Awesome merge_request","author":{"id":20,"name":"John Doe21","username":"user20","state":"active","avatar_url":"https://www.gravatar.com/avatar/fb32cf62136a195ec4f40ec6d1cfffdc?s=80\u0026d=identicon","web_url":"http://localhost/user20","status_tooltip_html":null,"path":"/user20"},"iid":"3","total_time":{"seconds":0},"created_at":"less than a minute ago","url":"http://localhost/group28/project10/-/merge_requests/3","state":"merged"},{"title":"My title 75","author":{"id":19,"name":"John Doe20","username":"user19","state":"active","avatar_url":"https://www.gravatar.com/avatar/dea4d12fdc8c28ba84bb0cba36cbbd8f?s=80\u0026d=identicon","web_url":"http://localhost/user19","status_tooltip_html":null,"path":"/user19"},"iid":"1","total_time":{"days":15},"created_at":"20 days ago","url":"http://localhost/group28/project10/-/merge_requests/1","state":"opened"},{"title":"My title 78","author":{"id":19,"name":"John Doe20","username":"user19","state":"active","avatar_url":"https://www.gravatar.com/avatar/dea4d12fdc8c28ba84bb0cba36cbbd8f?s=80\u0026d=identicon","web_url":"http://localhost/user19","status_tooltip_html":null,"path":"/user19"},"iid":"2","total_time":{"days":9},"created_at":"19 days ago","url":"http://localhost/group28/project10/-/merge_requests/2","state":"opened"}]
\ No newline at end of file
+[]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/median.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/median.json
index 532470c78f0..bf751ebe561 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/median.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/median.json
@@ -1 +1 @@
-{"value":388800.0}
\ No newline at end of file
+{"value":null}
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/records.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/records.json
index 09596f2a45d..0637a088a01 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/records.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/staging/records.json
@@ -1 +1 @@
-[{"name":"test","id":111,"branch":{"name":"master","url":"http://localhost/group34/project12/-/tree/master"},"short_sha":"b83d6e39","author":{"id":24,"name":"John Doe25","username":"user24","state":"active","avatar_url":"https://www.gravatar.com/avatar/b2a36e6b7d4eac0f4663a285a6578a7c?s=80\u0026d=identicon","web_url":"http://localhost/user24","status_tooltip_html":null,"path":"/user24"},"date":"Not started","total_time":{},"url":"http://localhost/group34/project12/-/jobs/111","commit_url":"http://localhost/group34/project12/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":115,"branch":{"name":"master","url":"http://localhost/group34/project12/-/tree/master"},"short_sha":"b83d6e39","author":{"id":24,"name":"John Doe25","username":"user24","state":"active","avatar_url":"https://www.gravatar.com/avatar/b2a36e6b7d4eac0f4663a285a6578a7c?s=80\u0026d=identicon","web_url":"http://localhost/user24","status_tooltip_html":null,"path":"/user24"},"date":"about 1 hour ago","total_time":{"mins":2},"url":"http://localhost/group34/project12/-/jobs/115","commit_url":"http://localhost/group34/project12/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":117,"branch":{"name":"master","url":"http://localhost/group34/project12/-/tree/master"},"short_sha":"b83d6e39","author":{"id":24,"name":"John Doe25","username":"user24","state":"active","avatar_url":"https://www.gravatar.com/avatar/b2a36e6b7d4eac0f4663a285a6578a7c?s=80\u0026d=identicon","web_url":"http://localhost/user24","status_tooltip_html":null,"path":"/user24"},"date":"Not started","total_time":{},"url":"http://localhost/group34/project12/-/jobs/117","commit_url":"http://localhost/group34/project12/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":112,"branch":{"name":"master","url":"http://localhost/group34/project12/-/tree/master"},"short_sha":"b83d6e39","author":{"id":24,"name":"John Doe25","username":"user24","state":"active","avatar_url":"https://www.gravatar.com/avatar/b2a36e6b7d4eac0f4663a285a6578a7c?s=80\u0026d=identicon","web_url":"http://localhost/user24","status_tooltip_html":null,"path":"/user24"},"date":"Not started","total_time":{},"url":"http://localhost/group34/project12/-/jobs/112","commit_url":"http://localhost/group34/project12/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":116,"branch":{"name":"master","url":"http://localhost/group34/project12/-/tree/master"},"short_sha":"b83d6e39","author":{"id":24,"name":"John Doe25","username":"user24","state":"active","avatar_url":"https://www.gravatar.com/avatar/b2a36e6b7d4eac0f4663a285a6578a7c?s=80\u0026d=identicon","web_url":"http://localhost/user24","status_tooltip_html":null,"path":"/user24"},"date":"about 1 hour ago","total_time":{"mins":2},"url":"http://localhost/group34/project12/-/jobs/116","commit_url":"http://localhost/group34/project12/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":118,"branch":{"name":"master","url":"http://localhost/group34/project12/-/tree/master"},"short_sha":"b83d6e39","author":{"id":24,"name":"John Doe25","username":"user24","state":"active","avatar_url":"https://www.gravatar.com/avatar/b2a36e6b7d4eac0f4663a285a6578a7c?s=80\u0026d=identicon","web_url":"http://localhost/user24","status_tooltip_html":null,"path":"/user24"},"date":"Not started","total_time":{},"url":"http://localhost/group34/project12/-/jobs/118","commit_url":"http://localhost/group34/project12/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"}]
\ No newline at end of file
+[]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/median.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/median.json
index 18707b73f73..bf751ebe561 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/median.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/median.json
@@ -1 +1 @@
-{"value":259200.0}
\ No newline at end of file
+{"value":null}
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/records.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/records.json
index f52969b165d..0637a088a01 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/records.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages/test/records.json
@@ -1 +1 @@
-[{"name":"test","id":75,"branch":{"name":"master","url":"http://localhost/group22/project8/-/tree/master"},"short_sha":"b83d6e39","author":{"id":16,"name":"John Doe17","username":"user16","state":"active","avatar_url":"https://www.gravatar.com/avatar/611cced270e17d59c17d32af607cfe09?s=80\u0026d=identicon","web_url":"http://localhost/user16","status_tooltip_html":null,"path":"/user16"},"date":"about 1 hour ago","total_time":{"mins":2},"url":"http://localhost/group22/project8/-/jobs/75","commit_url":"http://localhost/group22/project8/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":71,"branch":{"name":"master","url":"http://localhost/group22/project8/-/tree/master"},"short_sha":"b83d6e39","author":{"id":16,"name":"John Doe17","username":"user16","state":"active","avatar_url":"https://www.gravatar.com/avatar/611cced270e17d59c17d32af607cfe09?s=80\u0026d=identicon","web_url":"http://localhost/user16","status_tooltip_html":null,"path":"/user16"},"date":"Not started","total_time":{},"url":"http://localhost/group22/project8/-/jobs/71","commit_url":"http://localhost/group22/project8/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":77,"branch":{"name":"master","url":"http://localhost/group22/project8/-/tree/master"},"short_sha":"b83d6e39","author":{"id":16,"name":"John Doe17","username":"user16","state":"active","avatar_url":"https://www.gravatar.com/avatar/611cced270e17d59c17d32af607cfe09?s=80\u0026d=identicon","web_url":"http://localhost/user16","status_tooltip_html":null,"path":"/user16"},"date":"Not started","total_time":{},"url":"http://localhost/group22/project8/-/jobs/77","commit_url":"http://localhost/group22/project8/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":76,"branch":{"name":"master","url":"http://localhost/group22/project8/-/tree/master"},"short_sha":"b83d6e39","author":{"id":16,"name":"John Doe17","username":"user16","state":"active","avatar_url":"https://www.gravatar.com/avatar/611cced270e17d59c17d32af607cfe09?s=80\u0026d=identicon","web_url":"http://localhost/user16","status_tooltip_html":null,"path":"/user16"},"date":"about 1 hour ago","total_time":{"mins":2},"url":"http://localhost/group22/project8/-/jobs/76","commit_url":"http://localhost/group22/project8/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":72,"branch":{"name":"master","url":"http://localhost/group22/project8/-/tree/master"},"short_sha":"b83d6e39","author":{"id":16,"name":"John Doe17","username":"user16","state":"active","avatar_url":"https://www.gravatar.com/avatar/611cced270e17d59c17d32af607cfe09?s=80\u0026d=identicon","web_url":"http://localhost/user16","status_tooltip_html":null,"path":"/user16"},"date":"Not started","total_time":{},"url":"http://localhost/group22/project8/-/jobs/72","commit_url":"http://localhost/group22/project8/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"},{"name":"test","id":78,"branch":{"name":"master","url":"http://localhost/group22/project8/-/tree/master"},"short_sha":"b83d6e39","author":{"id":16,"name":"John Doe17","username":"user16","state":"active","avatar_url":"https://www.gravatar.com/avatar/611cced270e17d59c17d32af607cfe09?s=80\u0026d=identicon","web_url":"http://localhost/user16","status_tooltip_html":null,"path":"/user16"},"date":"Not started","total_time":{},"url":"http://localhost/group22/project8/-/jobs/78","commit_url":"http://localhost/group22/project8/-/commit/b83d6e391c22777fca1ed3012fce84f633d7fed0"}]
\ No newline at end of file
+[]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages.json
index 49752a805ff..ca4ae120996 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/stages.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/stages.json
@@ -1 +1 @@
-{"events":[{"name":"Issue closed","identifier":"issue_closed","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue created","identifier":"issue_created","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_added_to_board","issue_first_associated_with_milestone","issue_first_mentioned_in_commit","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue first added to a board","identifier":"issue_first_added_to_board","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_associated_with_milestone","issue_first_mentioned_in_commit","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue first associated with a milestone","identifier":"issue_first_associated_with_milestone","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_added_to_board","issue_first_mentioned_in_commit","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue first mentioned in a commit","identifier":"issue_first_mentioned_in_commit","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_associated_with_milestone","issue_first_added_to_board","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue label was added","identifier":"issue_label_added","type":"label","can_be_start_event":true,"allowed_end_events":["issue_label_added","issue_label_removed","issue_closed"]},{"name":"Issue label was removed","identifier":"issue_label_removed","type":"label","can_be_start_event":true,"allowed_end_events":["issue_closed"]},{"name":"Issue last edited","identifier":"issue_last_edited","type":"simple","can_be_start_event":false,"allowed_end_events":[]},{"name":"Merge request closed","identifier":"merge_request_closed","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request created","identifier":"merge_request_created","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_merged","merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_build_started","merge_request_last_build_finished","merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request first deployed to production","identifier":"merge_request_first_deployed_to_production","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request label was added","identifier":"merge_request_label_added","type":"label","can_be_start_event":true,"allowed_end_events":["merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request label was removed","identifier":"merge_request_label_removed","type":"label","can_be_start_event":true,"allowed_end_events":["merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request last build finish time","identifier":"merge_request_last_build_finished","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_merged","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request last build start time","identifier":"merge_request_last_build_started","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_last_build_finished","merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_merged","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request last edited","identifier":"merge_request_last_edited","type":"simple","can_be_start_event":false,"allowed_end_events":[]},{"name":"Merge request merged","identifier":"merge_request_merged","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_first_deployed_to_production","merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]}],"stages":[{"title":"Issue","hidden":false,"legend":"","description":"Time before an issue gets scheduled","id":1,"custom":false},{"title":"Plan","hidden":false,"legend":"","description":"Time before an issue starts implementation","id":2,"custom":false},{"title":"Code","hidden":false,"legend":"","description":"Time until first merge request","id":3,"custom":false},{"title":"Test","hidden":false,"legend":"","description":"Total test time for all commits/merges","id":4,"custom":false},{"title":"Review","hidden":false,"legend":"","description":"Time between merge request creation and merge/close","id":5,"custom":false},{"title":"Staging","hidden":false,"legend":"","description":"From merge request merge until deploy to production","id":6,"custom":false},{"title":"label-based-stage","hidden":false,"legend":"","description":"","id":7,"custom":true,"start_event_identifier":"issue_label_added","end_event_identifier":"issue_label_removed","start_event_label":{"id":1,"title":"in-code-review","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"},"end_event_label":{"id":1,"title":"in-code-review","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2015-07-03T10:00:00.000Z","updated_at":"2015-07-03T10:00:00.000Z"}},{"title":"Stage #1","hidden":false,"legend":"","description":"","id":8,"custom":true,"start_event_identifier":"merge_request_created","end_event_identifier":"merge_request_merged"}]}
\ No newline at end of file
+{"events":[{"name":"Issue closed","identifier":"issue_closed","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue created","identifier":"issue_created","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_added_to_board","issue_first_associated_with_milestone","issue_first_mentioned_in_commit","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue first added to a board","identifier":"issue_first_added_to_board","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_associated_with_milestone","issue_first_mentioned_in_commit","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue first associated with a milestone","identifier":"issue_first_associated_with_milestone","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_added_to_board","issue_first_mentioned_in_commit","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue first mentioned in a commit","identifier":"issue_first_mentioned_in_commit","type":"simple","can_be_start_event":true,"allowed_end_events":["issue_closed","issue_first_associated_with_milestone","issue_first_added_to_board","issue_last_edited","issue_label_added","issue_label_removed"]},{"name":"Issue label was added","identifier":"issue_label_added","type":"label","can_be_start_event":true,"allowed_end_events":["issue_label_added","issue_label_removed","issue_closed"]},{"name":"Issue label was removed","identifier":"issue_label_removed","type":"label","can_be_start_event":true,"allowed_end_events":["issue_closed"]},{"name":"Issue last edited","identifier":"issue_last_edited","type":"simple","can_be_start_event":false,"allowed_end_events":[]},{"name":"Merge request closed","identifier":"merge_request_closed","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request created","identifier":"merge_request_created","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_merged","merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_build_started","merge_request_last_build_finished","merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request first deployed to production","identifier":"merge_request_first_deployed_to_production","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request label was added","identifier":"merge_request_label_added","type":"label","can_be_start_event":true,"allowed_end_events":["merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request label was removed","identifier":"merge_request_label_removed","type":"label","can_be_start_event":true,"allowed_end_events":["merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request last build finish time","identifier":"merge_request_last_build_finished","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_merged","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request last build start time","identifier":"merge_request_last_build_started","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_last_build_finished","merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_merged","merge_request_label_added","merge_request_label_removed"]},{"name":"Merge request last edited","identifier":"merge_request_last_edited","type":"simple","can_be_start_event":false,"allowed_end_events":[]},{"name":"Merge request merged","identifier":"merge_request_merged","type":"simple","can_be_start_event":true,"allowed_end_events":["merge_request_first_deployed_to_production","merge_request_closed","merge_request_first_deployed_to_production","merge_request_last_edited","merge_request_label_added","merge_request_label_removed"]}],"stages":[{"title":"Issue","hidden":false,"legend":"","description":"Time before an issue gets scheduled","id":2,"custom":false},{"title":"Plan","hidden":false,"legend":"","description":"Time before an issue starts implementation","id":3,"custom":false},{"title":"Code","hidden":false,"legend":"","description":"Time until first merge request","id":4,"custom":false},{"title":"Test","hidden":false,"legend":"","description":"Total test time for all commits/merges","id":5,"custom":false},{"title":"Review","hidden":false,"legend":"","description":"Time between merge request creation and merge/close","id":6,"custom":false},{"title":"Staging","hidden":false,"legend":"","description":"From merge request merge until deploy to production","id":7,"custom":false},{"title":"label-based-stage","hidden":false,"legend":"","description":"","id":1,"custom":true,"start_event_identifier":"issue_label_added","end_event_identifier":"issue_label_removed","start_event_label":{"id":1,"title":"in-code-review","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2020-10-17T22:35:14.757Z","updated_at":"2020-10-17T22:35:14.757Z"},"end_event_label":{"id":1,"title":"in-code-review","color":"#990000","description":null,"group_id":1,"project_id":null,"template":false,"text_color":"#FFFFFF","created_at":"2020-10-17T22:35:14.757Z","updated_at":"2020-10-17T22:35:14.757Z"}},{"title":"Stage #1","hidden":false,"legend":"","description":"","id":8,"custom":true,"start_event_identifier":"merge_request_created","end_event_identifier":"merge_request_merged"}]}
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/summary.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/summary.json
index aa21465dbc9..2afc55b7a2a 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/summary.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/summary.json
@@ -1 +1 @@
-[{"value":"4","title":"New Issues"},{"value":"-","title":"Deploys"},{"value":"-","title":"Deployment Frequency","unit":"per day"}]
\ No newline at end of file
+[{"value":"2","title":"New Issues"},{"value":"-","title":"Deploys"},{"value":"-","title":"Deployment Frequency","unit":"per day"}]
\ No newline at end of file
diff --git a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/time_summary.json b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/time_summary.json
index 13ea1e7e7da..c96c7fdc3d4 100644
--- a/tmp/frontend/fixtures-ee/analytics/value_stream_analytics/time_summary.json
+++ b/tmp/tests/frontend/fixtures-ee/analytics/value_stream_analytics/time_summary.json
@@ -1 +1 @@
-[{"value":"4.5","title":"Lead Time","unit":"days"},{"value":"3.0","title":"Cycle Time","unit":"days"}]
\ No newline at end of file
+[{"value":"-","title":"Lead Time","unit":"days"},{"value":"-","title":"Cycle Time","unit":"days"}]
\ No newline at end of file
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Edited by Peter Leitzen