Skip to main content
Astra Automation
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Recuperar un gancho de ejecución

GET /accounts/{account_id}/core/v1/executionHooks/{executionHook_id}

Devuelve el recurso de la API de Execution Hook almacenado en el cuerpo de respuesta JSON. También rellena matchingContainers y matchingImages en función del matchingCriteria actual y de la app definida.

Parámetros

Nombre Tipo En Obligatorio Descripción

account_id

cadena

ruta

Verdadero

ID del recurso de cuenta que lo contiene

  • ejemplo: {{.Account}}

executionHook_id

cadena

ruta

Verdadero

ID de la colección executionHook que se va a listar

Respuesta

Status: 200, Returns the stored Execution Hook API resource in the JSON response body. Also populates matchingContainers and matchingImages based on the current matchingCriteria and the defined app.
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

Tipo de medio del recurso. Los valores definidos son:

  • "application/astra-executionHook"

versión

cadena

Verdadero

Versión del recurso. Los valores definidos son:

  • "1,0"

  • "1,1"

  • "1,2"

  • "1,3"

id

cadena

Verdadero

Identificador único global del recurso. Los valores definidos son:

  • Cumple con el esquema UUIDv4

nombre

cadena

Verdadero

Cadena JSON que contiene un nombre especificado por el usuario para el recurso. Los valores definidos son:

  • Longitud mínima: 1

  • Longitud máxima: 63 El nombre debe ser único en todos los recursos de ejecución hook.

hookType

cadena

Verdadero

Cadena JSON que define el tipo de gancho. Los valores definidos son:

  • "netapp" - NetApp proporcionó el gancho de ejecución.

  • "custom" - Vinculado a un ID de aplicación específico. Los recursos de gancho de ejecución con hookType "netapp" son de solo lectura.

matchingCriteria

array["matchingCriteria"]

Verdadero

Matriz JSON de objetos JSON que describen los criterios de coincidencia para el gancho de ejecución. Cuando se especifican múltiples matchingCriteria se aplica un AND lógico a los criterios. Los valores definidos son:

  • Elementos mínimos: 0

  • Máximo de elementos: 10

matchingContainers

array["matchingContainers"]

Falso

Matriz JSON de objetos JSON de cada contenedor que coincida con los criterios de coincidencia configurados dentro de la app definida.

matchingImages

array[string]

Falso

Matriz JSON de cadenas JSON para las imágenes de contenedor coincidentes. Los valores definidos son:

  • Elementos mínimos: 0

  • Máximo de elementos: 4095

  • Longitud mínima: 1

  • Longitud máxima: 255

acción

cadena

Verdadero

Cadena JSON que indica qué acción ejecutará el gancho de ejecución si se cumplen los criterios de coincidencia. Los valores definidos son:

  • "instantánea"

  • "copia de seguridad"

  • "restaurar"

  • "failover"

escenario

cadena

Verdadero

Cadena JSON que indica la etapa durante la acción en la que se ejecutará el gancho. Los valores definidos son:

  • "pre" - El gancho de ejecución se ejecutará antes de la acción especificada.

  • "post" - El gancho de ejecución se ejecutará después de la acción especificada. Los valores para la acción "snapshot" son "pre" y "post". Los valores para la acción "backup" son "pre" y "post". El valor para la acción "restore" es "post". El valor para la acción "failover" es "post".

hookSourceID

cadena

Verdadero

Cadena JSON que contiene el ID de la fuente del hook que se ejecuta a través de este hook de ejecución. Los valores definidos son:

  • Cumple con el esquema del identificador Astra

argumentos

array[string]

Falso

Matriz JSON de cadenas JSON para los argumentos de la fuente. Los valores definidos son:

  • Elementos mínimos: 0

  • Máximo de elementos: 16

  • Longitud mínima: 0

  • Longitud máxima: 127

appID

cadena

Falso

Cadena JSON que contiene el ID asociado de la aplicación a la que está vinculado este hook. En esencia, otros criterios de coincidencia, si se establecen. Los valores definidos son:

  • Cumple con el esquema del identificador Astra

habilitado

cadena

Verdadero

Cadena JSON que indica si el gancho de ejecución está habilitado. Los valores definidos son:

  • "true" - El gancho de ejecución está habilitado y se ejecutará según lo especificado.

  • "false" - El gancho de ejecución está desactivado y nunca se ejecutará. El valor por defecto es "true".

descripción

cadena

Falso

Cadena JSON que contiene una descripción especificada por el usuario para la fuente del gancho. Los valores definidos son:

  • Longitud mínima: 0

  • Longitud máxima: 511

metadatos

"type_astra_metadatos_update"

Verdadero

Metadatos especificados por el cliente y el servicio asociados con el recurso. Los valores definidos son:

  • Conforme al esquema de metadatos de Astra. Si no se especifica al crear, se creará un objeto de metadatos sin etiquetas. Si no se especifica al actualizar, las etiquetas del objeto de metadatos, creationTimestamp y createdBy, se conservarán sin modificaciones.

Ejemplo de respuesta
{
  "type": "application/astra-executionHook",
  "version": "1.3",
  "id": "5f7e2e31-280d-5984-a28b-2d19ab5b77c0",
  "name": "Payroll",
  "hookType": "custom",
  "matchingCriteria": [
    {
      "type": "podLabel",
      "value": "^env=production$"
    },
    {
      "type": "containerName",
      "value": "^payroll-master"
    }
  ],
  "matchingImages": [
    "docker.io/bitnami/payroll:3.7.8",
    "docker.io/bitnami/payroll:4.1.2"
  ],
  "matchingContainers": [
    {
      "namespaceName": "payroll-east",
      "podName": "payroll-release3-7",
      "podLabels": [
        {
          "name": "env",
          "value": "production"
        },
        {
          "name": "app.kubernetes.io/managed-by",
          "value": "Helm"
        }
      ],
      "containerName": "payroll-master-0",
      "containerImage": "docker.io/bitnami/payroll:3.7.8"
    },
    {
      "namespaceName": "payroll-east",
      "podName": "payroll-release3-7",
      "podLabels": [
        {
          "name": "env",
          "value": "production"
        },
        {
          "name": "app.kubernetes.io/managed-by",
          "value": "Helm"
        }
      ],
      "containerName": "payroll-master-1",
      "containerImage": "docker.io/bitnami/payroll:3.7.8"
    }
  ],
  "action": "snapshot",
  "stage": "pre",
  "hookSourceID": "50e89023-ba84-435d-bb47-1833f4c250ff",
  "arguments": [
    "freeze"
  ],
  "appID": "7be5ae7c-151d-4230-ac39-ac1d0b33c2a9",
  "enabled": "true",
  "description": "Payroll production hook",
  "metadata": {
    "labels": [],
    "creationTimestamp": "2022-10-06T20:58:16.305662Z",
    "modificationTimestamp": "2022-10-06T20:58:16.305662Z",
    "createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
  }
}

Respuesta

Status: 401, Unauthorized
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

Ejemplo de respuesta
{
  "type": "https://astra.netapp.io/problems/3",
  "title": "Missing bearer token",
  "detail": "The request is missing the required bearer token.",
  "status": "401"
}

Respuesta

Status: 400, Bad request
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

invalidParams

matriz["invalidParams"]

Falso

Lista de parámetros de consulta no válidos

Ejemplo de respuesta
{
  "type": "https://astra.netapp.io/problems/5",
  "title": "Invalid query parameters",
  "detail": "The supplied query parameters are invalid.",
  "status": "400"
}

Respuesta

Status: 403, Forbidden
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

Ejemplo de respuesta
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

Error

Status: 404, Not found
Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

título

cadena

Verdadero

detalle

cadena

Verdadero

estado

cadena

Verdadero

correlationID

cadena

Falso

Ejemplo de respuesta de error
{
  "type": "https://astra.netapp.io/problems/2",
  "title": "Collection not found",
  "detail": "The collection specified in the request URI wasn't found.",
  "status": "404"
}

Definiciones

Ver definiciones

matchingCriteria

Nombre Tipo Obligatorio Descripción

tipo

cadena

Verdadero

Cadena JSON que identifica el tipo de criterio de coincidencia.

valor

cadena

Verdadero

Cadena JSON que contiene una expresión regular para el tipo de coincidencia dado. Sintaxis de la expresión regular: https://github.com/google/re2/wiki/Syntax

type_k8s_label

Nombre Tipo Obligatorio Descripción

nombre

cadena

Verdadero

valor

cadena

Verdadero

matchingContainers

Nombre Tipo Obligatorio Descripción

podName

cadena

Falso

Cadena JSON del nombre del pod del contenedor coincidente.

podLabels

array["type_k8s_label"]

Falso

Matriz JSON de objetos de etiquetas de las etiquetas del pod del contenedor coincidente.

containerImage

cadena

Falso

Cadena JSON de la imagen del contenedor coincidente.

containerName

cadena

Falso

Cadena JSON del nombre del contenedor coincidente.

namespaceName

cadena

Falso

Cadena JSON del nombre del espacio de nombres del pod del contenedor coincidente.

etiqueta_tipo_astra

Nombre Tipo Obligatorio Descripción

nombre

cadena

Verdadero

valor

cadena

Verdadero

type_astra_metadatos_update

Metadatos especificados por el cliente y el servicio asociados con el recurso. Los valores definidos son:

  • Conforme al esquema de metadatos de Astra. Si no se especifica al crear, se creará un objeto de metadatos sin etiquetas. Si no se especifica al actualizar, las etiquetas del objeto de metadatos, creationTimestamp y createdBy, se conservarán sin modificaciones.

Nombre Tipo Obligatorio Descripción

etiquetas

array["etiqueta_tipo_astra"]

Falso

CreationTimestamp

cadena

Falso

Modificación.Marca de hora

cadena

Falso

CreatedBy

cadena

Falso

modifiedBy

cadena

Falso

invalidParams

Nombre Tipo Obligatorio Descripción

nombre

cadena

Verdadero

Nombre del parámetro de consulta no válido

motivo

cadena

Verdadero

Razón por la que el parámetro de consulta no es válido