18 lines
664 B
Ruby
18 lines
664 B
Ruby
# frozen_string_literal: true
|
|
|
|
class RolloutStatusEntity < Grape::Entity
|
|
include RequestAwareEntity
|
|
|
|
expose :status, as: :status
|
|
|
|
# To be removed in API v5
|
|
expose :has_legacy_app_label do |_rollout_status|
|
|
false
|
|
end
|
|
|
|
expose :instances, if: -> (rollout_status, _) { rollout_status.found? }
|
|
expose :completion, if: -> (rollout_status, _) { rollout_status.found? }
|
|
expose :complete?, as: :is_completed, if: -> (rollout_status, _) { rollout_status.found? }
|
|
expose :canary_ingress, using: RolloutStatuses::IngressEntity, expose_nil: false,
|
|
if: -> (rollout_status, _) { rollout_status.found? && rollout_status.canary_ingress_exists? }
|
|
end
|