Skip to main content
Astra Automation
Une version plus récente de ce produit est disponible.
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Lister les hooks d'exécution pour une application

GET /accounts/{account_id}/k8s/v1/apps/{app_id}/executionHooks

Renvoie un tableau JSON contenant toutes les ressources correspondantes de la collection. Si des champs individuels sont spécifiés dans la requête, le tableau JSON items contiendra les champs demandés pour chaque ressource correspondante dans l'ordre indiqué.

Paramètres

Nom Type Dans Obligatoire Description

identifiant_compte

chaîne

chemin

Vrai

ID de la ressource de compte conteneur

  • exemple: {{.Account}}

app_id

chaîne

chemin

Vrai

ID de la ressource d'application contenant

inclure

chaîne

requête

Faux

Indique les champs qui doivent être renvoyés lors de l’énumération d’une collection.

Exemples d'URL : « include=id », « include=id,name »

Exemples OpenAPI : « id »

limite

chaîne

requête

Faux

Indique le nombre maximal de ressources à renvoyer lors de l’énumération d’une collection.

Exemples d'URL : « limit=2 »

Exemples OpenAPI : « 2 »

filtre

chaîne

requête

Faux

Indique les champs qui doivent être mis en correspondance pour renvoyer une ressource lors du listage d'une collection.

Les opérateurs pris en charge sont :

  • eq - Égalité

  • lt/gt - Inférieur à/Supérieur à

  • LTE/GTE - Inférieur ou égal à/Supérieur ou égal à

Exemple d'URL : « filter=field%20eq%20%27value%27 »

Exemples OpenAPI : « field eq 'value' »

Réponse

Status: 200, Returns a JSON array of all matching resources in the collection. If individual fields are specified in the request, the items JSON array will contain the fields requested for each matching resource in the order specified.
Nom Type Obligatoire Description

articles

tableau[N'importe lequel de : "corps de réponse executionHook_1.3_get_response_body", tableau[]]

Vrai

les métadonnées

"type_astra_metadata_list"

Vrai

Exemple de réponse
{
  "type": "application/astra-executionHooks",
  "version": "1.3",
  "items": [
    {
      "type": "application/astra-executionHook",
      "version": "1.1",
      "id": "4c64792c-806b-4457-938d-8e325a37c593",
      "name": "Payroll",
      "hookType": "custom",
      "matchingCriteria": [
        {
          "type": "containerImage",
          "value": "payroll"
        },
        {
          "type": "podName",
          "value": "^payroll-master"
        }
      ],
      "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": "2020-08-06T12:24:52.256624Z",
        "modificationTimestamp": "2020-08-06T12:24:52.256624Z",
        "createdBy": "64182074-ddb6-42eb-b7f4-b6a02cf9ba7c"
      }
    },
    {
      "type": "application/astra-executionHook",
      "version": "1.1",
      "id": "6659892c-c621-44e8-a0bb-8dbdf378a2dd",
      "name": "Order Processing",
      "hookType": "custom",
      "matchingCriteria": [
        {
          "type": "containerName",
          "value": "^order-processing$"
        },
        {
          "type": "podLabel",
          "value": "^app=master$|^app=data$"
        }
      ],
      "action": "snapshot",
      "stage": "pre",
      "hookSourceID": "63f4d6fd-b7f0-4eaa-9890-0b11123604b1",
      "arguments": [
        "freeze"
      ],
      "appID": "7be5ae7c-151d-4230-ac39-ac1d0b33c2a9",
      "enabled": "true",
      "description": "Order processing hook",
      "metadata": {
        "labels": [],
        "creationTimestamp": "2020-08-06T12:24:52.256624Z",
        "modificationTimestamp": "2020-08-06T12:24:52.256624Z",
        "createdBy": "64182074-ddb6-42eb-b7f4-b6a02cf9ba7c"
      }
    },
    {
      "type": "application/astra-executionHook",
      "version": "1.1",
      "id": "6659892c-c621-44e8-a0bb-8dbdf378a2dd",
      "name": "NetApp Postgres Hook",
      "hookType": "netapp",
      "matchingCriteria": [
        {
          "type": "podName",
          "value": "^postgres"
        },
        {
          "type": "containerImage",
          "value": "3.8"
        }
      ],
      "action": "snapshot",
      "stage": "pre",
      "hookSourceID": "3601ed09-1a74-4156-a1bd-9cb7144bac0e",
      "arguments": [
        "freeze"
      ],
      "enabled": "true",
      "description": "Order processing hook",
      "metadata": {
        "labels": [],
        "creationTimestamp": "2020-08-06T12:24:52.256624Z",
        "modificationTimestamp": "2020-08-06T12:24:52.256624Z",
        "createdBy": "64182074-ddb6-42eb-b7f4-b6a02cf9ba7c"
      }
    },
    {
      "type": "application/astra-executionHook",
      "version": "1.1",
      "id": "6659892c-c621-44e8-a0bb-8dbdf378a2dd",
      "name": "Redis Hook",
      "hookType": "custom",
      "matchingCriteria": [
        {
          "type": "containerName",
          "value": "^redis-01$"
        }
      ],
      "action": "snapshot",
      "stage": "pre",
      "hookSourceID": "3601ed09-1a74-4156-a1bd-9cb7144bac0e",
      "arguments": [
        "freeze"
      ],
      "enabled": "true",
      "description": "Order processing hook",
      "metadata": {
        "labels": [],
        "creationTimestamp": "2020-08-06T12:24:52.256624Z",
        "modificationTimestamp": "2020-08-06T12:24:52.256624Z",
        "createdBy": "64182074-ddb6-42eb-b7f4-b6a02cf9ba7c"
      }
    }
  ],
  "metadata": {
    "labels": [],
    "creationTimestamp": "2022-10-06T20:58:16.305662Z",
    "modificationTimestamp": "2022-10-06T20:58:16.305662Z",
    "createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
  }
}

Réponse

Status: 401, Unauthorized
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

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

Réponse

Status: 400, Bad request
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

invalidParams

tableau["invalidParams"]

Faux

Liste des paramètres de requête invalides

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

Réponse

Status: 403, Forbidden
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

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

Erreur

Status: 404, Not found
Nom Type Obligatoire Description

type

chaîne

Vrai

titre

chaîne

Vrai

détail

chaîne

Vrai

statut

chaîne

Vrai

identifiant de corrélation

chaîne

Faux

Exemple de réponse d'erreur
{
  "type": "https://astra.netapp.io/problems/2",
  "title": "Collection not found",
  "detail": "The collection specified in the request URI wasn't found.",
  "status": "404"
}

Définitions

Voir les définitions

matchingCriteria

Nom Type Obligatoire Description

type

chaîne

Vrai

Chaîne JSON identifiant le type de critères de correspondance.

valeur

chaîne

Vrai

Chaîne JSON contenant une expression régulière permettant de rechercher le type de correspondance spécifié. Syntaxe de l'expression régulière : https://github.com/google/re2/wiki/Syntax

type_k8s_label

Nom Type Obligatoire Description

nom

chaîne

Vrai

valeur

chaîne

Vrai

matchingContainers

Nom Type Obligatoire Description

podName

chaîne

Faux

Chaîne JSON du nom du pod correspondant au conteneur.

podLabels

tableau["type_k8s_label"]

Faux

Tableau JSON d'objets d'étiquette correspondant aux étiquettes du pod du conteneur correspondant.

containerImage

chaîne

Faux

Chaîne JSON de l'image du conteneur correspondant.

containerName

chaîne

Faux

Chaîne JSON du nom du conteneur correspondant.

namespaceName

chaîne

Faux

Chaîne JSON correspondant au nom de l'espace de noms du pod du conteneur.

type_astra_label

Nom Type Obligatoire Description

nom

chaîne

Vrai

valeur

chaîne

Vrai

type_astra_metadata_update

Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :

  • Conforme au schéma de métadonnées Astra. Si aucune étiquette n'est spécifiée lors de la création, un objet de métadonnées sera créé sans étiquette. Si aucune étiquette n'est spécifiée lors de la mise à jour, les étiquettes de l'objet de métadonnées, creationTimestamp et createdBy, seront conservées sans modification.

Nom Type Obligatoire Description

étiquettes

tableau["type_astra_label"]

Faux

CréationTimestamp

chaîne

Faux

ModificationTimestamp

chaîne

Faux

CreatedBy

chaîne

Faux

modifiedBy

chaîne

Faux

corps de réponse executionHook_1.3_get_response_body

Nom Type Obligatoire Description

type

chaîne

Vrai

Type de média de la ressource. Les valeurs définies sont :

  • "application/astra-executionHook"

version

chaîne

Vrai

Version de la ressource. Les valeurs définies sont :

  • "1,0"

  • "1,1"

  • "1,2"

  • "1,3"

id

chaîne

Vrai

Identifiant unique global de la ressource. Les valeurs définies sont :

  • Conforme au schéma UUIDv4

nom

chaîne

Vrai

Chaîne JSON contenant un nom spécifié par l'utilisateur pour la ressource. Les valeurs définies sont :

  • Longueur minimale : 1

  • Longueur maximale : 63 Le nom doit être unique pour toutes les ressources de hook d’exécution.

hookType

chaîne

Vrai

Chaîne JSON définissant le type de hook. Les valeurs définies sont :

  • "netapp" - Hook d'exécution fourni par NetApp.

  • « custom » - lié à un ID d’application spécifique. Les ressources du hook d’exécution avec hookType « netapp » sont en lecture seule.

matchingCriteria

tableau["matchingCriteria"]

Vrai

Tableau JSON d'objets JSON décrivant les critères de correspondance pour le hook d'exécution. Lorsque plusieurs matchingCriteria sont spécifiés, un ET logique est appliqué aux critères. Les valeurs définies sont :

  • Nombre minimum d’articles : 0

  • Nombre maximum d'articles : 10

matchingContainers

tableau["matchingContainers"]

Faux

Tableau JSON d'objets JSON pour chaque conteneur correspondant aux critères de correspondance configurés au sein de l'application définie.

matchingImages

tableau[chaîne]

Faux

Tableau JSON de chaînes JSON pour les images conteneurs correspondantes. Les valeurs définies sont :

  • Nombre minimum d’articles : 0

  • Nombre maximum d'articles : 4095

  • Longueur minimale : 1

  • Longueur maximale : 255

action

chaîne

Vrai

Chaîne JSON indiquant l'action que le hook d'exécution lancera si les critères de correspondance sont remplis. Les valeurs définies sont :

  • "instantané"

  • "sauvegarde"

  • "restaurer"

  • « basculement »

scène

chaîne

Vrai

Chaîne JSON indiquant l'étape de l'action à laquelle le hook sera exécuté. Les valeurs définies sont :

  • "pre" - Le hook d'exécution sera exécuté avant l'action spécifiée.

  • « post » : le hook d’exécution sera lancé après l’action spécifiée. Les valeurs pour l’action « snapshot » sont « pre » et « post ». Les valeurs pour l’action « backup » sont « pre » et « post ». La valeur pour l’action « restore » est « post ». La valeur pour l’action « failover » est « post ».

hookSourceID

chaîne

Vrai

Chaîne JSON contenant l'identifiant de la source du hook exécuté par ce hook. Les valeurs définies sont :

  • Conforme au schéma d'identifiant Astra

arguments

tableau[chaîne]

Faux

Tableau JSON de chaînes JSON pour les arguments de la source. Les valeurs définies sont :

  • Nombre minimum d’articles : 0

  • Nombre maximum d'articles : 16

  • Longueur minimale : 0

  • Longueur maximale : 127

ID de l'application

chaîne

Faux

Chaîne JSON contenant l'identifiant associé de l'application à laquelle ce hook est lié. En essence, d'autres critères de correspondance, si définis. Les valeurs définies sont :

  • Conforme au schéma d'identifiant Astra

activé

chaîne

Vrai

Chaîne JSON indiquant si le hook d'exécution est activé. Les valeurs définies sont :

  • "true" - Le hook d'exécution est activé et sera exécuté comme spécifié.

  • « false » - Le hook d’exécution est désactivé et ne sera jamais exécuté. La valeur par défaut est « true ».

description

chaîne

Faux

Chaîne JSON contenant une description, spécifiée par l'utilisateur, de la source du hook. Les valeurs définies sont :

  • Longueur minimale : 0

  • Longueur maximale : 511

les métadonnées

"type_astra_metadata_update"

Vrai

Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :

  • Conforme au schéma de métadonnées Astra. Si aucune étiquette n'est spécifiée lors de la création, un objet de métadonnées sera créé sans étiquette. Si aucune étiquette n'est spécifiée lors de la mise à jour, les étiquettes de l'objet de métadonnées, creationTimestamp et createdBy, seront conservées sans modification.

type_astra_metadata_list

Nom Type Obligatoire Description

continuer

chaîne

Faux

nombre

nombre

Faux

étiquettes

tableau["type_astra_label"]

Faux

CréationTimestamp

chaîne

Faux

ModificationTimestamp

chaîne

Faux

CreatedBy

chaîne

Faux

modifiedBy

chaîne

Faux

invalidParams

Nom Type Obligatoire Description

nom

chaîne

Vrai

Nom du paramètre de requête invalide

raison

chaîne

Vrai

Raison pour laquelle le paramètre de requête est invalide