{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/argo-workflows/refs/heads/main/json-schema/argo-workflows-io-k8s-api-core-v1-lifecycle-handler-schema.json",
  "title": "io.k8s.api.core.v1.LifecycleHandler",
  "description": "LifecycleHandler defines a specific action that should be taken in a lifecycle hook. One and only one of the fields, except TCPSocket must be specified.",
  "type": "object",
  "properties": {
    "exec": {
      "description": "Exec specifies a command to execute in the container.",
      "$ref": "#/definitions/io.k8s.api.core.v1.ExecAction"
    },
    "httpGet": {
      "description": "HTTPGet specifies an HTTP GET request to perform.",
      "$ref": "#/definitions/io.k8s.api.core.v1.HTTPGetAction"
    },
    "sleep": {
      "description": "Sleep represents a duration that the container should sleep.",
      "$ref": "#/definitions/io.k8s.api.core.v1.SleepAction"
    },
    "tcpSocket": {
      "description": "Deprecated. TCPSocket is NOT supported as a LifecycleHandler and kept for backward compatibility. There is no validation of this field and lifecycle hooks will fail at runtime when it is specified.",
      "$ref": "#/definitions/io.k8s.api.core.v1.TCPSocketAction"
    }
  }
}