summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShinya Maeda <shinya@gitlab.com>2018-11-12 19:48:33 +0900
committerShinya Maeda <shinya@gitlab.com>2018-11-12 19:48:33 +0900
commit75e8f561fc046ae8ee4a3a13b71f5983c8c0c175 (patch)
treeee0a5c1b3a481052887fa77ec126e9e618c38bf9
parent7bcd65cd9d1e357091f995caf0e7967e4151db83 (diff)
downloadgitlab-ce-drop-virtual-status-of-deployments.tar.gz
Drop virtual status of deploymentsdrop-virtual-status-of-deployments
-rw-r--r--app/assets/javascripts/jobs/components/environments_block.vue26
-rw-r--r--app/models/ci/build.rb21
-rw-r--r--app/serializers/build_details_entity.rb11
3 files changed, 19 insertions, 39 deletions
diff --git a/app/assets/javascripts/jobs/components/environments_block.vue b/app/assets/javascripts/jobs/components/environments_block.vue
index 6d1eb713886..72a3ee02b27 100644
--- a/app/assets/javascripts/jobs/components/environments_block.vue
+++ b/app/assets/javascripts/jobs/components/environments_block.vue
@@ -21,15 +21,14 @@ export default {
environment() {
let environmentText;
switch (this.deploymentStatus.status) {
- case 'last':
- environmentText = sprintf(
- __('This job is the most recent deployment to %{link}.'),
- { link: this.environmentLink },
- false,
- );
- break;
- case 'out_of_date':
- if (this.hasLastDeployment) {
+ case 'success':
+ if (this.deploymentStatus.latest) {
+ environmentText = sprintf(
+ __('This job is the most recent deployment to %{link}.'),
+ { link: this.environmentLink },
+ false,
+ );
+ } else {
environmentText = sprintf(
__(
'This job is an out-of-date deployment to %{environmentLink}. View the most recent deployment %{deploymentLink}.',
@@ -40,14 +39,7 @@ export default {
},
false,
);
- } else {
- environmentText = sprintf(
- __('This job is an out-of-date deployment to %{environmentLink}.'),
- { environmentLink: this.environmentLink },
- false,
- );
}
-
break;
case 'failed':
environmentText = sprintf(
@@ -56,7 +48,7 @@ export default {
false,
);
break;
- case 'creating':
+ case 'created':
if (this.hasLastDeployment) {
environmentText = sprintf(
__(
diff --git a/app/models/ci/build.rb b/app/models/ci/build.rb
index 889f8ce27a6..7262c7dbf8a 100644
--- a/app/models/ci/build.rb
+++ b/app/models/ci/build.rb
@@ -745,19 +745,6 @@ module Ci
end
end
- # Virtual deployment status depending on the environment status.
- def deployment_status
- return nil unless starts_environment?
-
- if success?
- return successful_deployment_status
- elsif failed?
- return :failed
- end
-
- :creating
- end
-
private
def erase_old_artifacts!
@@ -767,14 +754,6 @@ module Ci
save
end
- def successful_deployment_status
- if deployment&.last?
- :last
- else
- :out_of_date
- end
- end
-
def each_report(report_types)
job_artifacts_for_types(report_types).each do |report_artifact|
report_artifact.each_blob do |blob|
diff --git a/app/serializers/build_details_entity.rb b/app/serializers/build_details_entity.rb
index 9ddce0d2c80..3ef881b81d0 100644
--- a/app/serializers/build_details_entity.rb
+++ b/app/serializers/build_details_entity.rb
@@ -10,8 +10,9 @@ class BuildDetailsEntity < JobEntity
expose :runner, using: RunnerEntity
expose :pipeline, using: PipelineEntity
- expose :deployment_status, if: -> (*) { build.starts_environment? } do
+ expose :deployment_status, if: -> (*) { build.has_deployment? } do
expose :deployment_status, as: :status
+ expose :latest_deployment?, as: :latest
expose :persisted_environment, as: :environment, with: EnvironmentEntity
end
@@ -110,4 +111,12 @@ class BuildDetailsEntity < JobEntity
def can_admin_build?
can?(request.current_user, :admin_build, project)
end
+
+ def deployment_status
+ build.deployment.status
+ end
+
+ def latest_deployment?
+ build.deployment.last?
+ end
end