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
1
Merge Requests
1
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
nexedi
gitlab-ce
Commits
4f841b12
Commit
4f841b12
authored
Dec 20, 2016
by
Kamil Trzcinski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Introduce actual_shared_runners_minutes_limit
parent
ceb39b24
Changes
8
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
38 additions
and
24 deletions
+38
-24
app/helpers/groups_helper.rb
app/helpers/groups_helper.rb
+3
-3
app/models/namespace.rb
app/models/namespace.rb
+4
-4
app/models/project.rb
app/models/project.rb
+1
-1
app/views/groups/_shared_runners_minutes_setting.html.haml
app/views/groups/_shared_runners_minutes_setting.html.haml
+3
-1
app/views/groups/pipeline_quota/index.html.haml
app/views/groups/pipeline_quota/index.html.haml
+1
-1
app/views/projects/builds/show.html.haml
app/views/projects/builds/show.html.haml
+1
-1
spec/models/namespace_spec.rb
spec/models/namespace_spec.rb
+24
-12
spec/models/project_spec.rb
spec/models/project_spec.rb
+1
-1
No files found.
app/helpers/groups_helper.rb
View file @
4f841b12
...
...
@@ -62,7 +62,7 @@ module GroupsHelper
used
=
group
.
shared_runners_minutes
.
to_i
if
group
.
shared_runners_minutes_limit_enabled?
limit
=
group
.
shared_runners_minutes_limit
limit
=
group
.
actual_
shared_runners_minutes_limit
status
=
group
.
shared_runners_minutes_used?
?
'over_quota'
:
'under_quota'
else
limit
=
'Unlimited'
...
...
@@ -77,11 +77,11 @@ module GroupsHelper
def
group_shared_runner_limits_percent_used
(
group
)
return
0
unless
group
.
shared_runners_minutes_limit_enabled?
100
*
group
.
shared_runners_minutes
/
group
.
shared_runners_minutes_limit
100
*
group
.
shared_runners_minutes
/
group
.
actual_
shared_runners_minutes_limit
end
def
group_shared_runner_limits_progress_bar
(
group
)
percent
=
[
group
.
shared_runners_minutes_percent_used
,
100
].
min
percent
=
[
group
_shared_runner_limits_percent_used
(
group
)
,
100
].
min
status
=
if
percent
==
100
...
...
app/models/namespace.rb
View file @
4f841b12
...
...
@@ -176,19 +176,19 @@ class Namespace < ActiveRecord::Base
projects
.
where
(
shared_runners_enabled:
true
).
any?
end
def
shared_runners_minutes_limit
read_attribute
(
:shared_runners_minutes_limit
)
||
def
actual_
shared_runners_minutes_limit
shared_runners_minutes_limit
||
current_application_settings
.
shared_runners_minutes
end
def
shared_runners_minutes_limit_enabled?
shared_runners_enabled?
&&
shared_runners_minutes_limit
.
nonzero?
actual_
shared_runners_minutes_limit
.
nonzero?
end
def
shared_runners_minutes_used?
shared_runners_minutes_limit_enabled?
&&
shared_runners_minutes
>=
shared_runners_minutes_limit
shared_runners_minutes
.
to_i
>=
actual_
shared_runners_minutes_limit
end
def
full_name
...
...
app/models/project.rb
View file @
4f841b12
...
...
@@ -31,7 +31,7 @@ class Project < ActiveRecord::Base
delegate
:shared_runners_minutes
,
:shared_runners_minutes_last_reset
,
to: :project_metrics
,
allow_nil:
true
delegate
:shared_runners_minutes_limit_enabled?
,
:shared_runners_minutes_limit
,
delegate
:shared_runners_minutes_limit_enabled?
,
:
actual_
shared_runners_minutes_limit
,
:shared_runners_minutes_used?
,
to: :namespace
default_value_for
:archived
,
false
...
...
app/views/groups/_shared_runners_minutes_setting.html.haml
View file @
4f841b12
...
...
@@ -5,5 +5,7 @@
.col-sm-10
=
f
.
number_field
:shared_runners_minutes_limit
,
class:
'form-control'
,
min:
0
%span
.help-block
#shared_runners_minutes_limit_help_block
Set the maximum number of minutes that a group can use shared runners in a one month period
Set the maximum number of minutes that a group can use shared runners in a one month period.
Set 0 for unlimited.
Set empty to inherit global setting of
#{
current_application_settings
.
shared_runners_minutes
}
.
=
link_to
icon
(
'question-circle'
),
help_page_path
(
"user/admin_area/settings/continuous_integration"
,
anchor:
"shared-runners-minutes"
)
app/views/groups/pipeline_quota/index.html.haml
View file @
4f841b12
...
...
@@ -17,7 +17,7 @@
minutes
.col-sm-6.right
-
if
@group
.
shared_runners_minutes_limit_enabled?
=
"
#{
@group
.
shared_runners_minutes_percent_used
}
% used"
=
"
#{
group_shared_runner_limits_percent_used
(
@group
)
}
% used"
-
else
Unlimited
=
group_shared_runner_limits_progress_bar
(
@group
)
...
...
app/views/projects/builds/show.html.haml
View file @
4f841b12
...
...
@@ -28,7 +28,7 @@
-
if
@build
.
project
.
namespace
.
shared_runners_minutes_used?
-
quota_used
=
@build
.
project
.
namespace
.
shared_runners_minutes
.
to_i
-
quota_limit
=
@build
.
project
.
namespace
.
shared_runners_minutes_limit
-
quota_limit
=
@build
.
project
.
namespace
.
actual_
shared_runners_minutes_limit
.bs-callout.bs-callout-warning
%p
You have used all your shared runner minutes
...
...
spec/models/namespace_spec.rb
View file @
4f841b12
...
...
@@ -145,7 +145,6 @@ describe Namespace, models: true do
it
{
expect
(
nested_group
.
full_path
).
to
eq
(
"
#{
group
.
path
}
/
#{
nested_group
.
path
}
"
)
}
end
<<<<<<<
HEAD
describe
'#shared_runners_enabled?'
do
subject
{
namespace
.
shared_runners_enabled?
}
...
...
@@ -172,8 +171,8 @@ describe Namespace, models: true do
end
end
describe
'#shared_runners_minutes_limit'
do
subject
{
namespace
.
shared_runners_minutes_limit
}
describe
'#
actual_
shared_runners_minutes_limit'
do
subject
{
namespace
.
actual_
shared_runners_minutes_limit
}
context
'when no limit defined'
do
it
{
is_expected
.
to
be_nil
}
...
...
@@ -203,6 +202,13 @@ describe Namespace, models: true do
describe
'#shared_runners_minutes_limit_enabled?'
do
subject
{
namespace
.
shared_runners_minutes_limit_enabled?
}
context
'with project'
do
let!
(
:project
)
do
create
(
:empty_project
,
namespace:
namespace
,
shared_runners_enabled:
true
)
end
context
'when no limit defined'
do
it
{
is_expected
.
to
be_falsey
}
end
...
...
@@ -216,6 +222,11 @@ describe Namespace, models: true do
end
end
context
'without project'
do
it
{
is_expected
.
to
be_falsey
}
end
end
describe
'#shared_runners_minutes_used?'
do
subject
{
namespace
.
shared_runners_minutes_used?
}
...
...
@@ -251,7 +262,9 @@ describe Namespace, models: true do
context
'without project'
do
it
{
is_expected
.
to
be_falsey
}
=======
end
end
describe
'#full_name'
do
let
(
:group
)
{
create
(
:group
)
}
let
(
:nested_group
)
{
create
(
:group
,
parent:
group
)
}
...
...
@@ -271,7 +284,6 @@ describe Namespace, models: true do
expect
(
deep_nested_group
.
parents
).
to
eq
([
group
,
nested_group
])
expect
(
nested_group
.
parents
).
to
eq
([
group
])
expect
(
group
.
parents
).
to
eq
([])
>>>>>>>
origin
-
ee
/
master
end
end
end
spec/models/project_spec.rb
View file @
4f841b12
...
...
@@ -77,7 +77,7 @@ describe Project, models: true do
it
{
is_expected
.
to
delegate_method
(
:shared_runner_minutes
).
to
(
:project_metrics
)
}
it
{
is_expected
.
to
delegate_method
(
:shared_runner_last_reset
).
to
(
:project_metrics
)
}
it
{
is_expected
.
to
delegate_method
(
:shared_runners_minutes_limit
).
to
(
:namespace
)
}
it
{
is_expected
.
to
delegate_method
(
:
actual_
shared_runners_minutes_limit
).
to
(
:namespace
)
}
it
{
is_expected
.
to
delegate_method
(
:shared_runners_minutes_limit_enabled?
).
to
(
:namespace
)
}
it
{
is_expected
.
to
delegate_method
(
:shared_runners_minutes_used?
).
to
(
:namespace
)
}
...
...
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