Add latest changes from gitlab-org/gitlab@master

This commit is contained in:
GitLab Bot 2020-05-29 15:08:14 +00:00
parent bae24262df
commit 6e33325c14
55 changed files with 149 additions and 111 deletions

View File

@ -453,7 +453,7 @@ group :ed25519 do
end end
# Gitaly GRPC protocol definitions # Gitaly GRPC protocol definitions
gem 'gitaly', '~> 13.0.0.pre.rc1' gem 'gitaly', '~> 13.1.0.pre.rc1'
gem 'grpc', '~> 1.24.0' gem 'grpc', '~> 1.24.0'

View File

@ -377,7 +377,7 @@ GEM
po_to_json (>= 1.0.0) po_to_json (>= 1.0.0)
rails (>= 3.2.0) rails (>= 3.2.0)
git (1.5.0) git (1.5.0)
gitaly (13.0.0.pre.rc1) gitaly (13.1.0.pre.rc1)
grpc (~> 1.0) grpc (~> 1.0)
github-markup (1.7.0) github-markup (1.7.0)
gitlab-chronic (0.10.5) gitlab-chronic (0.10.5)
@ -1235,7 +1235,7 @@ DEPENDENCIES
gettext (~> 3.2.2) gettext (~> 3.2.2)
gettext_i18n_rails (~> 1.8.0) gettext_i18n_rails (~> 1.8.0)
gettext_i18n_rails_js (~> 1.3) gettext_i18n_rails_js (~> 1.3)
gitaly (~> 13.0.0.pre.rc1) gitaly (~> 13.1.0.pre.rc1)
github-markup (~> 1.7.0) github-markup (~> 1.7.0)
gitlab-chronic (~> 0.10.5) gitlab-chronic (~> 0.10.5)
gitlab-labkit (= 0.12.0) gitlab-labkit (= 0.12.0)

View File

@ -1,6 +1,7 @@
/* eslint-disable func-names, consistent-return, one-var, no-return-assign */ /* eslint-disable func-names, consistent-return, one-var, no-return-assign */
import $ from 'jquery'; import $ from 'jquery';
import 'jquery.waitforimages';
// Width where images must fits in, for 2-up this gets divided by 2 // Width where images must fits in, for 2-up this gets divided by 2
const availWidth = 900; const availWidth = 900;

View File

@ -5,4 +5,3 @@ import 'jquery-ujs';
import 'jquery.caret'; // must be imported before at.js import 'jquery.caret'; // must be imported before at.js
import '@gitlab/at.js'; import '@gitlab/at.js';
import 'vendor/jquery.scrollTo'; import 'vendor/jquery.scrollTo';
import 'jquery.waitforimages';

View File

