Skip to content

Commit 9d19560

Browse files
author
GitLab Bot
committed
Add latest changes from gitlab-org/gitlab@master
1 parent 9c0f430 commit 9d19560

File tree

125 files changed

+1741
-536
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+1741
-536
lines changed

.gitlab/CODEOWNERS

+3
Original file line numberDiff line numberDiff line change
@@ -280,3 +280,6 @@ Dangerfile @gl-quality/eng-prod
280280

281281
[Legal]
282282
/config/dependency_decisions.yml @gitlab-org/legal-reviewers
283+
284+
[Workhorse]
285+
/workhorse/ @jacobvosmaer-gitlab @nick.thomas @nolith @patrickbajao

.gitlab/ci/workhorse.gitlab-ci.yml

+1-11
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,10 @@
1-
workhorse:
2-
extends: .workhorse:rules:workhorse
3-
image: ${GITLAB_DEPENDENCY_PROXY}golang:1.14
4-
stage: test
5-
needs: []
6-
script:
7-
- rm .git/hooks/post-checkout
8-
- git checkout .
9-
- scripts/update-workhorse check
10-
- make -C workhorse
11-
121
workhorse:verify:
132
extends: .workhorse:rules:workhorse
143
image: ${GITLAB_DEPENDENCY_PROXY}golang:1.15
154
stage: test
165
needs: []
176
script:
7+
- make -C workhorse # test build
188
- make -C workhorse verify
199

2010
.workhorse:test:

.rubocop_manual_todo.yml

-5
Original file line numberDiff line numberDiff line change
@@ -2512,8 +2512,3 @@ Style/HashTransformation:
25122512
- 'spec/support/helpers/graphql_helpers.rb'
25132513
- 'spec/support/import_export/project_tree_expectations.rb'
25142514
- 'spec/support/shared_contexts/services/projects/container_repository/delete_tags_service_shared_context.rb'
2515-
2516-
Style/ClassEqualityComparison:
2517-
Exclude:
2518-
- spec/lib/peek/views/active_record_spec.rb
2519-
- ee/spec/lib/peek/views/active_record_spec.rb

GITLAB_WORKHORSE_VERSION

-1
This file was deleted.

GITLAB_WORKHORSE_VERSION

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
VERSION

Gemfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ gem 'fog-aws', '~> 3.9'
120120
# Locked until fog-google resolves https://github.com/fog/fog-google/issues/421.
121121
# Also see config/initializers/fog_core_patch.rb.
122122
gem 'fog-core', '= 2.1.0'
123-
gem 'fog-google', '~> 1.12'
123+
gem 'gitlab-fog-google', '~> 1.13', require: 'fog/google'
124124
gem 'fog-local', '~> 0.6'
125125
gem 'fog-openstack', '~> 1.0'
126126
gem 'fog-rackspace', '~> 0.1.1'

Gemfile.lock

+8-7
Original file line numberDiff line numberDiff line change
@@ -383,12 +383,6 @@ GEM
383383
excon (~> 0.58)
384384
formatador (~> 0.2)
385385
mime-types
386-
fog-google (1.12.0)
387-
fog-core (<= 2.1.0)
388-
fog-json (~> 1.2)
389-
fog-xml (~> 0.1.0)
390-
google-api-client (>= 0.44.2, < 0.51)
391-
google-cloud-env (~> 1.2)
392386
fog-json (1.2.0)
393387
fog-core
394388
multi_json (~> 1.10)
@@ -446,6 +440,13 @@ GEM
446440
fog-json (~> 1.2.0)
447441
mime-types
448442
ms_rest_azure (~> 0.12.0)
443+
gitlab-fog-google (1.13.0)
444+
addressable (>= 2.7.0)
445+
fog-core (<= 2.1.0)
446+
fog-json (~> 1.2)
447+
fog-xml (~> 0.1.0)
448+
google-api-client (>= 0.44.2, < 0.51)
449+
google-cloud-env (~> 1.2)
449450
gitlab-labkit (0.16.0)
450451
actionpack (>= 5.0.0, < 7.0.0)
451452
activesupport (>= 5.0.0, < 7.0.0)
@@ -1400,7 +1401,6 @@ DEPENDENCIES
14001401
fog-aliyun (~> 0.3)
14011402
fog-aws (~> 3.9)
14021403
fog-core (= 2.1.0)
1403-
fog-google (~> 1.12)
14041404
fog-local (~> 0.6)
14051405
fog-openstack (~> 1.0)
14061406
fog-rackspace (~> 0.1.1)
@@ -1415,6 +1415,7 @@ DEPENDENCIES
14151415
gitlab-chronic (~> 0.10.5)
14161416
gitlab-experiment (~> 0.4.12)
14171417
gitlab-fog-azure-rm (~> 1.0.1)
1418+
gitlab-fog-google (~> 1.13)
14181419
gitlab-labkit (~> 0.16.0)
14191420
gitlab-license (~> 1.3)
14201421
gitlab-mail_room (~> 0.0.8)

app/assets/javascripts/issuable/components/csv_export_modal.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export default {
4141
</script>
4242

4343
<template>
44-
<gl-modal :modal-id="modalId" body-class="gl-p-0!">
44+
<gl-modal :modal-id="modalId" body-class="gl-p-0!" data-qa-selector="export_issuable_modal">
4545
<template #modal-title>
4646
<gl-sprintf :message="__('Export %{name}')">
4747
<template #name>{{ issuableName }}</template>

app/assets/javascripts/issuable/components/csv_import_export_buttons.vue

+2
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,13 @@ export default {
6060
v-gl-tooltip.hover="__('Export as CSV')"
6161
v-gl-modal="exportModalId"
6262
icon="export"
63+
data-qa-selector="export_as_csv_button"
6364
data-testid="export-csv-button"
6465
/>
6566
<gl-dropdown
6667
v-if="showImportButton"
6768
v-gl-tooltip.hover="__('Import issues')"
69+
data-qa-selector="import_issues_dropdown"
6870
data-testid="import-csv-dropdown"
6971
icon="import"
7072
>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<script>
2+
export default {
3+
name: 'IssuableDiscussion',
4+
};
5+
</script>
6+
7+
<template>
8+
<section class="issuable-discussion">
9+
<div>
10+
<ul class="notes main-notes-list timeline">
11+
<slot name="discussion"></slot>
12+
</ul>
13+
</div>
14+
</section>
15+
</template>

app/assets/javascripts/issuable_show/components/issuable_show_root.vue

+10
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@
22
import IssuableSidebar from '~/issuable_sidebar/components/issuable_sidebar_root.vue';
33
44
import IssuableBody from './issuable_body.vue';
5+
import IssuableDiscussion from './issuable_discussion.vue';
56
import IssuableHeader from './issuable_header.vue';
67
78
export default {
89
components: {
910
IssuableSidebar,
1011
IssuableHeader,
1112
IssuableBody,
13+
IssuableDiscussion,
1214
},
1315
props: {
1416
issuable: {
@@ -89,6 +91,7 @@ export default {
8991
<slot name="header-actions"></slot>
9092
</template>
9193
</issuable-header>
94+
9295
<issuable-body
9396
:issuable="issuable"
9497
:status-badge-class="statusBadgeClass"
@@ -111,6 +114,13 @@ export default {
111114
<slot name="edit-form-actions" v-bind="actionsProps"></slot>
112115
</template>
113116
</issuable-body>
117+
118+
<issuable-discussion>
119+
<template #discussion>
120+
<slot name="discussion"></slot>
121+
</template>
122+
</issuable-discussion>
123+
114124
<issuable-sidebar @sidebar-toggle="$emit('sidebar-toggle', $event)">
115125
<template #right-sidebar-items="sidebarProps">
116126
<slot name="right-sidebar-items" v-bind="sidebarProps"></slot>

app/assets/javascripts/jobs/components/artifacts_block.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export default {
3737
};
3838
</script>
3939
<template>
40-
<div class="block">
40+
<div>
4141
<div class="title gl-font-weight-bold">{{ s__('Job|Job artifacts') }}</div>
4242
<p
4343
v-if="isExpired || willExpire"

app/assets/javascripts/jobs/components/commit_block.vue

+1-10
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,11 @@ export default {
1818
required: false,
1919
default: null,
2020
},
21-
isLastBlock: {
22-
type: Boolean,
23-
required: true,
24-
},
2521
},
2622
};
2723
</script>
2824
<template>
29-
<div
30-
:class="{
31-
'block-last': isLastBlock,
32-
block: !isLastBlock,
33-
}"
34-
>
25+
<div>
3526
<span class="font-weight-bold">{{ __('Commit') }}</span>
3627

3728
<gl-link :href="commit.commit_path" class="js-commit-sha commit-sha link-commit">

app/assets/javascripts/jobs/components/sidebar.vue

+33-11
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ export default {
2020
i18n: {
2121
...JOB_SIDEBAR,
2222
},
23+
borderTopClass: ['gl-border-t-solid', 'gl-border-t-1', 'gl-border-t-gray-100'],
2324
forwardDeploymentFailureModalId,
2425
components: {
2526
ArtifactsBlock,
@@ -72,7 +73,7 @@ export default {
7273
<aside class="right-sidebar build-sidebar" data-offset-top="101" data-spy="affix">
7374
<div class="sidebar-container">
7475
<div class="blocks-container">
75-
<div class="block gl-display-flex gl-flex-nowrap gl-align-items-center">
76+
<div class="gl-py-5 gl-display-flex gl-align-items-center">
7677
<tooltip-on-truncate :title="job.name" truncate-target="child"
7778
><h4 class="my-0 mr-2 gl-text-truncate">
7879
{{ job.name }}
@@ -107,38 +108,59 @@ export default {
107108
/>
108109
</div>
109110
110-
<div v-if="job.terminal_path || job.new_issue_path" class="block retry-link">
111+
<div
112+
v-if="job.terminal_path || job.new_issue_path"
113+
class="gl-py-5"
114+
:class="$options.borderTopClass"
115+
>
111116
<gl-button
112117
v-if="job.new_issue_path"
118+
:href="job.new_issue_path"
113119
category="secondary"
114120
variant="confirm"
115-
:href="job.new_issue_path"
116-
class="float-left gl-mr-2"
117121
data-testid="job-new-issue"
118-
>{{ $options.i18n.newIssue }}
122+
>
123+
{{ $options.i18n.newIssue }}
119124
</gl-button>
120125
<gl-button
121126
v-if="job.terminal_path"
122127
:href="job.terminal_path"
123-
class="gl-md-display-block gl-lg-display-block float-left"
124128
target="_blank"
125129
data-testid="terminal-link"
126130
>
127131
{{ $options.i18n.debug }}
128-
<gl-icon :size="14" name="external-link" />
132+
<gl-icon name="external-link" />
129133
</gl-button>
130134
</div>
131-
<job-sidebar-details-container />
132-
<artifacts-block v-if="hasArtifact" :artifact="job.artifact" :help-url="artifactHelpUrl" />
133-
<trigger-block v-if="hasTriggers" :trigger="job.trigger" />
135+
136+
<job-sidebar-details-container class="gl-py-5" :class="$options.borderTopClass" />
137+
138+
<artifacts-block
139+
v-if="hasArtifact"
140+
class="gl-py-5"
141+
:class="$options.borderTopClass"
142+
:artifact="job.artifact"
143+
:help-url="artifactHelpUrl"
144+
/>
145+
146+
<trigger-block
147+
v-if="hasTriggers"
148+
class="gl-py-5"
149+
:class="$options.borderTopClass"
150+
:trigger="job.trigger"
151+
/>
152+
134153
<commit-block
135154
:commit="commit"
136-
:is-last-block="hasStages"
155+
class="gl-py-5"
156+
:class="$options.borderTopClass"
137157
:merge-request="job.merge_request"
138158
/>
139159
140160
<stages-dropdown
141161
v-if="job.pipeline"
162+
class="gl-py-5"
163+
:class="$options.borderTopClass"
142164
:pipeline="job.pipeline"
143165
:selected-stage="selectedStage"
144166
:stages="stages"

app/assets/javascripts/jobs/components/sidebar_job_details_container.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ export default {
7373
</script>
7474
7575
<template>
76-
<div v-if="shouldRenderBlock" class="block">
76+
<div v-if="shouldRenderBlock">
7777
<detail-row v-if="job.duration" :value="duration" title="Duration" />
7878
<detail-row
7979
v-if="job.finished_at"

app/assets/javascripts/jobs/components/stages_dropdown.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ export default {
4343
};
4444
</script>
4545
<template>
46-
<div class="block-last dropdown">
46+
<div class="dropdown">
4747
<div class="js-pipeline-info">
4848
<ci-icon :status="pipeline.details.status" class="vertical-align-middle" />
4949

app/assets/javascripts/jobs/components/trigger_block.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ export default {
6161
</script>
6262

6363
<template>
64-
<div class="block">
64+
<div>
6565
<p
6666
v-if="trigger.short_token"
6767
:class="{ 'gl-mb-2': hasVariables, 'gl-mb-0': !hasVariables }"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
<script>
2+
import PipelineStage from '~/pipelines/components/pipelines_list/pipeline_stage.vue';
3+
/**
4+
* Renders the pipeline mini graph.
5+
*/
6+
export default {
7+
components: {
8+
PipelineStage,
9+
},
10+
props: {
11+
stages: {
12+
type: Array,
13+
required: true,
14+
},
15+
updateDropdown: {
16+
type: Boolean,
17+
required: false,
18+
default: false,
19+
},
20+
stagesClass: {
21+
type: [Array, Object, String],
22+
required: false,
23+
default: '',
24+
},
25+
isMergeTrain: {
26+
type: Boolean,
27+
required: false,
28+
default: false,
29+
},
30+
},
31+
methods: {
32+
onPipelineActionRequestComplete() {
33+
this.$emit('pipelineActionRequestComplete');
34+
},
35+
},
36+
};
37+
</script>
38+
<template>
39+
<div data-testid="widget-mini-pipeline-graph">
40+
<div
41+
v-for="stage in stages"
42+
:key="stage.name"
43+
:class="stagesClass"
44+
class="stage-container dropdown"
45+
>
46+
<pipeline-stage
47+
:stage="stage"
48+
:update-dropdown="updateDropdown"
49+
:is-merge-train="isMergeTrain"
50+
@pipelineActionRequestComplete="onPipelineActionRequestComplete"
51+
/>
52+
</div>
53+
</div>
54+
</template>

app/assets/javascripts/pipelines/components/pipelines_list/stage.vue app/assets/javascripts/pipelines/components/pipelines_list/pipeline_stage.vue

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
* 3. Merge request widget
1212
* 4. Commit widget
1313
*/
14+
1415
import { GlDropdown, GlLoadingIcon, GlTooltipDirective, GlIcon } from '@gitlab/ui';
1516
import { deprecatedCreateFlash as Flash } from '~/flash';
1617
import axios from '~/lib/utils/axios_utils';

0 commit comments

Comments
 (0)