Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
b7244e03
Commit
b7244e03
authored
Jun 04, 2018
by
Sean McGivern
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' into 'dm-gitlab-shell-7-1-4'
# Conflicts: # GITLAB_SHELL_VERSION
parents
80084428
0b4f9ff4
Changes
11
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
57 additions
and
36 deletions
+57
-36
app/assets/javascripts/ide/components/commit_sidebar/message_field.vue
...vascripts/ide/components/commit_sidebar/message_field.vue
+1
-1
app/models/clusters/platforms/kubernetes.rb
app/models/clusters/platforms/kubernetes.rb
+2
-2
app/models/clusters/providers/gcp.rb
app/models/clusters/providers/gcp.rb
+1
-1
changelogs/unreleased/bvl-bump-gitlab-shell-7-1-3.yml
changelogs/unreleased/bvl-bump-gitlab-shell-7-1-3.yml
+5
-0
changelogs/unreleased/sh-fix-secrets-not-working.yml
changelogs/unreleased/sh-fix-secrets-not-working.yml
+5
-0
changelogs/unreleased/sh-fix-source-project-nplus-one.yml
changelogs/unreleased/sh-fix-source-project-nplus-one.yml
+5
-0
config/settings.rb
config/settings.rb
+15
-8
db/post_migrate/20171124104327_migrate_kubernetes_service_to_new_clusters_architectures.rb
...grate_kubernetes_service_to_new_clusters_architectures.rb
+1
-1
lib/api/merge_requests.rb
lib/api/merge_requests.rb
+1
-1
spec/lib/gitlab/cycle_analytics/usage_data_spec.rb
spec/lib/gitlab/cycle_analytics/usage_data_spec.rb
+9
-10
spec/support/helpers/cycle_analytics_helpers.rb
spec/support/helpers/cycle_analytics_helpers.rb
+12
-12
No files found.
app/assets/javascripts/ide/components/commit_sidebar/message_field.vue
View file @
b7244e03
...
@@ -54,7 +54,7 @@ export default {
...
@@ -54,7 +54,7 @@ export default {
placement
:
'
top
'
,
placement
:
'
top
'
,
content
:
sprintf
(
content
:
sprintf
(
__
(
`
__
(
`
The character highligher helps you keep the subject line to %{titleLength} characters
The character highligh
t
er helps you keep the subject line to %{titleLength} characters
and wrap the body at %{bodyLength} so they are readable in git.
and wrap the body at %{bodyLength} so they are readable in git.
`
),
`
),
{
titleLength
:
MAX_TITLE_LENGTH
,
bodyLength
:
MAX_BODY_LENGTH
},
{
titleLength
:
MAX_TITLE_LENGTH
,
bodyLength
:
MAX_BODY_LENGTH
},
...
...
app/models/clusters/platforms/kubernetes.rb
View file @
b7244e03
...
@@ -11,12 +11,12 @@ module Clusters
...
@@ -11,12 +11,12 @@ module Clusters
attr_encrypted
:password
,
attr_encrypted
:password
,
mode: :per_attribute_iv
,
mode: :per_attribute_iv
,
key:
Settings
.
attr_encrypted_db_key_base
,
key:
Settings
.
attr_encrypted_db_key_base
_truncated
,
algorithm:
'aes-256-cbc'
algorithm:
'aes-256-cbc'
attr_encrypted
:token
,
attr_encrypted
:token
,
mode: :per_attribute_iv
,
mode: :per_attribute_iv
,
key:
Settings
.
attr_encrypted_db_key_base
,
key:
Settings
.
attr_encrypted_db_key_base
_truncated
,
algorithm:
'aes-256-cbc'
algorithm:
'aes-256-cbc'
before_validation
:enforce_namespace_to_lower_case
before_validation
:enforce_namespace_to_lower_case
...
...
app/models/clusters/providers/gcp.rb
View file @
b7244e03
...
@@ -11,7 +11,7 @@ module Clusters
...
@@ -11,7 +11,7 @@ module Clusters
attr_encrypted
:access_token
,
attr_encrypted
:access_token
,
mode: :per_attribute_iv
,
mode: :per_attribute_iv
,
key:
Settings
.
attr_encrypted_db_key_base
,
key:
Settings
.
attr_encrypted_db_key_base
_truncated
,
algorithm:
'aes-256-cbc'
algorithm:
'aes-256-cbc'
validates
:gcp_project_id
,
validates
:gcp_project_id
,
...
...
changelogs/unreleased/bvl-bump-gitlab-shell-7-1-3.yml
0 → 100644
View file @
b7244e03
---
title
:
Include username in output when testing SSH to GitLab
merge_request
:
19358
author
:
type
:
other
changelogs/unreleased/sh-fix-secrets-not-working.yml
0 → 100644
View file @
b7244e03
---
title
:
Fix attr_encryption key settings
merge_request
:
author
:
type
:
fixed
changelogs/unreleased/sh-fix-source-project-nplus-one.yml
0 → 100644
View file @
b7244e03
---
title
:
Fix N+1 with source_projects in merge requests API
merge_request
:
author
:
type
:
performance
config/settings.rb
View file @
b7244e03
...
@@ -85,17 +85,24 @@ class Settings < Settingslogic
...
@@ -85,17 +85,24 @@ class Settings < Settingslogic
File
.
expand_path
(
path
,
Rails
.
root
)
File
.
expand_path
(
path
,
Rails
.
root
)
end
end
# Returns a 256-bit key for attr_encrypted
def
attr_encrypted_db_key_base
# Ruby 2.4+ requires passing in the exact required length for OpenSSL keys
# Ruby 2.4+ requires passing in the exact required length for OpenSSL keys
# (https://github.com/ruby/ruby/commit/ce635262f53b760284d56bb1027baebaaec175d1).
# (https://github.com/ruby/ruby/commit/ce635262f53b760284d56bb1027baebaaec175d1).
# Previous versions quietly truncated the input.
# Previous versions quietly truncated the input.
#
#
# The default mode for the attr_encrypted gem is to use a 256-bit key.
# Use this when using :per_attribute_iv mode for attr_encrypted.
# We truncate the 128-byte string to 32 bytes.
# We have to truncate the string to 32 bytes for a 256-bit cipher.
def
attr_encrypted_db_key_base_truncated
Gitlab
::
Application
.
secrets
.
db_key_base
[
0
..
31
]
Gitlab
::
Application
.
secrets
.
db_key_base
[
0
..
31
]
end
end
# This should be used for :per_attribute_salt_and_iv mode. There is no
# need to truncate the key because the encryptor will use the salt to
# generate a hash of the password:
# https://github.com/attr-encrypted/encryptor/blob/c3a62c4a9e74686dd95e0548f9dc2a361fdc95d1/lib/encryptor.rb#L77
def
attr_encrypted_db_key_base
Gitlab
::
Application
.
secrets
.
db_key_base
end
private
private
def
base_url
(
config
)
def
base_url
(
config
)
...
...
db/post_migrate/20171124104327_migrate_kubernetes_service_to_new_clusters_architectures.rb
View file @
b7244e03
...
@@ -48,7 +48,7 @@ class MigrateKubernetesServiceToNewClustersArchitectures < ActiveRecord::Migrati
...
@@ -48,7 +48,7 @@ class MigrateKubernetesServiceToNewClustersArchitectures < ActiveRecord::Migrati
attr_encrypted
:token
,
attr_encrypted
:token
,
mode: :per_attribute_iv
,
mode: :per_attribute_iv
,
key:
Settings
.
attr_encrypted_db_key_base
,
key:
Settings
.
attr_encrypted_db_key_base
_truncated
,
algorithm:
'aes-256-cbc'
algorithm:
'aes-256-cbc'
end
end
...
...
lib/api/merge_requests.rb
View file @
b7244e03
...
@@ -38,7 +38,7 @@ module API
...
@@ -38,7 +38,7 @@ module API
merge_requests
=
MergeRequestsFinder
.
new
(
current_user
,
args
).
execute
merge_requests
=
MergeRequestsFinder
.
new
(
current_user
,
args
).
execute
.
reorder
(
args
[
:order_by
]
=>
args
[
:sort
])
.
reorder
(
args
[
:order_by
]
=>
args
[
:sort
])
merge_requests
=
paginate
(
merge_requests
)
merge_requests
=
paginate
(
merge_requests
)
.
preload
(
:target_project
)
.
preload
(
:
source_project
,
:
target_project
)
return
merge_requests
if
args
[
:view
]
==
'simple'
return
merge_requests
if
args
[
:view
]
==
'simple'
...
...
spec/lib/gitlab/cycle_analytics/usage_data_spec.rb
View file @
b7244e03
...
@@ -3,7 +3,12 @@ require 'spec_helper'
...
@@ -3,7 +3,12 @@ require 'spec_helper'
describe
Gitlab
::
CycleAnalytics
::
UsageData
do
describe
Gitlab
::
CycleAnalytics
::
UsageData
do
describe
'#to_json'
do
describe
'#to_json'
do
before
do
before
do
Timecop
.
freeze
do
# Since git commits only have second precision, round up to the
# nearest second to ensure we have accurate median and standard
# deviation calculations.
current_time
=
Time
.
at
(
Time
.
now
.
to_i
)
Timecop
.
freeze
(
current_time
)
do
user
=
create
(
:user
,
:admin
)
user
=
create
(
:user
,
:admin
)
projects
=
create_list
(
:project
,
2
,
:repository
)
projects
=
create_list
(
:project
,
2
,
:repository
)
...
@@ -37,13 +42,7 @@ describe Gitlab::CycleAnalytics::UsageData do
...
@@ -37,13 +42,7 @@ describe Gitlab::CycleAnalytics::UsageData do
expected_values
.
each_pair
do
|
op
,
value
|
expected_values
.
each_pair
do
|
op
,
value
|
expect
(
stage_values
).
to
have_key
(
op
)
expect
(
stage_values
).
to
have_key
(
op
)
if
op
==
:missing
expect
(
stage_values
[
op
]).
to
eq
(
value
)
expect
(
stage_values
[
op
]).
to
eq
(
value
)
else
# delta is used because of git timings that Timecop does not stub
expect
(
stage_values
[
op
].
to_i
).
to
be_within
(
5
).
of
(
value
.
to_i
)
end
end
end
end
end
end
end
...
@@ -58,8 +57,8 @@ describe Gitlab::CycleAnalytics::UsageData do
...
@@ -58,8 +57,8 @@ describe Gitlab::CycleAnalytics::UsageData do
missing:
0
missing:
0
},
},
plan:
{
plan:
{
average:
2
,
average:
1
,
sd:
2
,
sd:
0
,
missing:
0
missing:
0
},
},
code:
{
code:
{
...
...
spec/support/helpers/cycle_analytics_helpers.rb
View file @
b7244e03
...
@@ -4,12 +4,12 @@ module CycleAnalyticsHelpers
...
@@ -4,12 +4,12 @@ module CycleAnalyticsHelpers
create_commit
(
"Commit for #
#{
issue
.
iid
}
"
,
issue
.
project
,
user
,
branch_name
)
create_commit
(
"Commit for #
#{
issue
.
iid
}
"
,
issue
.
project
,
user
,
branch_name
)
end
end
def
create_commit
(
message
,
project
,
user
,
branch_name
,
count:
1
)
def
create_commit
(
message
,
project
,
user
,
branch_name
,
count:
1
,
commit_time:
nil
,
skip_push_handler:
false
)
repository
=
project
.
repository
repository
=
project
.
repository
oldrev
=
repository
.
commit
(
branch_name
)
.
sha
oldrev
=
repository
.
commit
(
branch_name
)
&
.
sha
||
Gitlab
::
Git
::
BLANK_SHA
if
Timecop
.
frozen?
&&
Gitlab
::
GitalyClient
.
feature_enabled?
(
:operation_user_commit_files
)
if
Timecop
.
frozen?
&&
Gitlab
::
GitalyClient
.
feature_enabled?
(
:operation_user_commit_files
)
mock_gitaly_multi_action_dates
(
repository
.
raw
)
mock_gitaly_multi_action_dates
(
repository
.
raw
,
commit_time
)
end
end
commit_shas
=
Array
.
new
(
count
)
do
|
index
|
commit_shas
=
Array
.
new
(
count
)
do
|
index
|
...
@@ -19,6 +19,8 @@ module CycleAnalyticsHelpers
...
@@ -19,6 +19,8 @@ module CycleAnalyticsHelpers
commit_sha
commit_sha
end
end
return
if
skip_push_handler
GitPushService
.
new
(
project
,
GitPushService
.
new
(
project
,
user
,
user
,
oldrev:
oldrev
,
oldrev:
oldrev
,
...
@@ -44,13 +46,11 @@ module CycleAnalyticsHelpers
...
@@ -44,13 +46,11 @@ module CycleAnalyticsHelpers
project
.
repository
.
add_branch
(
user
,
source_branch
,
'master'
)
project
.
repository
.
add_branch
(
user
,
source_branch
,
'master'
)
end
end
sha
=
project
.
repository
.
create_file
(
# Cycle analytic specs often test with frozen times, which causes metrics to be
user
,
# pinned to the current time. For example, in the plan stage, we assume that an issue
generate
(
:branch
),
# milestone has been created before any code has been written. We add a second
'content'
,
# to ensure that the plan time is positive.
message:
commit_message
,
create_commit
(
commit_message
,
project
,
user
,
source_branch
,
commit_time:
Time
.
now
+
1
.
second
,
skip_push_handler:
true
)
branch_name:
source_branch
)
project
.
repository
.
commit
(
sha
)
opts
=
{
opts
=
{
title:
'Awesome merge_request'
,
title:
'Awesome merge_request'
,
...
@@ -116,9 +116,9 @@ module CycleAnalyticsHelpers
...
@@ -116,9 +116,9 @@ module CycleAnalyticsHelpers
protected:
false
)
protected:
false
)
end
end
def
mock_gitaly_multi_action_dates
(
raw_repository
)
def
mock_gitaly_multi_action_dates
(
raw_repository
,
commit_time
)
allow
(
raw_repository
).
to
receive
(
:multi_action
).
and_wrap_original
do
|
m
,
*
args
|
allow
(
raw_repository
).
to
receive
(
:multi_action
).
and_wrap_original
do
|
m
,
*
args
|
new_date
=
Time
.
now
new_date
=
commit_time
||
Time
.
now
branch_update
=
m
.
call
(
*
args
)
branch_update
=
m
.
call
(
*
args
)
if
branch_update
.
newrev
if
branch_update
.
newrev
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment