Créer un nouveau paquet
POST /accounts/{account_id}/core/v1/packages
Indique les valeurs souhaitées pour la ressource Package API à créer.
Paramètres
| Nom | Type | Dans | Obligatoire | Description |
|---|---|---|---|---|
identifiant_compte |
chaîne |
chemin |
Vrai |
ID de la ressource de compte conteneur
|
Corps de la requête
Indique les valeurs souhaitées pour la ressource Package API à créer.
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
Type de média de la ressource. Les valeurs définies sont :
|
version |
chaîne |
Vrai |
Version de la ressource. Les valeurs définies sont :
|
packageName |
chaîne |
Vrai |
Chaîne JSON contenant le nom du package. Les valeurs définies sont :
|
packageVersion |
chaîne |
Vrai |
Chaîne JSON contenant le SemVer du package. Les valeurs définies sont :
|
packageType |
chaîne |
Vrai |
Chaîne JSON contenant le type de package, indiquant s'il s'agit d'un package d'installation complet ou d'un correctif. Les valeurs définies sont :
|
bundleName |
tableau[chaîne] |
Faux |
Tableau JSON de chaînes JSON contenant le nom du bundle dans lequel le package est contenu. |
severityLevel |
chaîne |
Vrai |
Chaîne JSON décrivant le niveau de gravité de ce correctif ou de cette installation. Les valeurs définies sont :
|
images |
tableau["images"] |
Faux |
Tableau JSON d'objets JSON, chacun contenant une image Docker faisant partie du package. |
artefacts |
tableau["artefacts"] |
Faux |
Tableau JSON d'objets JSON décrivant les artefacts supplémentaires (binaires et autres) associés à ce package. |
fichiers |
tableau["fichiers"] |
Faux |
Tableau JSON d'objets JSON, chacun représentant un artefact non image associé à ce package. |
upgradableVersions |
Faux |
Objet JSON contenant les versions minimale et maximale pouvant être mises à niveau vers la version du package. |
|
dépendances |
tableau["dépendances"] |
Faux |
Tableau JSON d'objets JSON décrivant la version minimale d'une dépendance donnée requise pour que ce paquet puisse être installé |
les métadonnées |
Faux |
Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :
|
Exemple de requête
{
"type": "application/astra-package",
"version": "1.0",
"packageName": "acc",
"packageVersion": "22.09.1",
"packageType": "patch",
"severityLevel": "recommended",
"images": [
{
"imagePath": "/globalcicd/acc",
"imageName": "storage-provider",
"imageTag": "1.3.116",
"imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e3364456781a161f1be239853dae33deafc"
},
{
"imagePath": "/globalcicd/acc",
"imageName": "storage-backend-metrics",
"imageTag": "1.3.45",
"imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e3364456781a161f1be239853dae33deafc"
},
{
"imagePath": "/globalcicd/acc",
"imageName": "credentials",
"imageTag": "1.3.45",
"imageDigest": "sha256:2e04d178815537b0ad8c322445654e33642da781a161f1be239853dae33deafc"
}
],
"files": [
{
"fileName": "astra_control_center_min.yaml",
"fileIdentifier": "astra_min",
"fileMediaType": "application/x-yaml",
"fileContents": "VGhpcyBpcyBzdXBwb3NlZCB0byBiZSBhIGNvbXByZXNzZWQgZmlsZSBjb250ZW50"
}
],
"dependencies": [
{
"componentName": "acc",
"componentMinVersion": "22.04.29"
},
{
"componentName": "kubernetes",
"componentMinVersion": "v1.19.7",
"componentMaxVersion": "v1.22"
},
{
"componentName": "trident",
"componentMinVersion": "v21.01.1"
}
]
}
Réponse
Status: 201, Returns the newly created package resource in the JSON response body.
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
Type de média de la ressource. Les valeurs définies sont :
|
version |
chaîne |
Vrai |
Version de la ressource. Les valeurs définies sont :
|
id |
chaîne |
Vrai |
Identifiant unique global de la ressource. Les valeurs définies sont :
|
packageName |
chaîne |
Vrai |
Chaîne JSON contenant le nom du package. Les valeurs définies sont :
|
packageVersion |
chaîne |
Vrai |
Chaîne JSON contenant le SemVer du package. Les valeurs définies sont :
|
packageType |
chaîne |
Vrai |
Chaîne JSON contenant le type de package, indiquant s'il s'agit d'un package d'installation complet ou d'un correctif. Les valeurs définies sont :
|
bundleName |
tableau[chaîne] |
Faux |
Tableau JSON de chaînes JSON contenant le nom du bundle dans lequel le package est contenu. |
severityLevel |
chaîne |
Vrai |
Chaîne JSON décrivant le niveau de gravité de ce correctif ou de cette installation. Les valeurs définies sont :
|
packageState |
chaîne |
Vrai |
Chaîne JSON contenant une valeur indiquant l'état opérationnel du package. Après vérification du package et après import, l'état indiquera « complete ». Sinon, l'état indiquera « incomplete ». Les valeurs définies sont :
|
packageStateTransitions |
tableau["type_astra_stateTransition"] |
Vrai |
Tableau JSON d'objets JSON, chacun représentant l'ensemble des transitions d'état autorisées à partir d'un état défini. Chaque objet JSON contient les champs « from » et « to », où la valeur de « from » est le nom d'un état et la valeur de « to » est un tableau d'états de destination autorisés. Les valeurs définies sont :
|
packageStateDetails |
tableau["type_astra_stateDetail"] |
Vrai |
Tableau JSON d'objets JSON répertoriant des détails supplémentaires sur l'« état » actuel. Si aucun détail n'est disponible, ce tableau sera vide.
|
images |
tableau["images"] |
Faux |
Tableau JSON d'objets JSON, chacun contenant une image Docker faisant partie du package. |
artefacts |
tableau["artefacts"] |
Faux |
Tableau JSON d'objets JSON décrivant les artefacts supplémentaires (binaires et autres) associés à ce package. |
fichiers |
tableau["fichiers"] |
Faux |
Tableau JSON d'objets JSON, chacun représentant un artefact non image associé à ce package. |
upgradableVersions |
Faux |
Objet JSON contenant les versions minimale et maximale pouvant être mises à niveau vers la version du package. |
|
dépendances |
tableau["dépendances"] |
Faux |
Tableau JSON d'objets JSON décrivant la version minimale d'une dépendance donnée requise pour que ce paquet puisse être installé |
les métadonnées |
Vrai |
Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :
|
Exemple de réponse
{
"type": "application/astra-package",
"version": "1.0",
"id": "54edc2b3-18c5-5371-904b-ebcd04d88bdc",
"packageName": "acc",
"packageVersion": "22.09.1",
"packageType": "patch",
"packageState": "available",
"packageStateTransitions": [
{
"from": "verifying",
"to": [
"corrupt",
"incomplete",
"available"
]
},
{
"from": "corrupt",
"to": [
"incomplete",
"available"
]
},
{
"from": "incomplete",
"to": [
"corrupt",
"available"
]
},
{
"from": "available",
"to": [
"corrupt",
"available"
]
}
],
"packageStateDetails": [],
"severityLevel": "recommended",
"images": [
{
"imagePath": "/globalcicd/acc",
"imageName": "storage-provider",
"imageTag": "1.3.116",
"imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e33642da781a161f1be239853dae33deafc"
},
{
"imagePath": "/globalcicd/acc",
"imageName": "storage-backend-metrics",
"imageTag": "1.3.45",
"imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e33642da781a161f1be239853dae33deafc"
},
{
"imagePath": "/globalcicd/acc",
"imageName": "credentials",
"imageTag": "1.3.45",
"imageDigest": "sha256:2e04d178815537b0ad8c3224e8754e33642da781a161f1be239853dae33deafc"
}
],
"files": [
{
"fileName": "astra_control_center_min.yaml",
"fileIdentifier": "astra_min",
"fileMediaType": "application/x-yaml",
"fileContents": "VGhpcyBpcyBzdXBwb3NlZCB0byBiZSBhIGNvbXByZXNzZWQgZmlsZSBjb250ZW50"
}
],
"dependencies": [
{
"componentName": "acc",
"componentMinVersion": "22.04.29"
},
{
"componentName": "kubernetes",
"componentMinVersion": "v1.19.7",
"componentMaxVersion": "v1.20"
},
{
"componentName": "trident",
"componentMinVersion": "v21.01.1"
}
],
"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 |
|
invalidFields |
tableau["invalidFields"] |
Faux |
Liste des champs invalides du corps de la requête |
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: 409, Conflict
| 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 |
|
invalidFields |
tableau["invalidFields"] |
Faux |
Liste des champs invalides du corps de la requête |
Exemple de réponse
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
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
dependsOnImages
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
imagePath |
chaîne |
Vrai |
Chaîne JSON contenant le chemin d'accès à cette image Docker. Elle ne doit pas contenir le nom du registre, uniquement le chemin absolu de la racine à l'image. Exemple : /globalcicd/acc Valeurs définies :
|
imageName |
chaîne |
Vrai |
Chaîne JSON contenant le nom de l'image Docker. Les valeurs définies sont :
|
imageTag |
chaîne |
Vrai |
Chaîne JSON représentant l'étiquette/la version de cette image. Les valeurs définies sont :
|
images
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
imageName |
chaîne |
Vrai |
Chaîne JSON contenant le nom de l'image Docker. Les valeurs définies sont :
|
imagePath |
chaîne |
Vrai |
Chaîne JSON contenant le chemin d'accès à cette image Docker. Elle ne doit pas contenir le nom du registre, uniquement le chemin absolu de la racine à l'image. Exemple : /globalcicd/acc Valeurs définies :
|
imageTag |
chaîne |
Vrai |
Chaîne JSON représentant l'étiquette/la version de cette image. Les valeurs définies sont :
|
imageDigest |
chaîne |
Vrai |
Chaîne JSON représentant le condensé de cette image. Les valeurs définies sont :
|
dependsOnImages |
tableau["dependsOnImages"] |
Faux |
Tableau JSON d'objets JSON décrivant les images nécessaires à l'installation ou à la mise à niveau de l'image actuelle. |
dependsOnComponents
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
componentName |
chaîne |
Vrai |
Chaîne JSON décrivant le nom du composant. Les valeurs définies sont :
|
versions |
tableau[chaîne] |
Vrai |
Tableau JSON de chaînes JSON définissant la version du composant requise pour installer l'image actuelle. |
artefacts
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
artifactName |
chaîne |
Vrai |
Chaîne JSON contenant le nom du fichier. Les valeurs définies sont :
|
artifactIdentifier |
chaîne |
Vrai |
Chaîne JSON contenant un identifiant pour ce fichier. Entre les versions d'un même type de package, le nom du fichier peut changer mais l'identifiant reste généralement le même. Les valeurs définies sont :
|
artifactPath |
chaîne |
Vrai |
Chaîne JSON contenant le chemin d'accès à cet artefact depuis la racine d'un emplacement/magasin de données Astra Control Center connu. Exemple : /vmware/1.0/ Les valeurs définies sont :
|
artifactVersion |
chaîne |
Faux |
Chaîne JSON contenant la version de cet artefact, si elle est fournie. Les valeurs définies sont :
|
dependsOnComponents |
tableau["dependsOnComponents"] |
Faux |
Tableau JSON d'objets JSON décrivant les composants installés nécessaires à l'installation/mise à niveau de l'image actuelle. |
fichiers
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
fileName |
chaîne |
Vrai |
Chaîne JSON contenant le nom du fichier. Les valeurs définies sont :
|
fileIdentifier |
chaîne |
Vrai |
Chaîne JSON contenant l'identifiant de ce fichier. Entre les versions d'un même type de package, le nom du fichier peut changer mais l'identifiant reste généralement le même. Les valeurs définies sont :
|
fileMediaType |
chaîne |
Vrai |
Chaîne JSON contenant le type de média du fichier. Les valeurs définies correspondent à tout type de média défini par "IANA". De plus, application/x-yaml ou application/x-yaml pour les fichiers yaml est pris en charge.
|
fileContents |
chaîne |
Vrai |
Chaîne JSON contenant le contenu du fichier. Les valeurs définies sont :
|
upgradableVersions
Objet JSON contenant les versions minimale et maximale pouvant être mises à niveau vers la version du package.
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
minVersion |
chaîne |
Faux |
Chaîne JSON décrivant la version minimale pouvant être mise à niveau vers la version du package. Les valeurs définies sont :
|
maxVersion |
chaîne |
Faux |
Chaîne JSON décrivant la version maximale pouvant être mise à niveau vers la version du package. Les valeurs définies sont :
|
dépendances
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
componentName |
chaîne |
Vrai |
Chaîne JSON décrivant le nom du composant. Les valeurs définies sont :
|
componentMinVersion |
chaîne |
Faux |
Chaîne JSON décrivant la version minimale requise pour ce composant. Les valeurs définies sont :
|
componentMaxVersion |
chaîne |
Faux |
Chaîne JSON décrivant la version maximale requise pour ce composant. Les valeurs définies sont :
|
type_astra_label
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
nom |
chaîne |
Vrai |
|
valeur |
chaîne |
Vrai |
type_astra_metadata
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.
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
étiquettes |
tableau["type_astra_label"] |
Vrai |
|
CréationTimestamp |
chaîne |
Vrai |
|
ModificationTimestamp |
chaîne |
Vrai |
|
CreatedBy |
chaîne |
Vrai |
|
modifiedBy |
chaîne |
Faux |
type_astra_stateTransition
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
depuis |
chaîne |
Vrai |
|
pour |
tableau[chaîne] |
Vrai |
additionalDetails
type_astra_stateDetail
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
additionalDetails |
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 |
invalidFields
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
nom |
chaîne |
Vrai |
Nom du champ invalide du corps de la requête |
raison |
chaîne |
Vrai |
Raison pour laquelle le champ du corps de la requête est invalide |