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
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
gitlab-ce
Commits
bd54bf7a
Commit
bd54bf7a
authored
Nov 09, 2015
by
Dmitriy Zaporozhets
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce
parents
a353a876
03b12ee5
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
86 additions
and
15 deletions
+86
-15
CHANGELOG
CHANGELOG
+2
-0
app/controllers/admin/application_settings_controller.rb
app/controllers/admin/application_settings_controller.rb
+1
-0
app/models/application_setting.rb
app/models/application_setting.rb
+2
-1
app/models/project.rb
app/models/project.rb
+4
-1
app/services/merge_requests/refresh_service.rb
app/services/merge_requests/refresh_service.rb
+4
-4
app/views/admin/application_settings/_form.html.haml
app/views/admin/application_settings/_form.html.haml
+9
-0
config/initializers/1_settings.rb
config/initializers/1_settings.rb
+5
-4
db/migrate/20151103133339_add_shared_runners_setting.rb
db/migrate/20151103133339_add_shared_runners_setting.rb
+5
-0
db/schema.rb
db/schema.rb
+2
-1
lib/gitlab/current_settings.rb
lib/gitlab/current_settings.rb
+2
-1
spec/factories/ci/projects.rb
spec/factories/ci/projects.rb
+2
-0
spec/models/application_setting_spec.rb
spec/models/application_setting_spec.rb
+25
-3
spec/services/ci/register_build_service_spec.rb
spec/services/ci/register_build_service_spec.rb
+4
-0
spec/services/merge_requests/refresh_service_spec.rb
spec/services/merge_requests/refresh_service_spec.rb
+19
-0
No files found.
CHANGELOG
View file @
bd54bf7a
Please view this file on the master branch, on stable branches it's out of date.
v 8.2.0 (unreleased)
- Fix bug where manually merged branches in a MR would end up with an empty diff (Stan Hu)
- Force update refs/merge-requests/X/head upon a push to the source branch of a merge request (Stan Hu)
- Improved performance of finding users by one of their Email addresses
- Improved performance of replacing references in comments
...
...
@@ -14,6 +15,7 @@ v 8.2.0 (unreleased)
- Use git follow flag for commits page when retrieve history for file or directory
- Show merge request CI status on merge requests index page
- Extend yml syntax for only and except to support specifying repository path
- Enable shared runners to all new projects
- Fix: 500 error returned if destroy request without HTTP referer (Kazuki Shimizu)
- Remove deprecated CI events from project settings page
- Use issue editor as cross reference comment author when issue is edited with a new mention.
...
...
app/controllers/admin/application_settings_controller.rb
View file @
bd54bf7a
...
...
@@ -57,6 +57,7 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
:version_check_enabled
,
:admin_notification_email
,
:user_oauth_applications
,
:shared_runners_enabled
,
restricted_visibility_levels:
[],
import_sources:
[]
)
...
...
app/models/application_setting.rb
View file @
bd54bf7a
...
...
@@ -87,7 +87,8 @@ class ApplicationSetting < ActiveRecord::Base
default_project_visibility:
Settings
.
gitlab
.
default_projects_features
[
'visibility_level'
],
default_snippet_visibility:
Settings
.
gitlab
.
default_projects_features
[
'visibility_level'
],
restricted_signup_domains:
Settings
.
gitlab
[
'restricted_signup_domains'
],
import_sources:
[
'github'
,
'bitbucket'
,
'gitlab'
,
'gitorious'
,
'google_code'
,
'fogbugz'
,
'git'
]
import_sources:
[
'github'
,
'bitbucket'
,
'gitlab'
,
'gitorious'
,
'google_code'
,
'fogbugz'
,
'git'
],
shared_runners_enabled:
Settings
.
gitlab_ci
[
'shared_runners_enabled'
],
)
end
...
...
app/models/project.rb
View file @
bd54bf7a
...
...
@@ -37,6 +37,7 @@ class Project < ActiveRecord::Base
include
Gitlab
::
ConfigHelper
include
Gitlab
::
ShellAdapter
include
Gitlab
::
VisibilityLevel
include
Gitlab
::
CurrentSettings
include
Referable
include
Sortable
include
AfterCommitQueue
...
...
@@ -775,7 +776,9 @@ class Project < ActiveRecord::Base
end
def
ensure_gitlab_ci_project
gitlab_ci_project
||
create_gitlab_ci_project
gitlab_ci_project
||
create_gitlab_ci_project
(
shared_runners_enabled:
current_application_settings
.
shared_runners_enabled
)
end
def
enable_ci
...
...
app/services/merge_requests/refresh_service.rb
View file @
bd54bf7a
...
...
@@ -7,17 +7,17 @@ module MergeRequests
@branch_name
=
Gitlab
::
Git
.
ref_name
(
ref
)
find_new_commits
# Be sure to close outstanding MRs before reloading them to avoid generating an
# empty diff during a manual merge
close_merge_requests
reload_merge_requests
# Leave a system note if a branch was deleted/added
if
branch_added?
||
branch_removed?
comment_mr_branch_presence_changed
comment_mr_with_commits
else
comment_mr_with_commits
close_merge_requests
end
comment_mr_with_commits
execute_mr_web_hooks
true
...
...
app/views/admin/application_settings/_form.html.haml
View file @
bd54bf7a
...
...
@@ -130,5 +130,14 @@
=
f
.
text_area
:help_page_text
,
class:
'form-control'
,
rows:
4
.help-block
Markdown enabled
%fieldset
%legend
Continuous Integration
.form-group
.col-sm-offset-2.col-sm-10
.checkbox
=
f
.
label
:shared_runners_enabled
do
=
f
.
check_box
:shared_runners_enabled
Enable shared runners for a new projects
.form-actions
=
f
.
submit
'Save'
,
class:
'btn btn-primary'
config/initializers/1_settings.rb
View file @
bd54bf7a
...
...
@@ -181,10 +181,11 @@ Settings.gitlab['import_sources'] ||= ['github','bitbucket','gitlab','gitorious'
# CI
#
Settings
[
'gitlab_ci'
]
||=
Settingslogic
.
new
({})
Settings
.
gitlab_ci
[
'all_broken_builds'
]
=
true
if
Settings
.
gitlab_ci
[
'all_broken_builds'
].
nil?
Settings
.
gitlab_ci
[
'add_pusher'
]
=
false
if
Settings
.
gitlab_ci
[
'add_pusher'
].
nil?
Settings
.
gitlab_ci
[
'url'
]
||=
Settings
.
send
(
:build_gitlab_ci_url
)
Settings
.
gitlab_ci
[
'builds_path'
]
=
File
.
expand_path
(
Settings
.
gitlab_ci
[
'builds_path'
]
||
"builds/"
,
Rails
.
root
)
Settings
.
gitlab_ci
[
'shared_runners_enabled'
]
=
true
if
Settings
.
gitlab_ci
[
'shared_runners_enabled'
].
nil?
Settings
.
gitlab_ci
[
'all_broken_builds'
]
=
true
if
Settings
.
gitlab_ci
[
'all_broken_builds'
].
nil?
Settings
.
gitlab_ci
[
'add_pusher'
]
=
false
if
Settings
.
gitlab_ci
[
'add_pusher'
].
nil?
Settings
.
gitlab_ci
[
'url'
]
||=
Settings
.
send
(
:build_gitlab_ci_url
)
Settings
.
gitlab_ci
[
'builds_path'
]
=
File
.
expand_path
(
Settings
.
gitlab_ci
[
'builds_path'
]
||
"builds/"
,
Rails
.
root
)
#
# Reply by email
...
...
db/migrate/20151103133339_add_shared_runners_setting.rb
0 → 100644
View file @
bd54bf7a
class
AddSharedRunnersSetting
<
ActiveRecord
::
Migration
def
up
add_column
:application_settings
,
:shared_runners_enabled
,
:boolean
,
default:
true
,
null:
false
end
end
db/schema.rb
View file @
bd54bf7a
...
...
@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord
::
Schema
.
define
(
version:
20151103
001141
)
do
ActiveRecord
::
Schema
.
define
(
version:
20151103
133339
)
do
# These are extensions that must be enabled in order to support this database
enable_extension
"plpgsql"
...
...
@@ -47,6 +47,7 @@ ActiveRecord::Schema.define(version: 20151103001141) do
t
.
text
"import_sources"
t
.
text
"help_page_text"
t
.
string
"admin_notification_email"
t
.
boolean
"shared_runners_enabled"
,
default:
true
,
null:
false
end
create_table
"audit_events"
,
force:
true
do
|
t
|
...
...
lib/gitlab/current_settings.rb
View file @
bd54bf7a
...
...
@@ -23,7 +23,8 @@ module Gitlab
restricted_visibility_levels:
Settings
.
gitlab
[
'restricted_visibility_levels'
],
max_attachment_size:
Settings
.
gitlab
[
'max_attachment_size'
],
session_expire_delay:
Settings
.
gitlab
[
'session_expire_delay'
],
import_sources:
Settings
.
gitlab
[
'import_sources'
]
import_sources:
Settings
.
gitlab
[
'import_sources'
],
shared_runners_enabled:
Settings
.
gitlab_ci
[
'shared_runners_enabled'
],
)
end
...
...
spec/factories/ci/projects.rb
View file @
bd54bf7a
...
...
@@ -33,6 +33,8 @@ FactoryGirl.define do
gl_project
factory: :empty_project
shared_runners_enabled
false
factory
:ci_project
do
token
'iPWx6WM4lhHNedGfBpPJNP'
end
...
...
spec/models/application_setting_spec.rb
View file @
bd54bf7a
...
...
@@ -28,11 +28,11 @@
require
'spec_helper'
describe
ApplicationSetting
,
models:
true
do
it
{
expect
(
ApplicationSetting
.
create_from_defaults
).
to
be_valid
}
let
(
:setting
)
{
ApplicationSetting
.
create_from_defaults
}
context
'restricted signup domains'
do
let
(
:setting
)
{
ApplicationSetting
.
create_from_defaults
}
it
{
expect
(
setting
).
to
be_valid
}
context
'restricted signup domains'
do
it
'set single domain'
do
setting
.
restricted_signup_domains_raw
=
'example.com'
expect
(
setting
.
restricted_signup_domains
).
to
eq
([
'example.com'
])
...
...
@@ -53,4 +53,26 @@ describe ApplicationSetting, models: true do
expect
(
setting
.
restricted_signup_domains
).
to
eq
([
'example.com'
,
'*.example.com'
])
end
end
context
'shared runners'
do
let
(
:gl_project
)
{
create
(
:empty_project
)
}
before
do
allow_any_instance_of
(
Project
).
to
receive
(
:current_application_settings
).
and_return
(
setting
)
end
subject
{
gl_project
.
ensure_gitlab_ci_project
.
shared_runners_enabled
}
context
'enabled'
do
before
{
setting
.
update_attributes
(
shared_runners_enabled:
true
)
}
it
{
is_expected
.
to
be_truthy
}
end
context
'disabled'
do
before
{
setting
.
update_attributes
(
shared_runners_enabled:
false
)
}
it
{
is_expected
.
to
be_falsey
}
end
end
end
spec/services/ci/register_build_service_spec.rb
View file @
bd54bf7a
...
...
@@ -70,6 +70,10 @@ module Ci
end
context
'disallow shared runners'
do
before
do
gl_project
.
gitlab_ci_project
.
update
(
shared_runners_enabled:
false
)
end
context
'shared runner'
do
let
(
:build
)
{
service
.
execute
(
shared_runner
)
}
...
...
spec/services/merge_requests/refresh_service_spec.rb
View file @
bd54bf7a
...
...
@@ -62,6 +62,25 @@ describe MergeRequests::RefreshService do
it
{
expect
(
@fork_merge_request
.
notes
.
last
.
note
).
to
include
(
'changed to merged'
)
}
end
context
'manual merge of source branch'
do
before
do
# Merge master -> feature branch
author
=
{
email:
'test@gitlab.com'
,
time:
Time
.
now
,
name:
"Me"
}
commit_options
=
{
message:
'Test message'
,
committer:
author
,
author:
author
}
master_commit
=
@project
.
repository
.
commit
(
'master'
)
@project
.
repository
.
merge
(
@user
,
master_commit
.
id
,
'feature'
,
commit_options
)
commit
=
@project
.
repository
.
commit
(
'feature'
)
service
.
new
(
@project
,
@user
).
execute
(
@oldrev
,
commit
.
id
,
'refs/heads/feature'
)
reload_mrs
end
it
{
expect
(
@merge_request
.
notes
.
last
.
note
).
to
include
(
'changed to merged'
)
}
it
{
expect
(
@merge_request
).
to
be_merged
}
it
{
expect
(
@merge_request
.
diffs
.
length
).
to
be
>
0
}
it
{
expect
(
@fork_merge_request
).
to
be_merged
}
it
{
expect
(
@fork_merge_request
.
notes
.
last
.
note
).
to
include
(
'changed to merged'
)
}
end
context
'push to fork repo source branch'
do
let
(
:refresh_service
)
{
service
.
new
(
@fork_project
,
@user
)
}
before
do
...
...
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