Crea un nuovo pacchetto
POST /accounts/{account_id}/core/v1/packages
Indica i valori desiderati per la risorsa API Package da creare.
Parametri
| Nome | Tipo | In | Obbligatorio | Descrizione |
|---|---|---|---|---|
ID account |
stringa |
percorso |
Vero |
ID della risorsa account contenitore
|
Corpo della richiesta
Indica i valori desiderati per la risorsa API Package da creare.
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
Tipo di media della risorsa. I valori definiti sono:
|
versione |
stringa |
Vero |
Versione della risorsa. I valori definiti sono:
|
packageName |
stringa |
Vero |
Stringa JSON contenente il nome del pacchetto. I valori definiti sono:
|
packageVersion |
stringa |
Vero |
Stringa JSON contenente la SemVer del pacchetto. I valori definiti sono:
|
packageType |
stringa |
Vero |
Stringa JSON contenente il tipo di pacchetto, che indica se si tratta di un pacchetto di installazione completo o di una patch. I valori definiti sono:
|
bundleName |
array[string] |
Falso |
Array JSON di stringhe JSON contenenti il nome del bundle in cui è contenuto il pacchetto. |
severityLevel |
stringa |
Vero |
Stringa JSON che descrive il livello di gravità di questa patch o installazione. I valori definiti sono:
|
immagini |
vettore["immagini"] |
Falso |
Array JSON di oggetti JSON, ognuno dei quali contiene un'immagine Docker che fa parte del pacchetto. |
artefatti |
vettore["artefatti"] |
Falso |
Array JSON di oggetti JSON che descrivono gli artefatti aggiuntivi (binari e altri) associati a questo pacchetto. |
file |
vettore["file"] |
Falso |
Array JSON di oggetti JSON, ognuno dei quali rappresenta un artefatto non immagine associato a questo pacchetto. |
upgradableVersions |
Falso |
Oggetto JSON contenente le versioni minima e massima che possono essere aggiornate alla versione del pacchetto. |
|
dipendenze |
vettore["dipendenze"] |
Falso |
Array JSON di oggetti JSON che descrivono quale versione minima di una determinata dipendenza è richiesta per installare questo pacchetto |
metadati |
Falso |
Metadati specificati dal client e dal servizio associati alla risorsa. I valori definiti sono:
|
Esempio di richiesta
{
"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"
}
]
}
Risposta
Status: 201, Returns the newly created package resource in the JSON response body.
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
Tipo di media della risorsa. I valori definiti sono:
|
versione |
stringa |
Vero |
Versione della risorsa. I valori definiti sono:
|
id |
stringa |
Vero |
Identificatore univoco globale della risorsa. I valori definiti sono:
|
packageName |
stringa |
Vero |
Stringa JSON contenente il nome del pacchetto. I valori definiti sono:
|
packageVersion |
stringa |
Vero |
Stringa JSON contenente la SemVer del pacchetto. I valori definiti sono:
|
packageType |
stringa |
Vero |
Stringa JSON contenente il tipo di pacchetto, che indica se si tratta di un pacchetto di installazione completo o di una patch. I valori definiti sono:
|
bundleName |
array[string] |
Falso |
Array JSON di stringhe JSON contenenti il nome del bundle in cui è contenuto il pacchetto. |
severityLevel |
stringa |
Vero |
Stringa JSON che descrive il livello di gravità di questa patch o installazione. I valori definiti sono:
|
packageState |
stringa |
Vero |
Stringa JSON contenente un valore che indica lo stato operativo del pacchetto. Dopo la verifica del pacchetto e dopo l'importazione, lo stato indicherà "complete". Altrimenti, lo stato indicherà "incomplete". I valori definiti sono:
|
packageStateTransitions |
vettore["tipo_transizione_stato_astra"] |
Vero |
Array JSON di oggetti JSON, ognuno dei quali rappresenta l'insieme delle transizioni di stato consentite da un dato stato definito. Ogni oggetto JSON contiene i campi "from" e "to", dove il valore "from" è il nome di uno stato e il valore "to" è un array di stati di destinazione consentiti. I valori definiti sono:
|
packageStateDetails |
vettore["type_astra_stateDetail"] |
Vero |
Array JSON di oggetti JSON che elenca dettagli aggiuntivi sullo "stato" corrente. Se non sono disponibili dettagli, questo array sarà vuoto.
|
immagini |
vettore["immagini"] |
Falso |
Array JSON di oggetti JSON, ognuno dei quali contiene un'immagine Docker che fa parte del pacchetto. |
artefatti |
vettore["artefatti"] |
Falso |
Array JSON di oggetti JSON che descrivono gli artefatti aggiuntivi (binari e altri) associati a questo pacchetto. |
file |
vettore["file"] |
Falso |
Array JSON di oggetti JSON, ognuno dei quali rappresenta un artefatto non immagine associato a questo pacchetto. |
upgradableVersions |
Falso |
Oggetto JSON contenente le versioni minima e massima che possono essere aggiornate alla versione del pacchetto. |
|
dipendenze |
vettore["dipendenze"] |
Falso |
Array JSON di oggetti JSON che descrivono quale versione minima di una determinata dipendenza è richiesta per installare questo pacchetto |
metadati |
Vero |
Metadati specificati dal client e dal servizio associati alla risorsa. I valori definiti sono:
|
Risposta tipo
{
"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"
}
}
Risposta
Status: 401, Unauthorized
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
|
titolo |
stringa |
Vero |
|
dettaglio |
stringa |
Vero |
|
stato |
stringa |
Vero |
|
ID correlazione |
stringa |
Falso |
Risposta tipo
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
Risposta
Status: 400, Bad request
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
|
titolo |
stringa |
Vero |
|
dettaglio |
stringa |
Vero |
|
stato |
stringa |
Vero |
|
ID correlazione |
stringa |
Falso |
|
invalidFields |
vettore["invalidFields"] |
Falso |
Elenco dei campi non validi del corpo della richiesta |
Risposta tipo
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
Risposta
Status: 409, Conflict
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
|
titolo |
stringa |
Vero |
|
dettaglio |
stringa |
Vero |
|
stato |
stringa |
Vero |
|
ID correlazione |
stringa |
Falso |
|
invalidFields |
vettore["invalidFields"] |
Falso |
Elenco dei campi non validi del corpo della richiesta |
Risposta tipo
{
"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"
}
Risposta
Status: 403, Forbidden
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
|
titolo |
stringa |
Vero |
|
dettaglio |
stringa |
Vero |
|
stato |
stringa |
Vero |
|
ID correlazione |
stringa |
Falso |
Risposta tipo
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
Errore
Status: 404, Not found
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
|
titolo |
stringa |
Vero |
|
dettaglio |
stringa |
Vero |
|
stato |
stringa |
Vero |
|
ID correlazione |
stringa |
Falso |
Esempio di risposta di errore
{
"type": "https://astra.netapp.io/problems/2",
"title": "Collection not found",
"detail": "The collection specified in the request URI wasn't found.",
"status": "404"
}
Definizioni
Vedi definizioni
dependsOnImages
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
imagePath |
stringa |
Vero |
Stringa JSON contenente il percorso di questa immagine Docker. Non deve contenere il nome del registro, ma solo il percorso assoluto dalla directory principale all'immagine. Esempio: /globalcicd/acc I valori definiti sono:
|
imageName |
stringa |
Vero |
Stringa JSON contenente il nome dell'immagine Docker. I valori definiti sono:
|
imageTag |
stringa |
Vero |
Stringa JSON che rappresenta il tag/la versione di questa immagine. I valori definiti sono:
|
immagini
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
imageName |
stringa |
Vero |
Stringa JSON contenente il nome dell'immagine Docker. I valori definiti sono:
|
imagePath |
stringa |
Vero |
Stringa JSON contenente il percorso di questa immagine Docker. Non deve contenere il nome del registro, ma solo il percorso assoluto dalla directory principale all'immagine. Esempio: /globalcicd/acc I valori definiti sono:
|
imageTag |
stringa |
Vero |
Stringa JSON che rappresenta il tag/la versione di questa immagine. I valori definiti sono:
|
imageDigest |
stringa |
Vero |
Stringa JSON che rappresenta il digest di questa immagine. I valori definiti sono:
|
dependsOnImages |
vettore["dependsOnImages"] |
Falso |
Array JSON di oggetti JSON che descrivono le immagini necessarie per installare o aggiornare l'immagine corrente. |
dependsOnComponents
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
componentName |
stringa |
Vero |
Stringa JSON che descrive il nome del componente. I valori definiti sono:
|
versioni |
array[string] |
Vero |
Array JSON di stringhe JSON che definiscono la versione del componente necessaria per installare l'immagine corrente. |
artefatti
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
artifactName |
stringa |
Vero |
Stringa JSON contenente il nome del file. I valori definiti sono:
|
artifactIdentifier |
stringa |
Vero |
Stringa JSON contenente un identificatore per questo file. Tra versioni dello stesso tipo di pacchetto, il nome del file potrebbe cambiare ma l'identificatore di solito rimane lo stesso. I valori definiti sono:
|
artifactPath |
stringa |
Vero |
Stringa JSON contenente il percorso di questo artefatto dalla radice di un Astra Control Center Data Store/posizione noto. Esempio: /vmware/1.0/ I valori definiti sono:
|
artifactVersion |
stringa |
Falso |
Stringa JSON contenente la versione di quell'artefatto, se fornita. I valori definiti sono:
|
dependsOnComponents |
vettore["dependsOnComponents"] |
Falso |
Array JSON di oggetti JSON che descrivono i componenti installati necessari per installare/aggiornare l'immagine corrente. |
file
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
fileName |
stringa |
Vero |
Stringa JSON contenente il nome del file. I valori definiti sono:
|
fileIdentifier |
stringa |
Vero |
Stringa JSON contenente un identificatore di questo file. Tra versioni dello stesso tipo di pacchetto, il nome del file potrebbe cambiare ma l'identificatore di solito rimane lo stesso. I valori definiti sono:
|
fileMediaType |
stringa |
Vero |
Stringa JSON contenente il tipo di media del file. I valori definiti sono tutti i tipi di media definiti da "IANA". Inoltre, è supportato application/x-yaml o application/x-yaml per i file yaml.
|
fileContents |
stringa |
Vero |
Stringa JSON contenente il contenuto del file. I valori definiti sono:
|
upgradableVersions
Oggetto JSON contenente le versioni minima e massima che possono essere aggiornate alla versione del pacchetto.
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
minVersion |
stringa |
Falso |
Stringa JSON che descrive la versione minima che può essere aggiornata alla versione del pacchetto. I valori definiti sono:
|
maxVersion |
stringa |
Falso |
Stringa JSON che descrive la versione massima che può essere aggiornata alla versione del pacchetto. I valori definiti sono:
|
dipendenze
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
componentName |
stringa |
Vero |
Stringa JSON che descrive il nome del componente. I valori definiti sono:
|
componentMinVersion |
stringa |
Falso |
Stringa JSON che descrive la versione minima richiesta per quel componente. I valori definiti sono:
|
componentMaxVersion |
stringa |
Falso |
Stringa JSON che descrive la versione massima richiesta per quel componente. I valori definiti sono:
|
etichetta tipo_astra
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
nome |
stringa |
Vero |
|
valore |
stringa |
Vero |
type_astra_metadati
Metadati specificati dal client e dal servizio associati alla risorsa. I valori definiti sono:
-
Conforme allo schema dei metadati di Astra. Se non specificato in fase di creazione, verrà creato un oggetto metadati senza etichette.
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
etichette |
vettore["etichetta tipo_astra"] |
Vero |
|
CreationTimestamp |
stringa |
Vero |
|
ModificationTimestamp |
stringa |
Vero |
|
CreatedBy |
stringa |
Vero |
|
modifiedBy |
stringa |
Falso |
tipo_transizione_stato_astra
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
da |
stringa |
Vero |
|
a |
array[string] |
Vero |
type_astra_stateDetail
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
tipo |
stringa |
Vero |
|
titolo |
stringa |
Vero |
|
dettaglio |
stringa |
Vero |
invalidParams
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
nome |
stringa |
Vero |
Nome del parametro di query non valido |
motivo |
stringa |
Vero |
Motivo per cui il parametro di query non è valido |
invalidFields
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
nome |
stringa |
Vero |
Nome del campo del corpo della richiesta non valido |
motivo |
stringa |
Vero |
Motivo per cui il campo del corpo della richiesta non è valido |