Class: KubernetesDeploy::Job
- Inherits:
-
KubernetesResource
- Object
- KubernetesResource
- KubernetesDeploy::Job
- Defined in:
- lib/kubernetes-deploy/kubernetes_resource/job.rb
Constant Summary collapse
- TIMEOUT =
10.minutes
Constants inherited from KubernetesResource
KubernetesResource::DEBUG_RESOURCE_NOT_FOUND_MESSAGE, KubernetesResource::DISABLED_EVENT_INFO_MESSAGE, KubernetesResource::DISABLED_LOG_INFO_MESSAGE, KubernetesResource::DISABLE_FETCHING_EVENT_INFO, KubernetesResource::DISABLE_FETCHING_LOG_INFO, KubernetesResource::GLOBAL, KubernetesResource::LAST_APPLIED_ANNOTATION, KubernetesResource::LOG_LINE_COUNT, KubernetesResource::SENSITIVE_TEMPLATE_CONTENT, KubernetesResource::SERVER_DRY_RUNNABLE, KubernetesResource::SERVER_DRY_RUN_DISABLED_ERROR, KubernetesResource::STANDARD_TIMEOUT_MESSAGE, KubernetesResource::TIMEOUT_OVERRIDE_ANNOTATION, KubernetesResource::TIMEOUT_OVERRIDE_ANNOTATION_DEPRECATED, KubernetesResource::TIMEOUT_OVERRIDE_ANNOTATION_SUFFIX, KubernetesResource::UNUSUAL_FAILURE_MESSAGE
Instance Attribute Summary
Attributes inherited from KubernetesResource
#context, #deploy_started_at, #global, #name, #namespace, #type
Instance Method Summary collapse
Methods inherited from KubernetesResource
#<=>, #after_sync, build, class_for_kind, #current_generation, #debug_message, #deploy_method, #deploy_started?, #deploy_timed_out?, #disappeared?, #exists?, #fetch_events, #file_path, #global?, #has_warnings?, #id, #initialize, kind, #kubectl_resource_type, #observed_generation, #pretty_status, #pretty_timeout_type, #report_status_to_statsd, #sensitive_template_content?, #server_dry_run_validated?, #server_dry_runnable_resource?, #sync, #sync_debug_info, #terminating?, timeout, #timeout, #timeout_message, #timeout_override, #to_kubeclient_resource, #validate_definition, #validation_error_msg, #validation_failed?, #validation_warning_msg
Constructor Details
This class inherits a constructor from KubernetesDeploy::KubernetesResource
Instance Method Details
#deploy_failed? ⇒ Boolean
13 14 15 16 17 18 |
# File 'lib/kubernetes-deploy/kubernetes_resource/job.rb', line 13 def deploy_failed? return false unless deploy_started? return true if failed_status_condition return false unless @instance_data.dig("spec", "backoffLimit").present? (@instance_data.dig("status", "failed") || 0) >= @instance_data.dig("spec", "backoffLimit") end |
#deploy_succeeded? ⇒ Boolean
6 7 8 9 10 11 |
# File 'lib/kubernetes-deploy/kubernetes_resource/job.rb', line 6 def deploy_succeeded? # Don't block deploys for long running jobs, # Instead report success when there is at least 1 active return false unless deploy_started? done? || running? end |
#failure_message ⇒ Object
34 35 36 37 38 |
# File 'lib/kubernetes-deploy/kubernetes_resource/job.rb', line 34 def if (condition = failed_status_condition.presence) "#{condition['reason']} (#{condition['message']})" end end |
#status ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/kubernetes-deploy/kubernetes_resource/job.rb', line 20 def status if !exists? super elsif done? "Succeeded" elsif running? "Started" elsif deploy_failed? "Failed" else "Unknown" end end |