@ -13,7 +13,7 @@ export default {
tooltip, tooltip,
}, },
computed: { computed: {
...mapGetters(['hasChanges']), ...mapGetters(['someUncommittedChanges']),
...mapState(['currentActivityView']), ...mapState(['currentActivityView']),
}, },
methods: { methods: {
@ -69,7 +69,7 @@ export default {
<icon name="file-modified" /> <icon name="file-modified" />
</button> </button>
</li> </li>
<li v-show="hasChanges"> <li v-show="someUncommittedChanges">
<button <button
v-tooltip v-tooltip
:class="{ :class="{

View File

@ -26,7 +26,7 @@ export default {
computed: { computed: {
...mapState(['changedFiles', 'stagedFiles', 'currentActivityView', 'lastCommitMsg']), ...mapState(['changedFiles', 'stagedFiles', 'currentActivityView', 'lastCommitMsg']),
...mapState('commit', ['commitMessage', 'submitCommitLoading']), ...mapState('commit', ['commitMessage', 'submitCommitLoading']),
...mapGetters(['hasChanges']), ...mapGetters(['someUncommittedChanges']),
...mapGetters('commit', ['discardDraftButtonDisabled', 'preBuiltCommitMessage']), ...mapGetters('commit', ['discardDraftButtonDisabled', 'preBuiltCommitMessage']),
overviewText() { overviewText() {
return n__('%d changed file', '%d changed files', this.stagedFiles.length); return n__('%d changed file', '%d changed files', this.stagedFiles.length);
@ -126,7 +126,7 @@ export default {
> >
<div v-if="isCompact" ref="compactEl" class="commit-form-compact"> <div v-if="isCompact" ref="compactEl" class="commit-form-compact">
<button <button
:disabled="!hasChanges" :disabled="!someUncommittedChanges"
type="button" type="button"
class="btn btn-primary btn-sm btn-block qa-begin-commit-button" class="btn btn-primary btn-sm btn-block qa-begin-commit-button"
@click="toggleIsCompact" @click="toggleIsCompact"

View File

@ -40,7 +40,6 @@ export default {
...mapState([ ...mapState([
'openFiles', 'openFiles',
'viewer', 'viewer',
'currentMergeRequestId',
'fileFindVisible', 'fileFindVisible',
'emptyStateSvgPath', 'emptyStateSvgPath',
'currentProjectId', 'currentProjectId',
@ -49,7 +48,6 @@ export default {
]), ]),
...mapGetters([ ...mapGetters([
'activeFile', 'activeFile',
'hasChanges',
'someUncommittedChanges', 'someUncommittedChanges',
'isCommitModeActive', 'isCommitModeActive',
'allBlobs', 'allBlobs',
@ -108,14 +106,7 @@ export default {
<div class="multi-file-edit-pane"> <div class="multi-file-edit-pane">
<template v-if="activeFile"> <template v-if="activeFile">
<commit-editor-header v-if="isCommitModeActive" :active-file="activeFile" /> <commit-editor-header v-if="isCommitModeActive" :active-file="activeFile" />
<repo-tabs <repo-tabs v-else :active-file="activeFile" :files="openFiles" :viewer="viewer" />
v-else
:active-file="activeFile"
:files="openFiles"
:viewer="viewer"
:has-changes="hasChanges"
:merge-request-id="currentMergeRequestId"
/>
<repo-editor :file="activeFile" class="multi-file-edit-pane-content" /> <repo-editor :file="activeFile" class="multi-file-edit-pane-content" />
</template> </template>
<template v-else> <template v-else>

View File

@ -16,7 +16,7 @@ export default {
computed: { computed: {
...mapState(['changedFiles', 'stagedFiles', 'lastCommitMsg']), ...mapState(['changedFiles', 'stagedFiles', 'lastCommitMsg']),
...mapState('commit', ['commitMessage', 'submitCommitLoading']), ...mapState('commit', ['commitMessage', 'submitCommitLoading']),
...mapGetters(['lastOpenedFile', 'hasChanges', 'someUncommittedChanges', 'activeFile']), ...mapGetters(['lastOpenedFile', 'someUncommittedChanges', 'activeFile']),
...mapGetters('commit', ['discardDraftButtonDisabled']), ...mapGetters('commit', ['discardDraftButtonDisabled']),
showStageUnstageArea() { showStageUnstageArea() {
return Boolean(this.someUncommittedChanges || this.lastCommitMsg); return Boolean(this.someUncommittedChanges || this.lastCommitMsg);
@ -26,8 +26,8 @@ export default {
}, },
}, },
watch: { watch: {
hasChanges() { someUncommittedChanges() {
if (!this.hasChanges) { if (!this.someUncommittedChanges) {
this.updateActivityBarView(leftSidebarViews.edit.name); this.updateActivityBarView(leftSidebarViews.edit.name);
} }
}, },

View File

@ -20,15 +20,6 @@ export default {
type: String, type: String,
required: true, required: true,
}, },
hasChanges: {
type: Boolean,
required: true,
},
mergeRequestId: {
type: String,
required: false,
default: '',
},
}, },
methods: { methods: {
...mapActions(['updateViewer', 'removePendingTab']), ...mapActions(['updateViewer', 'removePendingTab']),

View File

@ -50,9 +50,6 @@ export const emptyRepo = state =>
export const currentTree = state => export const currentTree = state =>
state.trees[`${state.currentProjectId}/${state.currentBranchId}`]; state.trees[`${state.currentProjectId}/${state.currentBranchId}`];
export const hasChanges = state =>
Boolean(state.changedFiles.length) || Boolean(state.stagedFiles.length);
export const hasMergeRequest = state => Boolean(state.currentMergeRequestId); export const hasMergeRequest = state => Boolean(state.currentMergeRequestId);
export const allBlobs = state => export const allBlobs = state =>

View File

@ -1,4 +1,6 @@
import $ from 'jquery'; import $ from 'jquery';
import 'jquery.waitforimages';
import initBlob from '~/blob_edit/blob_bundle'; import initBlob from '~/blob_edit/blob_bundle';
import ShortcutsNavigation from '~/behaviors/shortcuts/shortcuts_navigation'; import ShortcutsNavigation from '~/behaviors/shortcuts/shortcuts_navigation';
import NotificationsForm from '~/notifications_form'; import NotificationsForm from '~/notifications_form';

View File

@ -1,4 +1,6 @@
import $ from 'jquery'; import $ from 'jquery';
import 'jquery.waitforimages';
import Vue from 'vue'; import Vue from 'vue';
import initBlob from '~/blob_edit/blob_bundle'; import initBlob from '~/blob_edit/blob_bundle';
import commitPipelineStatus from '~/projects/tree/components/commit_pipeline_status_component.vue'; import commitPipelineStatus from '~/projects/tree/components/commit_pipeline_status_component.vue';

View File

@ -56,6 +56,7 @@ CAS
CentOS CentOS
Chatops Chatops
Citrix Citrix
clonable
Cloudwatch Cloudwatch
Cobertura Cobertura
Cognito Cognito

View File

@ -4,7 +4,7 @@ type: reference
# Google Secure LDAP **(CORE ONLY)** # Google Secure LDAP **(CORE ONLY)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/issues/46391) in GitLab 11.9. > [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/46391) in GitLab 11.9.
[Google Cloud Identity](https://cloud.google.com/identity/) provides a Secure [Google Cloud Identity](https://cloud.google.com/identity/) provides a Secure
LDAP service that can be configured with GitLab for authentication and group sync. LDAP service that can be configured with GitLab for authentication and group sync.

View File

@ -106,14 +106,14 @@ you list:
## Queue selector (experimental) ## Queue selector (experimental)
> [Introduced](https://gitlab.com/gitlab-com/gl-infra/scalability/issues/45) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.8. > [Introduced](https://gitlab.com/gitlab-com/gl-infra/scalability/-/issues/45) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.8.
CAUTION: **Caution:** CAUTION: **Caution:**
As this is marked as **experimental**, it is subject to change at any As this is marked as **experimental**, it is subject to change at any
time, including **breaking backwards compatibility**. This is so that we time, including **breaking backwards compatibility**. This is so that we
can react to changes we need for our GitLab.com deployment. We have a can react to changes we need for our GitLab.com deployment. We have a
tracking issue open to [remove the experimental tracking issue open to [remove the experimental
designation](https://gitlab.com/gitlab-com/gl-infra/scalability/issues/147) designation](https://gitlab.com/gitlab-com/gl-infra/scalability/-/issues/147)
from this feature; please comment there if you are interested in using from this feature; please comment there if you are interested in using
this in your own deployment. this in your own deployment.

View File

@ -117,7 +117,7 @@ Quoting from issue [#1](https://gitlab.com/gitlab-org/gitlab/-/issues/30528):
TIP: **Tip:** In support, our general approach to reconfiguring timeouts (applies also to the HTTP stack as well) is that it's acceptable to do it temporarily as a workaround. If it makes GitLab usable for the customer, then it buys time to understand the problem more completely, implement a hot fix, or make some other change that addresses the root cause. Generally, the timeouts should be put back to reasonable defaults once the root cause is resolved. TIP: **Tip:** In support, our general approach to reconfiguring timeouts (applies also to the HTTP stack as well) is that it's acceptable to do it temporarily as a workaround. If it makes GitLab usable for the customer, then it buys time to understand the problem more completely, implement a hot fix, or make some other change that addresses the root cause. Generally, the timeouts should be put back to reasonable defaults once the root cause is resolved.
In this case, the guidance we had from development was to drop deadlock_timeout and/or statement_timeout but to leave the third setting at 60s. Setting idle_in_transaction protects the database from sessions potentially hanging for days. There's more discussion in [the issue relating to introducing this timeout on GitLab.com](https://gitlab.com/gitlab-com/gl-infra/production/issues/1053). In this case, the guidance we had from development was to drop deadlock_timeout and/or statement_timeout but to leave the third setting at 60s. Setting idle_in_transaction protects the database from sessions potentially hanging for days. There's more discussion in [the issue relating to introducing this timeout on GitLab.com](https://gitlab.com/gitlab-com/gl-infra/production/-/issues/1053).
PostgresSQL defaults: PostgresSQL defaults:

View File

@ -1,6 +1,6 @@
# Legacy Feature Flags API **(PREMIUM)** # Legacy Feature Flags API **(PREMIUM)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/9566) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.5. > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/9566) in [GitLab Premium](https://about.gitlab.com/pricing/) 12.5.
CAUTION: **Deprecation** CAUTION: **Deprecation**
This API is deprecated and [scheduled for removal in GitLab 14.0](https://gitlab.com/gitlab-org/gitlab/-/issues/213369). Use [this API](feature_flags.md) instead. This API is deprecated and [scheduled for removal in GitLab 14.0](https://gitlab.com/gitlab-org/gitlab/-/issues/213369). Use [this API](feature_flags.md) instead.

View File

@ -8,6 +8,9 @@ info: To determine the technical writer assigned to the Stage/Group associated w
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12819) in GitLab 9.5. > [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/12819) in GitLab 9.5.
This page describes the group milestones API.
There's a separate [project milestones API](./group_milestones.md) page.
## List group milestones ## List group milestones
Returns a list of group milestones. Returns a list of group milestones.

View File

@ -6,6 +6,9 @@ info: To determine the technical writer assigned to the Stage/Group associated w
# Project milestones API # Project milestones API
This page describes the project milestones API.
There's a separate [group milestones API](./group_milestones.md) page.
## List project milestones ## List project milestones
Returns a list of project milestones. Returns a list of project milestones.

View File

@ -186,15 +186,15 @@ been necessary. These are:
#### 13.0 #### 13.0
- [Remove Backported - [Remove Backported
`os.Expand`](https://gitlab.com/gitlab-org/gitlab-runner/issues/4915) `os.Expand`](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4915)
- [Remove Fedora 29 package - [Remove Fedora 29 package
support](https://gitlab.com/gitlab-org/gitlab-runner/issues/16158) support](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/16158)
- [Remove macOS 32-bit - [Remove macOS 32-bit
support](https://gitlab.com/gitlab-org/gitlab-runner/issues/25466) support](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/25466)
- [Removed `debug/jobs/list?v=1` - [Removed `debug/jobs/list?v=1`
endpoint](https://gitlab.com/gitlab-org/gitlab-runner/issues/6361) endpoint](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6361)
- [Remove support for array of strings when defining services for Docker - [Remove support for array of strings when defining services for Docker
executor](https://gitlab.com/gitlab-org/gitlab-runner/issues/4922) executor](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4922)
- [Remove `--docker-services` flag on register - [Remove `--docker-services` flag on register
command](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6404) command](https://gitlab.com/gitlab-org/gitlab-runner/-/issues/6404)
- [Remove legacy build directory - [Remove legacy build directory

View File

@ -151,7 +151,7 @@ Requires GitLab Runner 11.11 or later, but is not supported if GitLab
Runner is installed using the [Helm Runner is installed using the [Helm
chart](https://docs.gitlab.com/runner/install/kubernetes.html). See the chart](https://docs.gitlab.com/runner/install/kubernetes.html). See the
[related [related
issue](https://gitlab.com/gitlab-org/charts/gitlab-runner/issues/83) for issue](https://gitlab.com/gitlab-org/charts/gitlab-runner/-/issues/83) for
details. details.
The Docker daemon supports connection over TLS and it's done by default The Docker daemon supports connection over TLS and it's done by default

View File

@ -31,7 +31,7 @@ Two things need to be configured for the interactive web terminal to work:
NOTE: **Note:** NOTE: **Note:**
Interactive web terminals are not yet supported by Interactive web terminals are not yet supported by
[`gitlab-runner` Helm chart](https://docs.gitlab.com/charts/charts/gitlab/gitlab-runner/index.html), [`gitlab-runner` Helm chart](https://docs.gitlab.com/charts/charts/gitlab/gitlab-runner/index.html),
but support [is planned](https://gitlab.com/gitlab-org/charts/gitlab-runner/issues/79). but support [is planned](https://gitlab.com/gitlab-org/charts/gitlab-runner/-/issues/79).
## Debugging a running job ## Debugging a running job

View File

@ -1110,7 +1110,7 @@ docker build:
Additional job configuration may be added to rules in the future. If something Additional job configuration may be added to rules in the future. If something
useful is not available, please useful is not available, please
[open an issue](https://gitlab.com/gitlab-org/gitlab/issues). [open an issue](https://gitlab.com/gitlab-org/gitlab/-/issues).
### `only`/`except` (basic) ### `only`/`except` (basic)
@ -1611,7 +1611,7 @@ This example creates four paths of execution:
pipeline will be created with YAML error. pipeline will be created with YAML error.
- The maximum number of jobs that a single job can need in the `needs:` array is limited: - The maximum number of jobs that a single job can need in the `needs:` array is limited:
- For GitLab.com, the limit is ten. For more information, see our - For GitLab.com, the limit is ten. For more information, see our
[infrastructure issue](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/7541). [infrastructure issue](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/7541).
- For self-managed instances, the limit is: - For self-managed instances, the limit is:
- 10, if the `ci_dag_limit_needs` feature flag is enabled (default). - 10, if the `ci_dag_limit_needs` feature flag is enabled (default).
- 50, if the `ci_dag_limit_needs` feature flag is disabled. - 50, if the `ci_dag_limit_needs` feature flag is disabled.

View File

@ -2,7 +2,7 @@
## Issue tracker guidelines ## Issue tracker guidelines
**[Search the issue tracker](https://gitlab.com/gitlab-org/gitlab/issues)** for similar entries before **[Search the issue tracker](https://gitlab.com/gitlab-org/gitlab/-/issues)** for similar entries before
submitting your own, there's a good chance somebody else had the same issue or submitting your own, there's a good chance somebody else had the same issue or
feature proposal. Show your support with an award emoji and/or join the feature proposal. Show your support with an award emoji and/or join the
discussion. discussion.
@ -356,10 +356,10 @@ A recent example of this was the issue for
## Feature proposals ## Feature proposals
To create a feature proposal, open an issue on the To create a feature proposal, open an issue on the
[issue tracker](https://gitlab.com/gitlab-org/gitlab/issues). [issue tracker](https://gitlab.com/gitlab-org/gitlab/-/issues).
In order to help track the feature proposals, we have created a In order to help track the feature proposals, we have created a
[`feature`](https://gitlab.com/gitlab-org/gitlab/issues?label_name=feature) label. For the time being, users that are not members [`feature`](https://gitlab.com/gitlab-org/gitlab/-/issues?label_name=feature) label. For the time being, users that are not members
of the project cannot add labels. You can instead ask one of the [core team](https://about.gitlab.com/community/core-team/) of the project cannot add labels. You can instead ask one of the [core team](https://about.gitlab.com/community/core-team/)
members to add the label ~feature to the issue or add the following members to add the label ~feature to the issue or add the following
code snippet right after your description in a new line: `~feature`. code snippet right after your description in a new line: `~feature`.
@ -420,7 +420,7 @@ in the regression issue as fixes are addressed.
## Technical and UX debt ## Technical and UX debt
In order to track things that can be improved in GitLab's codebase, In order to track things that can be improved in GitLab's codebase,
we use the ~"technical debt" label in [GitLab's issue tracker](https://gitlab.com/gitlab-org/gitlab/issues). we use the ~"technical debt" label in [GitLab's issue tracker](https://gitlab.com/gitlab-org/gitlab/-/issues).
For missed user experience requirements, we use the ~"UX debt" label. For missed user experience requirements, we use the ~"UX debt" label.
These labels should be added to issues that describe things that can be improved, These labels should be added to issues that describe things that can be improved,

View File

@ -221,7 +221,7 @@ requirements.
1. [Changelog entry added](../changelog.md), if necessary. 1. [Changelog entry added](../changelog.md), if necessary.
1. Reviewed by relevant (UX/FE/BE/tech writing) reviewers and all concerns are addressed. 1. Reviewed by relevant (UX/FE/BE/tech writing) reviewers and all concerns are addressed.
1. Merged by a project maintainer. 1. Merged by a project maintainer.
1. Create an issue in the [infrastructure issue tracker](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues) to inform the Infrastructure department when your contribution is changing default settings or introduces a new setting, if relevant. 1. Create an issue in the [infrastructure issue tracker](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues) to inform the Infrastructure department when your contribution is changing default settings or introduces a new setting, if relevant.
1. Confirmed to be working in the [Canary stage](https://about.gitlab.com/handbook/engineering/#canary-testing) or on GitLab.com once the contribution is deployed. 1. Confirmed to be working in the [Canary stage](https://about.gitlab.com/handbook/engineering/#canary-testing) or on GitLab.com once the contribution is deployed.
1. Added to the [release post](https://about.gitlab.com/handbook/marketing/blog/release-posts/), 1. Added to the [release post](https://about.gitlab.com/handbook/marketing/blog/release-posts/),
if relevant. if relevant.

View File

@ -654,7 +654,7 @@ For other punctuation rules, please refer to the
links shift too, which eventually leads to dead links. If you think it is links shift too, which eventually leads to dead links. If you think it is
compelling to add numbers in headings, make sure to at least discuss it with compelling to add numbers in headings, make sure to at least discuss it with
someone in the Merge Request. someone in the Merge Request.
- [Avoid using symbols and special characters](https://gitlab.com/gitlab-org/gitlab-docs/issues/84) - [Avoid using symbols and special characters](https://gitlab.com/gitlab-org/gitlab-docs/-/issues/84)
in headers. Whenever possible, they should be plain and short text. in headers. Whenever possible, they should be plain and short text.
- Avoid adding things that show ephemeral statuses. For example, if a feature is - Avoid adding things that show ephemeral statuses. For example, if a feature is
considered beta or experimental, put this information in a note, not in the heading. considered beta or experimental, put this information in a note, not in the heading.
@ -1050,7 +1050,7 @@ For a complete reference on code blocks, check the [Kramdown guide](https://abou
## GitLab SVG icons ## GitLab SVG icons
> [Introduced](https://gitlab.com/gitlab-org/gitlab-docs/issues/384) in GitLab 12.7. > [Introduced](https://gitlab.com/gitlab-org/gitlab-docs/-/issues/384) in GitLab 12.7.
You can use icons from the [GitLab SVG library](https://gitlab-org.gitlab.io/gitlab-svgs/) directly You can use icons from the [GitLab SVG library](https://gitlab-org.gitlab.io/gitlab-svgs/) directly
in the documentation. in the documentation.

View File

@ -65,7 +65,7 @@ within the `pages` directory correspond to Rails controllers and actions. These
auto-generated bundles will be automatically included on the corresponding auto-generated bundles will be automatically included on the corresponding
pages. pages.
For example, if you were to visit <https://gitlab.com/gitlab-org/gitlab/issues>, For example, if you were to visit <https://gitlab.com/gitlab-org/gitlab/-/issues>,
you would be accessing the `app/controllers/projects/issues_controller.rb` you would be accessing the `app/controllers/projects/issues_controller.rb`
controller with the `index` action. If a corresponding file exists at controller with the `index` action. If a corresponding file exists at
`pages/projects/issues/index/index.js`, it will be compiled into a webpack `pages/projects/issues/index/index.js`, it will be compiled into a webpack

View File

@ -96,7 +96,7 @@ As a guideline:
Before toggling any feature flag, check that there are no ongoing Before toggling any feature flag, check that there are no ongoing
significant incidents on GitLab.com. You can do this by checking the significant incidents on GitLab.com. You can do this by checking the
`#production` and `#incident-management` Slack channels, or looking for `#production` and `#incident-management` Slack channels, or looking for
[open incident issues](https://gitlab.com/gitlab-com/gl-infra/production/issues/?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=incident) [open incident issues](https://gitlab.com/gitlab-com/gl-infra/production/-/issues/?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=incident)
(although check the dates and times). (although check the dates and times).
We do not want to introduce changes during an incident, as it can make We do not want to introduce changes during an incident, as it can make
@ -221,7 +221,7 @@ Any feature flag change that affects GitLab.com (production) will
automatically be logged in an issue. automatically be logged in an issue.
The issue is created in the The issue is created in the
[gl-infra/feature-flag-log](https://gitlab.com/gitlab-com/gl-infra/feature-flag-log/issues?scope=all&utf8=%E2%9C%93&state=closed) [gl-infra/feature-flag-log](https://gitlab.com/gitlab-com/gl-infra/feature-flag-log/-/issues?scope=all&utf8=%E2%9C%93&state=closed)
project, and it will at minimum log the Slack handle of person enabling project, and it will at minimum log the Slack handle of person enabling
a feature flag, the time, and the name of the flag being changed. a feature flag, the time, and the name of the flag being changed.

View File

@ -85,7 +85,7 @@ Therefore "create a new user" would translate into "Benutzer(in) anlegen".
### Updating the glossary ### Updating the glossary
To propose additions to the glossary please To propose additions to the glossary please
[open an issue](https://gitlab.com/gitlab-org/gitlab/issues?scope=all&utf8=✓&state=all&label_name[]=Category%3AInternationalization). [open an issue](https://gitlab.com/gitlab-org/gitlab/-/issues?scope=all&utf8=✓&state=all&label_name[]=Category%3AInternationalization).
## French Translation Guidelines ## French Translation Guidelines

View File

@ -92,7 +92,7 @@ Marked stuck import jobs as failed. JIDs: xyz
While the performance problems are not tackled, there is a process to workaround While the performance problems are not tackled, there is a process to workaround
importing big projects, using a foreground import: importing big projects, using a foreground import:
[Foreground import](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/5384) of big projects for customers. [Foreground import](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/5384) of big projects for customers.
(Using the import template in the [infrastructure tracker](https://gitlab.com/gitlab-com/gl-infra/infrastructure/)) (Using the import template in the [infrastructure tracker](https://gitlab.com/gitlab-com/gl-infra/infrastructure/))
## Security ## Security

View File

@ -57,7 +57,7 @@ This section describes the steps you need to complete to onboard as a partner
and complete an intgration with the Secure stage. and complete an intgration with the Secure stage.
1. Read about our [partnerships](https://about.gitlab.com/partners/integrate/). 1. Read about our [partnerships](https://about.gitlab.com/partners/integrate/).
1. [Create an issue](https://gitlab.com/gitlab-com/alliances/alliances/issues/new?issuable_template=new_partner) 1. [Create an issue](https://gitlab.com/gitlab-com/alliances/alliances/-/issues/new?issuable_template=new_partner)
using our new partner issue template to begin the discussion. using our new partner issue template to begin the discussion.
1. Get a test account to begin developing your integration. You can 1. Get a test account to begin developing your integration. You can
request a [GitLab.com Gold Subscription Sandbox](https://about.gitlab.com/partners/integrate/#gitlabcom-gold-subscription-sandbox-request) request a [GitLab.com Gold Subscription Sandbox](https://about.gitlab.com/partners/integrate/#gitlabcom-gold-subscription-sandbox-request)

View File

@ -284,7 +284,7 @@ creating visualizations in Kibana.
**Note:** **Note:**
The fields of the context are currently only logged for Sidekiq jobs triggered The fields of the context are currently only logged for Sidekiq jobs triggered
through web requests. See the through web requests. See the
[follow-up work](https://gitlab.com/gitlab-com/gl-infra/scalability/issues/68) [follow-up work](https://gitlab.com/gitlab-com/gl-infra/scalability/-/issues/68)
for more information. for more information.
## Exception Handling ## Exception Handling
@ -358,7 +358,7 @@ end
for most users, but you may need to tweak them in [Omnibus GitLab](https://gitlab.com/gitlab-org/omnibus-gitlab). for most users, but you may need to tweak them in [Omnibus GitLab](https://gitlab.com/gitlab-org/omnibus-gitlab).
1. If you add a new file, submit an issue to the [production 1. If you add a new file, submit an issue to the [production
tracker](https://gitlab.com/gitlab-com/gl-infra/production/issues) or tracker](https://gitlab.com/gitlab-com/gl-infra/production/-/issues) or
a merge request to the [gitlab_fluentd](https://gitlab.com/gitlab-cookbooks/gitlab_fluentd) a merge request to the [gitlab_fluentd](https://gitlab.com/gitlab-cookbooks/gitlab_fluentd)
project. See [this example](https://gitlab.com/gitlab-cookbooks/gitlab_fluentd/-/merge_requests/51/diffs). project. See [this example](https://gitlab.com/gitlab-cookbooks/gitlab_fluentd/-/merge_requests/51/diffs).

View File

@ -93,12 +93,12 @@ systems.
#### Database size #### Database size
A recent [database checkup shows a breakdown of the table sizes on A recent [database checkup shows a breakdown of the table sizes on
GitLab.com](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/8022#master-1022016101-8). GitLab.com](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/8022#master-1022016101-8).
Since `merge_request_diff_files` contains over 1 TB of data, we will want to Since `merge_request_diff_files` contains over 1 TB of data, we will want to
reduce/eliminate this table first. GitLab has support for [storing diffs in reduce/eliminate this table first. GitLab has support for [storing diffs in
object storage](../administration/merge_request_diffs.md), which we [will object storage](../administration/merge_request_diffs.md), which we [will
want to do on want to do on
GitLab.com](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/7356). GitLab.com](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/7356).
#### High availability #### High availability
@ -147,7 +147,7 @@ limitation:
- Run multiple PgBouncer instances. - Run multiple PgBouncer instances.
- Use a multi-threaded connection pooler (e.g. - Use a multi-threaded connection pooler (e.g.
[Odyssey](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/7776). [Odyssey](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/7776).
On some Linux systems, it's possible to run [multiple PgBouncer instances on On some Linux systems, it's possible to run [multiple PgBouncer instances on
the same port](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/4796). the same port](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/4796).
@ -275,7 +275,7 @@ in a timely manner:
- Redistribute/gerrymander Sidekiq processes by queue - Redistribute/gerrymander Sidekiq processes by queue
types. Long-running jobs (e.g. relating to project import) can often types. Long-running jobs (e.g. relating to project import) can often
squeeze out jobs that run fast (e.g. delivering e-mail). [This technique squeeze out jobs that run fast (e.g. delivering e-mail). [This technique
was used in to optimize our existing Sidekiq deployment](https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/7219#note_218019483). was used in to optimize our existing Sidekiq deployment](https://gitlab.com/gitlab-com/gl-infra/infrastructure/-/issues/7219#note_218019483).
- Optimize jobs. Eliminating unnecessary work, reducing network calls - Optimize jobs. Eliminating unnecessary work, reducing network calls
(e.g. SQL, Gitaly, etc.), and optimizing processor time can yield significant (e.g. SQL, Gitaly, etc.), and optimizing processor time can yield significant
benefits. benefits.

View File

@ -23,7 +23,7 @@ For more information about the permission model at GitLab, please see [the GitLa
### Impact ### Impact
Improper permission handling can have significant impacts on the security of an application. Improper permission handling can have significant impacts on the security of an application.
Some situations may reveal [sensitive data](https://gitlab.com/gitlab-com/gl-infra/production/issues/477) or allow a malicious actor to perform [harmful actions](https://gitlab.com/gitlab-org/gitlab/-/issues/8180). Some situations may reveal [sensitive data](https://gitlab.com/gitlab-com/gl-infra/production/-/issues/477) or allow a malicious actor to perform [harmful actions](https://gitlab.com/gitlab-org/gitlab/-/issues/8180).
The overall impact depends heavily on what resources can be accessed or modified improperly. The overall impact depends heavily on what resources can be accessed or modified improperly.
A common vulnerability when permission checks are missing is called [IDOR](https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/05-Authorization_Testing/04-Testing_for_Insecure_Direct_Object_References) for Insecure Direct Object References. A common vulnerability when permission checks are missing is called [IDOR](https://owasp.org/www-project-web-security-testing-guide/latest/4-Web_Application_Security_Testing/05-Authorization_Testing/04-Testing_for_Insecure_Direct_Object_References) for Insecure Direct Object References.

View File

@ -147,7 +147,7 @@ GitLab doesn't skip jobs scheduled in the future, as we assume that
the state will have changed by the time the job is scheduled to the state will have changed by the time the job is scheduled to
execute. execute.
More [deduplication strategies have been suggested](https://gitlab.com/gitlab-com/gl-infra/scalability/issues/195). If you are implementing a worker that More [deduplication strategies have been suggested](https://gitlab.com/gitlab-com/gl-infra/scalability/-/issues/195). If you are implementing a worker that
could benefit from a different strategy, please comment in the issue. could benefit from a different strategy, please comment in the issue.
If the automatic deduplication were to cause issues in certain If the automatic deduplication were to cause issues in certain

View File

@ -86,7 +86,7 @@ subgraph "gitlab-qa-mirror pipeline"
1. The result of the GitLab QA pipeline is being 1. The result of the GitLab QA pipeline is being
propagated upstream, through Omnibus, back to the GitLab merge request. propagated upstream, through Omnibus, back to the GitLab merge request.
Please note, we plan to [add more specific information](https://gitlab.com/gitlab-org/quality/team-tasks/issues/156) Please note, we plan to [add more specific information](https://gitlab.com/gitlab-org/quality/team-tasks/-/issues/156)
about the tests included in each job/scenario that runs in `gitlab-qa-mirror`. about the tests included in each job/scenario that runs in `gitlab-qa-mirror`.
#### With Pipeline for Merged Results #### With Pipeline for Merged Results
@ -191,5 +191,5 @@ Continued reading:
You can ask question in the `#quality` channel on Slack (GitLab internal) or You can ask question in the `#quality` channel on Slack (GitLab internal) or
you can find an issue you would like to work on in you can find an issue you would like to work on in
[the `gitlab` issue tracker](https://gitlab.com/gitlab-org/gitlab/issues?label_name%5B%5D=QA&label_name%5B%5D=test), or [the `gitlab` issue tracker](https://gitlab.com/gitlab-org/gitlab/-/issues?label_name%5B%5D=QA&label_name%5B%5D=test), or
[the `gitlab-qa` issue tracker](https://gitlab.com/gitlab-org/gitlab-qa/issues?label_name%5B%5D=new+scenario). [the `gitlab-qa` issue tracker](https://gitlab.com/gitlab-org/gitlab-qa/-/issues?label_name%5B%5D=new+scenario).

View File

@ -152,7 +152,7 @@ used by the `review-deploy` and `review-stop` jobs.
### Get access to the GCP Review Apps cluster ### Get access to the GCP Review Apps cluster
You need to [open an access request (internal link)](https://gitlab.com/gitlab-com/access-requests/issues/new) You need to [open an access request (internal link)](https://gitlab.com/gitlab-com/access-requests/-/issues/new)
for the `gcp-review-apps-sg` GCP group. In order to join a group, you must specify the desired GCP role in your access request. for the `gcp-review-apps-sg` GCP group. In order to join a group, you must specify the desired GCP role in your access request.
The role is what will grant you specific permissions in order to engage with Review App containers. The role is what will grant you specific permissions in order to engage with Review App containers.
@ -406,7 +406,7 @@ find a way to limit it to only us.**
## Other resources ## Other resources
- [Review Apps integration for CE/EE (presentation)](https://docs.google.com/presentation/d/1QPLr6FO4LduROU8pQIPkX1yfGvD13GEJIBOenqoKxR8/edit?usp=sharing) - [Review Apps integration for CE/EE (presentation)](https://docs.google.com/presentation/d/1QPLr6FO4LduROU8pQIPkX1yfGvD13GEJIBOenqoKxR8/edit?usp=sharing)
- [Stability issues](https://gitlab.com/gitlab-org/quality/team-tasks/issues/212) - [Stability issues](https://gitlab.com/gitlab-org/quality/team-tasks/-/issues/212)
### Helpful command line tools ### Helpful command line tools

View File

@ -295,7 +295,7 @@ graph RL
- **DOM**: - **DOM**:
Testing on the real DOM ensures your components work in the intended environment. Testing on the real DOM ensures your components work in the intended environment.
Part of DOM testing is delegated to [cross-browser testing](https://gitlab.com/gitlab-org/quality/team-tasks/issues/45). Part of DOM testing is delegated to [cross-browser testing](https://gitlab.com/gitlab-org/quality/team-tasks/-/issues/45).
- **Properties or state of components**: - **Properties or state of components**:
On this level, all tests can only perform actions a user would do. On this level, all tests can only perform actions a user would do.
For example: to change the state of a component, a click event would be fired. For example: to change the state of a component, a click event would be fired.

View File

@ -114,7 +114,7 @@ We have three kinds of file encoding in our uploads:
1. <i class="fa fa-check-circle"></i> **multipart**: `multipart/form-data` is the most common, a file is encoded as a part of a multipart encoded request. 1. <i class="fa fa-check-circle"></i> **multipart**: `multipart/form-data` is the most common, a file is encoded as a part of a multipart encoded request.
1. <i class="fa fa-check-circle"></i> **body**: some APIs uploads files as the whole request body. 1. <i class="fa fa-check-circle"></i> **body**: some APIs uploads files as the whole request body.
1. <i class="fa fa-times-circle"></i> **JSON**: some JSON API uploads files as base64 encoded strings. This will require a change to GitLab Workhorse, which [is planned](https://gitlab.com/gitlab-org/gitlab-workhorse/issues/226). 1. <i class="fa fa-times-circle"></i> **JSON**: some JSON API uploads files as base64 encoded strings. This will require a change to GitLab Workhorse, which [is planned](https://gitlab.com/gitlab-org/gitlab-workhorse/-/issues/226).
## Uploading technologies ## Uploading technologies

View File

@ -62,7 +62,7 @@ have to adhere to various internal requirements (for example, org. compliance, v
In cases where a strategic user has a requirement to test a feature before it is In cases where a strategic user has a requirement to test a feature before it is
officially released, we can offer to create a Release Candidate (RC) version that will officially released, we can offer to create a Release Candidate (RC) version that will
include the specific feature. This should be needed only in extreme cases, and can be requested for include the specific feature. This should be needed only in extreme cases, and can be requested for
consideration by raising an issue in the [release/tasks](https://gitlab.com/gitlab-org/release/tasks/issues/new?issuable_template=Backporting-request) issue tracker. consideration by raising an issue in the [release/tasks](https://gitlab.com/gitlab-org/release/tasks/-/issues/new?issuable_template=Backporting-request) issue tracker.
It is important to note that the Release Candidate will also contain other features and changes as It is important to note that the Release Candidate will also contain other features and changes as
it is not possible to easily isolate a specific feature (similar reasons as noted above). The it is not possible to easily isolate a specific feature (similar reasons as noted above). The
Release Candidate will be no different than any code that is deployed to GitLab.com or is publicly Release Candidate will be no different than any code that is deployed to GitLab.com or is publicly
@ -95,7 +95,7 @@ For instance, if we release `11.2.1` with a fix for a severe bug introduced in
`11.0.0`, we could backport the fix to a new `11.0.x`, and `11.1.x` patch release. `11.0.0`, we could backport the fix to a new `11.0.x`, and `11.1.x` patch release.
To request backporting to more than one stable release for consideration, raise an issue in the To request backporting to more than one stable release for consideration, raise an issue in the
[release/tasks](https://gitlab.com/gitlab-org/release/tasks/issues/new?issuable_template=Backporting-request) issue tracker. [release/tasks](https://gitlab.com/gitlab-org/release/tasks/-/issues/new?issuable_template=Backporting-request) issue tracker.
### Security releases ### Security releases

View File

@ -358,7 +358,7 @@ as it attempts to fetch the image using `CI_REGISTRY_PASSWORD`.
CAUTION: **Deprecation** CAUTION: **Deprecation**
The default value for the `deploymentApiVersion` setting was changed from The default value for the `deploymentApiVersion` setting was changed from
`extensions/v1beta` to `apps/v1` in [GitLab 13.0](https://gitlab.com/gitlab-org/charts/auto-deploy-app/issues/47). `extensions/v1beta` to `apps/v1` in [GitLab 13.0](https://gitlab.com/gitlab-org/charts/auto-deploy-app/-/issues/47).
In Kubernetes 1.16 and later, a number of In Kubernetes 1.16 and later, a number of
[APIs were removed](https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/), [APIs were removed](https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/),

View File

@ -141,7 +141,7 @@ enabled on the Git server:
1. **Create a new Git repository and fetch.** Support for `--filter=sparse:oid` 1. **Create a new Git repository and fetch.** Support for `--filter=sparse:oid`
using the clone command is incomplete, so we will emulate the clone command using the clone command is incomplete, so we will emulate the clone command
by hand, using `git init` and `git fetch`. Follow by hand, using `git init` and `git fetch`. Follow
[issue tracking support for `--filter=sparse:oid`](https://gitlab.com/gitlab-org/git/issues/4) [issue tracking support for `--filter=sparse:oid`](https://gitlab.com/gitlab-org/git/-/issues/4)
for updates. for updates.
```shell ```shell
@ -173,7 +173,7 @@ enabled on the Git server:
1. **Sparse checkout** must be enabled and configured to prevent objects from 1. **Sparse checkout** must be enabled and configured to prevent objects from
other paths being downloaded automatically when checking out branches. Follow other paths being downloaded automatically when checking out branches. Follow
[issue proposing automating sparse checkouts](https://gitlab.com/gitlab-org/git/issues/5) for updates. [issue proposing automating sparse checkouts](https://gitlab.com/gitlab-org/git/-/issues/5) for updates.
```shell ```shell
# Enable sparse checkout # Enable sparse checkout

View File

@ -154,7 +154,7 @@ Some tickets need specific knowledge or a deep understanding of a particular com
- Understand what's in the pipeline and proposed features at GitLab: [Direction Page](https://about.gitlab.com/direction/) - Understand what's in the pipeline and proposed features at GitLab: [Direction Page](https://about.gitlab.com/direction/)
- Practice searching issues and filtering using [labels](https://gitlab.com/gitlab-org/gitlab/-/labels) to find existing feature proposals and bugs - Practice searching issues and filtering using [labels](https://gitlab.com/gitlab-org/gitlab/-/labels) to find existing feature proposals and bugs
- If raising a new issue always provide a relevant label and a link to the relevant ticket in Zendesk - If raising a new issue always provide a relevant label and a link to the relevant ticket in Zendesk
- Add [customer labels](https://gitlab.com/gitlab-org/gitlab/issues?label_name%5B%5D=customer) for those issues relevant to our subscribers - Add [customer labels](https://gitlab.com/gitlab-org/gitlab/-/issues?label_name%5B%5D=customer) for those issues relevant to our subscribers
- Take a look at the [existing issue templates](https://gitlab.com/gitlab-org/gitlab/blob/master/CONTRIBUTING.md#issue-tracker) to see what is expected - Take a look at the [existing issue templates](https://gitlab.com/gitlab-org/gitlab/blob/master/CONTRIBUTING.md#issue-tracker) to see what is expected
- Raise issues for bugs in a manner that would make the issue easily reproducible. A Developer or a contributor may work on your issue - Raise issues for bugs in a manner that would make the issue easily reproducible. A Developer or a contributor may work on your issue

View File

@ -22,7 +22,7 @@ Based on your installation, choose a section below that fits your needs.
source](upgrading_from_source.md) - The guidelines for upgrading Community source](upgrading_from_source.md) - The guidelines for upgrading Community
Edition and Enterprise Edition from source. Edition and Enterprise Edition from source.
- [Patch versions](patch_versions.md) guide includes the steps needed for a - [Patch versions](patch_versions.md) guide includes the steps needed for a
patch version, eg. 6.2.0 to 6.2.1, and apply to both Community and Enterprise patch version, such as 6.2.0 to 6.2.1, and apply to both Community and Enterprise
Editions. Editions.
In the past we used separate documents for the upgrading instructions, but we In the past we used separate documents for the upgrading instructions, but we
@ -178,7 +178,7 @@ If you wish to upgrade your GitLab installation from Community to Enterprise
Edition, follow the guides below based on the installation method: Edition, follow the guides below based on the installation method:
- [Source CE to EE update guides](upgrading_from_ce_to_ee.md) - The steps are very similar - [Source CE to EE update guides](upgrading_from_ce_to_ee.md) - The steps are very similar
to a version upgrade: stop the server, get the code, update config files for to a version upgrade: stop the server, get the code, update configuration files for
the new functionality, install libraries and do migrations, update the init the new functionality, install libraries and do migrations, update the init
script, start the application and check its status. script, start the application and check its status.
- [Omnibus CE to EE](https://docs.gitlab.com/omnibus/update/README.html#updating-community-edition-to-enterprise-edition) - Follow this guide to update your Omnibus - [Omnibus CE to EE](https://docs.gitlab.com/omnibus/update/README.html#updating-community-edition-to-enterprise-edition) - Follow this guide to update your Omnibus

View File

@ -371,7 +371,7 @@ test:
release we will update the autoscaler to enable release we will update the autoscaler to enable
the pre-provisioning of virtual machines. This will significantly reduce the pre-provisioning of virtual machines. This will significantly reduce
the time it takes to provision a VM on the Windows fleet. You can the time it takes to provision a VM on the Windows fleet. You can
follow along in the [related issue](https://gitlab.com/gitlab-org/ci-cd/custom-executor-drivers/autoscaler/issues/32). follow along in the [related issue](https://gitlab.com/gitlab-org/ci-cd/custom-executor-drivers/autoscaler/-/issues/32).
- The Windows Shared Runner fleet may be unavailable occasionally - The Windows Shared Runner fleet may be unavailable occasionally
for maintenance or updates. for maintenance or updates.
- The Windows Shared Runner virtual machine instances do not use the - The Windows Shared Runner virtual machine instances do not use the

View File

@ -258,7 +258,7 @@ build:
- docker push $CI_REGISTRY/group/project/image:latest - docker push $CI_REGISTRY/group/project/image:latest
``` ```
You can also make use of [other variables](../../../ci/variables/README.md) to avoid hardcoding: You can also make use of [other variables](../../../ci/variables/README.md) to avoid hard-coding:
```yaml ```yaml
build: build:

View File

@ -1,6 +1,6 @@
# GitLab Go Proxy **(PREMIUM)** # GitLab Go Proxy **(PREMIUM)**
> - [Introduced](https://gitlab.com/gitlab-org/gitlab/issues/27376) in [GitLab Premium](https://about.gitlab.com/pricing/) 13.1. > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/27376) in [GitLab Premium](https://about.gitlab.com/pricing/) 13.1.
> - It's deployed behind a feature flag, disabled by default. > - It's deployed behind a feature flag, disabled by default.
> - It's disabled on GitLab.com. > - It's disabled on GitLab.com.
> - It's not recommended for production use. > - It's not recommended for production use.

View File

@ -134,7 +134,7 @@ This example code does the following:
#### Setting up your AWS credentials with your GitLab account #### Setting up your AWS credentials with your GitLab account
In order to interact with your AWS account, the GitLab CI/CD pipelines require both `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` to be defined in your GitLab settings under **Settings > CI/CD > Variables**. In order to interact with your AWS account, the GitLab CI/CD pipelines require both `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` to be defined in your GitLab settings under **Settings > CI/CD > Variables**.
For more information please see: <https://docs.gitlab.com/ee/ci/variables/README.html#via-the-ui> For more information please see [Create a custom variable in the UI](../../../../ci/variables/README.md#create-a-custom-variable-in-the-ui).
NOTE: **Note:** NOTE: **Note:**
The AWS credentials you provide must include IAM policies that provision correct access control to AWS Lambda, API Gateway, CloudFormation, and IAM resources. The AWS credentials you provide must include IAM policies that provision correct access control to AWS Lambda, API Gateway, CloudFormation, and IAM resources.
@ -288,7 +288,7 @@ automated testing of both local and deployed serverless function.
The example code is available: The example code is available:
- As a [cloneable repository](https://gitlab.com/gitlab-org/serverless/examples/serverless-framework-js). - As a [clonable repository](https://gitlab.com/gitlab-org/serverless/examples/serverless-framework-js).
- In a version with [tests and secret variables](https://gitlab.com/gitlab-org/project-templates/serverless-framework/). - In a version with [tests and secret variables](https://gitlab.com/gitlab-org/project-templates/serverless-framework/).
You can also use a [template](../../../../gitlab-basics/create-project.md#project-templates) You can also use a [template](../../../../gitlab-basics/create-project.md#project-templates)
@ -416,7 +416,7 @@ production:
environment: production environment: production
``` ```
Lets examine the config file more closely: Lets examine the configuration file more closely:
- `image` specifies the Docker image to use for this build. This is the latest Python - `image` specifies the Docker image to use for this build. This is the latest Python
image since the sample application is written in Python. image since the sample application is written in Python.

View File

@ -356,6 +356,24 @@ a [Push event webhook](../integrations/webhooks.md#push-events) to trigger an im
pull to GitLab. Push mirroring from GitLab is rate limited to once per minute when only push mirroring pull to GitLab. Push mirroring from GitLab is rate limited to once per minute when only push mirroring
protected branches. protected branches.
### Configure a webhook to trigger an immediate pull to GitLab
Assuming you have already configured the [push](#setting-up-a-push-mirror-to-another-gitlab-instance-with-2fa-activated) and [pull](#pulling-from-a-remote-repository-starter) mirrors in the upstream GitLab instance, to trigger an immediate pull as suggested above, you will need to configure a [Push Event Web Hook](../integrations/webhooks.md#push-events) in the downstream instance.
To do this:
- Create a [personal access token](../../profile/personal_access_tokens.md) with `API` scope.
- Navigate to **Settings > Webhooks**
- Add the webhook URL which in this case will use the [Pull Mirror API](../../../api/projects.md#start-the-pull-mirroring-process-for-a-project-starter) request to trigger an immediate pull after updates to the repository.
```plaintext
https://gitlab.example.com/api/v4/projects/:id/mirror/pull?private_token=<your_access_token>
```
- Ensure that the **Push Events** checkbox is selected.
- Click on **Add Webhook** button to save the webhook.
- To test the integration click on the **Test** button and confirm GitLab does not return any error.
### Preventing conflicts using a `pre-receive` hook ### Preventing conflicts using a `pre-receive` hook
CAUTION: **Warning:** CAUTION: **Warning:**

View File

@ -177,7 +177,7 @@ To turn on the feature, ask a GitLab administrator with Rails console access to
command: command:
```ruby ```ruby
Feature.enable(service_desk_email) Feature.enable(:service_desk_email)
``` ```
The configuration options are the same as for configuring The configuration options are the same as for configuring

View File

@ -284,7 +284,7 @@ terminal:
- The `webide-file-sync` executable must start **after** the project - The `webide-file-sync` executable must start **after** the project
directory is available. This is why we need to add `sleep 5` to the `command`. directory is available. This is why we need to add `sleep 5` to the `command`.
See [this issue](https://gitlab.com/gitlab-org/webide-file-sync/issues/7) for See [this issue](https://gitlab.com/gitlab-org/webide-file-sync/-/issues/7) for
more information. more information.
- `$CI_PROJECT_DIR` is a - `$CI_PROJECT_DIR` is a
[predefined environment variable](../../../ci/variables/predefined_variables.md) [predefined environment variable](../../../ci/variables/predefined_variables.md)

View File

@ -14,6 +14,21 @@ module Gitlab
payload.delete('extra.server') payload.delete('extra.server')
# The raven extra context is populated by Raven::SidekiqCleanupMiddleware.
#
# It contains the full sidekiq job which consists of mixed types and nested
# objects. That causes a bunch of issues when trying to ingest logs into
# Elasticsearch.
#
# We apply a stricter schema here that forces the args to be an array of
# strings. This same logic exists in Gitlab::SidekiqLogging::JSONFormatter.
payload['extra.sidekiq'].tap do |value|
if value.is_a?(Hash) && value.key?('args')
value = value.dup
payload['extra.sidekiq']['args'] = Gitlab::Utils::LogLimitedArray.log_limited_array(value['args'].try(:map, &:to_s))
end
end
if exception.backtrace if exception.backtrace
payload['exception.backtrace'] = Gitlab::BacktraceCleaner.clean_backtrace(exception.backtrace) payload['exception.backtrace'] = Gitlab::BacktraceCleaner.clean_backtrace(exception.backtrace)
end end

View File

@ -16,9 +16,7 @@ describe('RepoTabs', () => {
vm = createComponent(RepoTabs, { vm = createComponent(RepoTabs, {
files: openedFiles, files: openedFiles,
viewer: 'editor', viewer: 'editor',
hasChanges: false,
activeFile: file('activeFile'), activeFile: file('activeFile'),
hasMergeRequest: false,
}); });
openedFiles[0].active = true; openedFiles[0].active = true;

View File

@ -179,5 +179,16 @@ describe Gitlab::ErrorTracking do
described_class.track_exception(exception, extra_info) described_class.track_exception(exception, extra_info)
end end
end end
context 'with sidekiq args' do
let(:extra) { { sidekiq: { 'args' => [1, { 'id' => 2, 'name' => 'hello' }, 'some-value', 'another-value'] } } }
it 'ensures extra.sidekiq.args is a string' do
expect(Gitlab::ErrorTracking::Logger).to receive(:error).with(
hash_including({ 'extra.sidekiq' => { 'args' => ['1', '{"id"=>2, "name"=>"hello"}', 'some-value', 'another-value'] } }))
described_class.track_exception(exception, extra)
end
end
end end
end end

View File

@ -6,28 +6,34 @@ describe SnippetInputAction do
describe 'validations' do describe 'validations' do
using RSpec::Parameterized::TableSyntax using RSpec::Parameterized::TableSyntax
where(:action, :file_path, :content, :previous_path, :is_valid) do where(:action, :file_path, :content, :previous_path, :is_valid, :invalid_field) do
'create' | 'foobar' | 'foobar' | 'foobar' | true 'create' | 'foobar' | 'foobar' | 'foobar' | true | nil
'move' | 'foobar' | 'foobar' | 'foobar' | true 'move' | 'foobar' | 'foobar' | 'foobar' | true | nil
'delete' | 'foobar' | 'foobar' | 'foobar' | true 'delete' | 'foobar' | 'foobar' | 'foobar' | true | nil
'update' | 'foobar' | 'foobar' | 'foobar' | true 'update' | 'foobar' | 'foobar' | 'foobar' | true | nil
'foo' | 'foobar' | 'foobar' | 'foobar' | false 'foo' | 'foobar' | 'foobar' | 'foobar' | false | :action
nil | 'foobar' | 'foobar' | 'foobar' | false nil | 'foobar' | 'foobar' | 'foobar' | false | :action
'' | 'foobar' | 'foobar' | 'foobar' | false '' | 'foobar' | 'foobar' | 'foobar' | false | :action
'move' | 'foobar' | 'foobar' | nil | false 'move' | 'foobar' | 'foobar' | nil | false | :previous_path
'move' | 'foobar' | 'foobar' | '' | false 'move' | 'foobar' | 'foobar' | '' | false | :previous_path
'create' | 'foobar' | nil | 'foobar' | false 'create' | 'foobar' | nil | 'foobar' | false | :content
'create' | 'foobar' | '' | 'foobar' | false 'create' | 'foobar' | '' | 'foobar' | false | :content
'create' | nil | 'foobar' | 'foobar' | false 'create' | nil | 'foobar' | 'foobar' | false | :file_path
'create' | '' | 'foobar' | 'foobar' | false 'create' | '' | 'foobar' | 'foobar' | false | :file_path
'update' | 'foobar' | nil | 'foobar' | false 'update' | 'foobar' | nil | 'foobar' | false | :content
'update' | 'other' | 'foobar' | 'foobar' | false 'update' | 'other' | 'foobar' | 'foobar' | false | :file_path
end end
with_them do with_them do
subject { described_class.new(action: action, file_path: file_path, content: content, previous_path: previous_path).valid? } subject { described_class.new(action: action, file_path: file_path, content: content, previous_path: previous_path) }
specify { is_expected.to be is_valid} specify do
expect(subject.valid?).to be is_valid
unless is_valid
expect(subject.errors).to include(invalid_field)
end
end
end end
end end