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
Léo-Paul Géneau
gitlab-ce
Commits
b9b2897b
Commit
b9b2897b
authored
Apr 12, 2019
by
Douglas Barbosa Alexandre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Always return the deployment in the execute method
parent
9edb5d47
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
28 additions
and
11 deletions
+28
-11
app/services/update_deployment_service.rb
app/services/update_deployment_service.rb
+2
-0
spec/services/update_deployment_service_spec.rb
spec/services/update_deployment_service_spec.rb
+26
-11
No files found.
app/services/update_deployment_service.rb
View file @
b9b2897b
...
@@ -27,6 +27,8 @@ class UpdateDeploymentService
...
@@ -27,6 +27,8 @@ class UpdateDeploymentService
deployment
.
tap
(
&
:update_merge_request_metrics!
)
deployment
.
tap
(
&
:update_merge_request_metrics!
)
end
end
deployment
end
end
private
private
...
...
spec/services/update_deployment_service_spec.rb
View file @
b9b2897b
...
@@ -2,6 +2,7 @@ require 'spec_helper'
...
@@ -2,6 +2,7 @@ require 'spec_helper'
describe
UpdateDeploymentService
do
describe
UpdateDeploymentService
do
let
(
:user
)
{
create
(
:user
)
}
let
(
:user
)
{
create
(
:user
)
}
let
(
:project
)
{
create
(
:project
,
:repository
)
}
let
(
:options
)
{
{
name:
'production'
}
}
let
(
:options
)
{
{
name:
'production'
}
}
let
(
:job
)
do
let
(
:job
)
do
...
@@ -13,24 +14,22 @@ describe UpdateDeploymentService do
...
@@ -13,24 +14,22 @@ describe UpdateDeploymentService do
project:
project
)
project:
project
)
end
end
let
(
:project
)
{
create
(
:project
,
:repository
)
}
let
(
:environment
)
{
deployment
.
environment
}
let
(
:deployment
)
{
job
.
deployment
}
let
(
:deployment
)
{
job
.
deployment
}
let
(
:service
)
{
described_class
.
new
(
deployment
)
}
let
(
:environment
)
{
deployment
.
environment
}
subject
(
:service
)
{
described_class
.
new
(
deployment
)
}
before
do
before
do
job
.
success!
# Create/Succeed deployment
job
.
success!
# Create/Succeed deployment
end
end
describe
'#execute'
do
describe
'#execute'
do
subject
{
service
.
execute
}
let
(
:store
)
{
Gitlab
::
EtagCaching
::
Store
.
new
}
let
(
:store
)
{
Gitlab
::
EtagCaching
::
Store
.
new
}
it
'invalidates the environment etag cache'
do
it
'invalidates the environment etag cache'
do
old_value
=
store
.
get
(
environment
.
etag_cache_key
)
old_value
=
store
.
get
(
environment
.
etag_cache_key
)
s
ubject
s
ervice
.
execute
expect
(
store
.
get
(
environment
.
etag_cache_key
)).
not_to
eq
(
old_value
)
expect
(
store
.
get
(
environment
.
etag_cache_key
)).
not_to
eq
(
old_value
)
end
end
...
@@ -40,14 +39,30 @@ describe UpdateDeploymentService do
...
@@ -40,14 +39,30 @@ describe UpdateDeploymentService do
.
to
receive
(
:create_ref
)
.
to
receive
(
:create_ref
)
.
with
(
deployment
.
ref
,
deployment
.
send
(
:ref_path
))
.
with
(
deployment
.
ref
,
deployment
.
send
(
:ref_path
))
s
ubject
s
ervice
.
execute
end
end
it
'updates merge request metrics'
do
it
'updates merge request metrics'
do
expect_any_instance_of
(
Deployment
)
expect_any_instance_of
(
Deployment
)
.
to
receive
(
:update_merge_request_metrics!
)
.
to
receive
(
:update_merge_request_metrics!
)
subject
service
.
execute
end
it
'returns the deployment'
do
expect
(
subject
.
execute
).
to
eq
(
deployment
)
end
it
'returns the deployment when could not save the environment'
do
allow
(
environment
).
to
receive
(
:save
).
and_return
(
false
)
expect
(
subject
.
execute
).
to
eq
(
deployment
)
end
it
'returns the deployment when environment is stopped'
do
allow
(
environment
).
to
receive
(
:stopped?
).
and_return
(
true
)
expect
(
subject
.
execute
).
to
eq
(
deployment
)
end
end
context
'when start action is defined'
do
context
'when start action is defined'
do
...
@@ -59,7 +74,7 @@ describe UpdateDeploymentService do
...
@@ -59,7 +74,7 @@ describe UpdateDeploymentService do
end
end
it
'makes environment available'
do
it
'makes environment available'
do
s
ubject
s
ervice
.
execute
expect
(
environment
.
reload
).
to
be_available
expect
(
environment
.
reload
).
to
be_available
end
end
...
@@ -78,11 +93,11 @@ describe UpdateDeploymentService do
...
@@ -78,11 +93,11 @@ describe UpdateDeploymentService do
end
end
it
'does not create a new environment'
do
it
'does not create a new environment'
do
expect
{
subject
}.
not_to
change
{
Environment
.
count
}
expect
{
subject
.
execute
}.
not_to
change
{
Environment
.
count
}
end
end
it
'updates external url'
do
it
'updates external url'
do
subject
subject
.
execute
expect
(
subject
.
environment
.
name
).
to
eq
(
'review-apps/master'
)
expect
(
subject
.
environment
.
name
).
to
eq
(
'review-apps/master'
)
expect
(
subject
.
environment
.
external_url
).
to
eq
(
'http://master.review-apps.gitlab.com'
)
expect
(
subject
.
environment
.
external_url
).
to
eq
(
'http://master.review-apps.gitlab.com'
)
...
...
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