Update Operating System

View as Markdown
Update an Operating System by ID If the Operating System has `infrastructureProviderId` set, then org must have an Infrastructure Provider entity and its ID should match the Operating System Infrastructure Provider ID. User must have authorization role with `PROVIDER_ADMIN` suffix. Provider must own the Operating System. If the Operating System has `tenantId` set, then org must have a Tenant entity and its ID should match the Operating System Tenant ID. User must have authorization role with `TENANT_ADMIN` suffix. Tenant must own the Operating System.

Authentication

AuthorizationBearer
``` export JWT_BEARER_TOKEN="<jwt-bearer-token>" # Example org name: "acme-inc export ORG_NAME=<org-name> # Use the JWT bearer token in your API request auth header: curl -v -X GET -H "Content-Type: application/json" -H "Authorization: Bearer $JWT_BEARER_TOKEN" https://nico-rest-api.nico.svc.cluster.local/v2/org/$ORG_NAME/nico/user/current ```

Path parameters

orgstringRequired
Name of the Org
operatingSystemIdstringRequired
ID of the Operating System

Request

This endpoint expects an object.
namestring or nullOptional2-256 characters
Name of the Operating System
descriptionstring or nullOptional
Optional description of the Operating System
ipxeScriptstring or nullOptional

iPXE script or URL, only applicable for iPXE-based OS. Cannot be specified if imageUrl is specified

imageUrlstring or nullOptionalformat: "uri"

Original URL from which the Operating System image can be retrieved. Immutable after creation: it may be re-sent unchanged, but changing it is rejected. Create a new Operating System to use a different image.

imageShastring or nullOptional

SHA hash of the image file. Immutable after creation: it may be re-sent unchanged, but changing it is rejected.

imageAuthTypestring or nullOptional

Authentication type for image URL, if needed, e.g., basic/bearer/token; required if imageAuthToken is specified. Can be updated independently without re-sending imageUrl/imageSha.

imageAuthTokenstring or nullOptional

Auth token to retrieve the image from image URL, required if imageAuthType is specified. Can be updated independently without re-sending imageUrl/imageSha.

imageDiskstring or nullOptional
Disk path where the image should be mounted, optional
rootFsIdstring or nullOptional

Root filesystem UUID; this or rootFsLabel is required for image-based OS

rootFsLabelstring or nullOptional

Root filesystem label; this or rootFsId is required for image-based OS

phoneHomeEnabledboolean or nullOptional
Indicates whether the Phone Home service should be enabled or disabled for Operating System
userDatastring or nullOptional
User data for the Operating System
allowOverrideboolean or nullOptional
Indicates if the user data can be overridden at Instance creation time
isActiveboolean or nullOptional
Indicates if the Operating System is active
deactivationNotestring or nullOptional
Optional deactivation note if OS is inactive
ipxeTemplateIdstring or nullOptional

ID of the iPXE template to use (Templated iPXE only). Mutually exclusive with ipxeScript and imageUrl.

ipxeTemplateParameterslist of objectsOptional

Parameters passed to the iPXE template (Templated iPXE only).

ipxeTemplateArtifactslist of objectsOptional

Artifacts (kernel, initrd, ISO, …) for the iPXE OS definition (Templated iPXE only).

isCloudInitboolean or nullOptionalDeprecated

Deprecated and ignored: whether the Operating System is cloud-init based. Value now derived from userData.

Response

OK
idstringRead-onlyformat: "uuid"
ID of the Operating System
namestring2-256 characters
Name of the Operating System
descriptionstring or null
Optional description of the Operating System
infrastructureProviderIdstring or nullformat: "uuid"
Specified if a Provider owns the Operating System
tenantIdstring or nullformat: "uuid"
Specified if a Tenant owns the Operating System
typeenum
Type of the Operating System
imageUrlstring or nullformat: "uri"
Original URL from which the Operating System image can be retrieved
imageShastring or null

SHA hash of the image file, only present for image-based OS

imageAuthTypestring or null
Authentication type for image URL, e.g., 'Basic' or 'Bearer'
imageAuthTokenstring or null
Auth token to retrieve the image from image URL
imageDiskstring or null
Disk path where the image should be mounted
rootFsIdstring or null

Root filesystem UUID, only applicable for image-based Operating System

rootFsLabelstring or null

Root filesystem label, only applicable for image-based Operating System

ipxeScriptstring or null

iPXE script or URL, only applicable for iPXE-based Operating System

ipxeTemplateIdstring or null
ID of the iPXE template used, only present for Templated iPXE Operating System
ipxeTemplateParameterslist of objects

Parameters passed to the iPXE template (Templated iPXE only)

ipxeTemplateArtifactslist of objects

Artifacts for the iPXE OS definition (Templated iPXE only). authToken is redacted.

userDatastring or null
User data for the Operating System
isCloudInitboolean

Whether the Operating System is cloud-init based; true if there is non-empty userData, false otherwise.

phoneHomeEnabledboolean
Indicates whether the Phone Home service should be enabled or disabled for Operating System
isActiveboolean
Indicates if the Operating System is active
deactivationNotestring or null
Optional deactivation note if OS is inactive
allowOverrideboolean
Indicates if the user data can be overridden at Instance creation time
siteAssociationslist of objects
Sites the Operating System is synced to
statusenum
Status of the Operating System
statusHistorylist of objects
History of status changes over time
createddatetimeRead-only

Date/time when the Operating System was created

updateddatetimeRead-only

Date/time when the Operating System was updated

Errors

400
Bad Request Error
403
Forbidden Error