Skip to content
Snippets Groups Projects
Commit 56201db1 authored by GitLab Bot's avatar GitLab Bot
Browse files

Add latest changes from gitlab-org/gitlab@master

parent ce2a803d
No related branches found
No related tags found
No related merge requests found
Showing
with 101 additions and 59 deletions
---
title: Omit error details from previous attempt in Sidekiq JSON logs
merge_request: 25161
author:
type: changed
const path = require('path');
const webpack = require('webpack');
const vendorDllHash = require('./helpers/vendor_dll_hash');
const { YarnCheck } = require('yarn-check-webpack-plugin');
 
const ROOT_PATH = path.resolve(__dirname, '..');
 
Loading
Loading
@@ -60,6 +61,11 @@ module.exports = {
path: path.join(dllCachePath, '[name].dll.manifest.json'),
name: '[name]_[hash]',
}),
new YarnCheck({
rootDirectory: ROOT_PATH,
exclude: /ts-jest/,
forceKill: true,
}),
],
 
node: {
Loading
Loading
Loading
Loading
@@ -109,6 +109,7 @@ To make full use of Auto DevOps, you will need:
 
1. A [Kubernetes 1.12+ cluster](../../user/project/clusters/index.md) for the project. The easiest
way is to add a [new cluster using the GitLab UI](../../user/project/clusters/add_remove_clusters.md#add-new-cluster).
For Kubernetes 1.16+ clusters, there is some additional configuration for [Auto Deploy for Kubernetes 1.16+](#kubernetes-116).
1. NGINX Ingress. You can deploy it to your Kubernetes cluster by installing
the [GitLab-managed app for Ingress](../../user/clusters/applications.md#ingress),
once you have configured GitLab's Kubernetes integration in the previous step.
Loading
Loading
@@ -635,6 +636,30 @@ be pulled again, e.g. after pod eviction, Kubernetes will fail to do so
as it will be attempting to fetch the image using
`CI_REGISTRY_PASSWORD`.
 
#### Kubernetes 1.16+
> [Introduced](https://gitlab.com/gitlab-org/charts/auto-deploy-app/-/merge_requests/51) in GitLab 12.8.
CAUTION: **Deprecation**
The default value of `extensions/v1beta1` for the `deploymentApiVersion` setting is
deprecated, and is scheduled to be changed to a new default of `apps/v1` in
[GitLab 13.0](https://gitlab.com/gitlab-org/charts/auto-deploy-app/issues/47).
In Kubernetes 1.16 onwards, a number of [APIs were removed](https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/),
including support for `Deployment` in the `extensions/v1beta1` version.
To use Auto Deploy on a Kubernetes 1.16+ cluster, you must:
1. Set the following in the [`.gitlab/auto-deploy-values.yaml` file](#customize-values-for-helm-chart):
```yml
deploymentApiVersion: apps/v1
```
1. Set the `POSTGRES_ENABLED` variable to `false`. This will disable Auto Deploy's deployment of PostgreSQL.
Support for enabling Auto Deploy's deployment of PostgreSQL in a Kubernetes 1.16+ cluster
is [planned](https://gitlab.com/gitlab-org/charts/auto-deploy-app/issues/28).
#### Migrations
 
> [Introduced][ce-21955] in GitLab 11.4
Loading
Loading
Loading
Loading
@@ -77,7 +77,9 @@ module Gitlab
end
 
def parse_job(job)
job = job.dup
# Error information from the previous try is in the payload for
# displaying in the Sidekiq UI, but is very confusing in logs!
job = job.except('error_backtrace', 'error_class', 'error_message')
 
# Add process id params
job['pid'] = ::Process.pid
Loading
Loading
Loading
Loading
@@ -8,7 +8,6 @@ namespace :gitlab do
yarn:check
gettext:po_to_json
rake:assets:precompile
gitlab:assets:vendor
webpack:compile
gitlab:assets:fix_urls
].each(&Gitlab::TaskHelpers.method(:invoke_and_time_task))
Loading
Loading
Loading
Loading
@@ -198,6 +198,7 @@
"timezone-mock": "^1.0.8",
"vue-jest": "^4.0.0-beta.2",
"webpack-dev-server": "^3.8.1",
"yarn-check-webpack-plugin": "^1.2.0",
"yarn-deduplicate": "^1.1.1"
},
"resolutions": {
Loading
Loading
Loading
Loading
@@ -22,8 +22,9 @@ describe Profiles::NotificationsController do
end
 
context 'with groups that do not have notification preferences' do
set(:group) { create(:group) }
set(:subgroup) { create(:group, parent: group) }
let_it_be(:group) { create(:group) }
let_it_be(:subgroup) { create(:group, parent: group) }
before do
group.add_developer(user)
end
Loading
Loading
Loading
Loading
@@ -3,14 +3,14 @@
require 'spec_helper'
 
describe AwardEmojisFinder do
set(:issue_1) { create(:issue) }
set(:issue_1_thumbsup) { create(:award_emoji, name: 'thumbsup', awardable: issue_1) }
set(:issue_1_thumbsdown) { create(:award_emoji, name: 'thumbsdown', awardable: issue_1) }
let_it_be(:issue_1) { create(:issue) }
let_it_be(:issue_1_thumbsup) { create(:award_emoji, name: 'thumbsup', awardable: issue_1) }
let_it_be(:issue_1_thumbsdown) { create(:award_emoji, name: 'thumbsdown', awardable: issue_1) }
# Create a matching set of emoji for a second issue.
# These should never appear in our finder results
set(:issue_2) { create(:issue) }
set(:issue_2_thumbsup) { create(:award_emoji, name: 'thumbsup', awardable: issue_2) }
set(:issue_2_thumbsdown) { create(:award_emoji, name: 'thumbsdown', awardable: issue_2) }
let_it_be(:issue_2) { create(:issue) }
let_it_be(:issue_2_thumbsup) { create(:award_emoji, name: 'thumbsup', awardable: issue_2) }
let_it_be(:issue_2_thumbsdown) { create(:award_emoji, name: 'thumbsdown', awardable: issue_2) }
 
describe 'param validation' do
it 'raises an error if `name` is invalid' do
Loading
Loading
Loading
Loading
@@ -5,7 +5,7 @@ require 'spec_helper'
describe ClustersFinder do
let(:project) { create(:project) }
 
set(:user) { create(:user) }
let_it_be(:user) { create(:user) }
 
describe '#execute' do
let(:enabled_cluster) { create(:cluster, :provided_by_gcp, projects: [project]) }
Loading
Loading
Loading
Loading
@@ -29,7 +29,7 @@ describe IssuesFinder do
end
 
context 'filter by username' do
set(:user3) { create(:user) }
let_it_be(:user3) { create(:user) }
 
before do
project2.add_developer(user3)
Loading
Loading
@@ -53,7 +53,7 @@ describe IssuesFinder do
end
 
it_behaves_like 'no assignee filter' do
set(:user3) { create(:user) }
let_it_be(:user3) { create(:user) }
let(:expected_issuables) { [issue4] }
end
 
Loading
Loading
@@ -679,7 +679,7 @@ describe IssuesFinder do
end
 
context 'filtering by confidential' do
set(:confidential_issue) { create(:issue, project: project1, confidential: true) }
let_it_be(:confidential_issue) { create(:issue, project: project1, confidential: true) }
 
context 'no filtering' do
it 'returns all issues' do
Loading
Loading
@@ -777,7 +777,7 @@ describe IssuesFinder do
it 'returns the number of rows for the default state' do
finder = described_class.new(user)
 
expect(finder.row_count).to eq(5)
expect(finder.row_count).to eq(4)
end
 
it 'returns the number of rows for a given state' do
Loading
Loading
@@ -790,10 +790,10 @@ describe IssuesFinder do
describe '#with_confidentiality_access_check' do
let(:guest) { create(:user) }
 
set(:authorized_user) { create(:user) }
set(:project) { create(:project, namespace: authorized_user.namespace) }
set(:public_issue) { create(:issue, project: project) }
set(:confidential_issue) { create(:issue, project: project, confidential: true) }
let_it_be(:authorized_user) { create(:user) }
let_it_be(:project) { create(:project, namespace: authorized_user.namespace) }
let_it_be(:public_issue) { create(:issue, project: project) }
let_it_be(:confidential_issue) { create(:issue, project: project, confidential: true) }
 
context 'when no project filter is given' do
let(:params) { {} }
Loading
Loading
Loading
Loading
@@ -3,13 +3,13 @@
require 'spec_helper'
 
describe JobsFinder, '#execute' do
set(:user) { create(:user) }
set(:admin) { create(:user, :admin) }
set(:project) { create(:project, :private, public_builds: false) }
set(:pipeline) { create(:ci_pipeline, project: project) }
set(:job_1) { create(:ci_build) }
set(:job_2) { create(:ci_build, :running) }
set(:job_3) { create(:ci_build, :success, pipeline: pipeline) }
let_it_be(:user) { create(:user) }
let_it_be(:admin) { create(:user, :admin) }
let_it_be(:project) { create(:project, :private, public_builds: false) }
let_it_be(:pipeline) { create(:ci_pipeline, project: project) }
let_it_be(:job_1) { create(:ci_build) }
let_it_be(:job_2) { create(:ci_build, :running) }
let_it_be(:job_3) { create(:ci_build, :success, pipeline: pipeline) }
 
let(:params) { {} }
 
Loading
Loading
Loading
Loading
@@ -3,13 +3,13 @@
require 'spec_helper'
 
describe MembersFinder, '#execute' do
set(:group) { create(:group) }
set(:nested_group) { create(:group, parent: group) }
set(:project) { create(:project, namespace: nested_group) }
set(:user1) { create(:user) }
set(:user2) { create(:user) }
set(:user3) { create(:user) }
set(:user4) { create(:user) }
let_it_be(:group) { create(:group) }
let_it_be(:nested_group) { create(:group, parent: group) }
let_it_be(:project, reload: true) { create(:project, namespace: nested_group) }
let_it_be(:user1) { create(:user) }
let_it_be(:user2) { create(:user) }
let_it_be(:user3) { create(:user) }
let_it_be(:user4) { create(:user) }
 
it 'returns members for project and parent groups' do
nested_group.request_access(user1)
Loading
Loading
@@ -128,10 +128,10 @@ describe MembersFinder, '#execute' do
context 'when include_invited_groups_members == true' do
subject { described_class.new(project, user2).execute(include_relations: [:inherited, :direct, :invited_groups_members]) }
 
set(:linked_group) { create(:group, :public) }
set(:nested_linked_group) { create(:group, parent: linked_group) }
set(:linked_group_member) { linked_group.add_guest(user1) }
set(:nested_linked_group_member) { nested_linked_group.add_guest(user2) }
let_it_be(:linked_group) { create(:group, :public) }
let_it_be(:nested_linked_group) { create(:group, parent: linked_group) }
let_it_be(:linked_group_member) { linked_group.add_guest(user1) }
let_it_be(:nested_linked_group_member) { nested_linked_group.add_guest(user2) }
 
it 'includes all the invited_groups members including members inherited from ancestor groups' do
create(:project_group_link, project: project, group: nested_linked_group)
Loading
Loading
Loading
Loading
@@ -214,13 +214,13 @@ describe MergeRequestsFinder do
merge_request3.assignees = [user2, user3]
end
 
set(:user3) { create(:user) }
let_it_be(:user3) { create(:user) }
let(:params) { { assignee_username: [user2.username, user3.username] } }
let(:expected_issuables) { [merge_request3] }
end
 
it_behaves_like 'no assignee filter' do
set(:user3) { create(:user) }
let_it_be(:user3) { create(:user) }
let(:expected_issuables) { [merge_request4, merge_request5] }
end
 
Loading
Loading
Loading
Loading
@@ -3,9 +3,9 @@
require 'spec_helper'
 
describe ResourceLabelEventFinder do
set(:user) { create(:user) }
set(:issue_project) { create(:project) }
set(:issue) { create(:issue, project: issue_project) }
let_it_be(:user) { create(:user) }
let_it_be(:issue_project) { create(:project) }
let_it_be(:issue) { create(:issue, project: issue_project) }
 
describe '#execute' do
subject { described_class.new(user, issue).execute }
Loading
Loading
Loading
Loading
@@ -18,7 +18,10 @@ describe Gitlab::SidekiqLogging::StructuredLogger do
"jid" => "da883554ee4fe414012f5f42",
"created_at" => created_at.to_f,
"enqueued_at" => created_at.to_f,
"correlation_id" => 'cid'
"correlation_id" => 'cid',
"error_message" => "wrong number of arguments (2 for 3)",
"error_class" => "ArgumentError",
"error_backtrace" => []
}
end
 
Loading
Loading
@@ -26,7 +29,7 @@ describe Gitlab::SidekiqLogging::StructuredLogger do
let(:clock_thread_cputime_start) { 0.222222299 }
let(:clock_thread_cputime_end) { 1.333333799 }
let(:start_payload) do
job.merge(
job.except('error_backtrace', 'error_class', 'error_message').merge(
'message' => 'TestWorker JID-da883554ee4fe414012f5f42: start',
'job_status' => 'start',
'pid' => Process.pid,
Loading
Loading
Loading
Loading
@@ -3,9 +3,9 @@
require 'spec_helper'
 
describe Ci::BridgePresenter do
set(:project) { create(:project) }
set(:pipeline) { create(:ci_pipeline, project: project) }
set(:bridge) { create(:ci_bridge, pipeline: pipeline, status: :failed) }
let_it_be(:project) { create(:project) }
let_it_be(:pipeline) { create(:ci_pipeline, project: project) }
let_it_be(:bridge) { create(:ci_bridge, pipeline: pipeline, status: :failed) }
 
subject(:presenter) do
described_class.new(bridge)
Loading
Loading
Loading
Loading
@@ -3,10 +3,10 @@
require 'spec_helper'
 
describe Ci::TriggerPresenter do
set(:user) { create(:user) }
set(:project) { create(:project) }
let_it_be(:user) { create(:user) }
let_it_be(:project) { create(:project) }
 
set(:trigger) do
let_it_be(:trigger) do
create(:ci_trigger, token: '123456789abcd', project: project)
end
 
Loading
Loading
Loading
Loading
@@ -5,11 +5,11 @@ require 'spec_helper'
describe EventPresenter do
include Gitlab::Routing.url_helpers
 
set(:group) { create(:group) }
set(:project) { create(:project, group: group) }
set(:target) { create(:milestone, project: project) }
set(:group_event) { create(:event, :created, project: nil, group: group, target: target) }
set(:project_event) { create(:event, :created, project: project, target: target) }
let_it_be(:group) { create(:group) }
let_it_be(:project) { create(:project, group: group) }
let_it_be(:target) { create(:milestone, project: project) }
let_it_be(:group_event) { create(:event, :created, project: nil, group: group, target: target) }
let_it_be(:project_event) { create(:event, :created, project: project, target: target) }
 
describe '#resource_parent_name' do
context 'with group event' do
Loading
Loading
Loading
Loading
@@ -5,8 +5,8 @@ require 'spec_helper'
describe LabelPresenter do
include Gitlab::Routing.url_helpers
 
set(:group) { create(:group) }
set(:project) { create(:project, group: group) }
let_it_be(:group) { create(:group) }
let_it_be(:project) { create(:project, group: group) }
let(:label) { build_stubbed(:label, project: project).present(issuable_subject: project) }
let(:group_label) { build_stubbed(:group_label, group: group).present(issuable_subject: project) }
 
Loading
Loading
Loading
Loading
@@ -3,8 +3,8 @@
require 'spec_helper'
 
describe Ci::CreatePipelineService, '#execute' do
set(:project) { create(:project, :repository) }
set(:user) { create(:user) }
let_it_be(:project) { create(:project, :repository) }
let_it_be(:user) { create(:user) }
let(:ref_name) { 'master' }
 
let(:service) do
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment