REST Resource: projects.locations.unitOperations

資源:UnitOperation

UnitOperation 會封裝變更/與特定單元代表的服務元件互動的意圖。您可以建立 (要求) 多個 UnitOperation,並排定在日後執行,但一次只能執行一個 (非突變作業日後可能會變更)。

UnitOperation 可讓與同一單元互動的不同參與者,只專注於他們要求變更的內容。

這是基本物件,內含所有單元作業的通用欄位。Next:22

JSON 表示法
{
  "name": string,
  "unit": string,
  "parentUnitOperation": string,
  "rollout": string,
  "cancel": boolean,
  "state": enum (UnitOperationState),
  "conditions": [
    {
      object (UnitOperationCondition)
    }
  ],
  "schedule": {
    object (Schedule)
  },
  "engineState": string,
  "errorCategory": enum (UnitOperationErrorCategory),
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,

  // Union field unit_operation_type can be only one of the following:
  "provision": {
    object (Provision)
  },
  "upgrade": {
    object (Upgrade)
  },
  "deprovision": {
    object (Deprovision)
  }
  // End of list of possible types for union field unit_operation_type.
}
欄位
name

string

ID。資源名稱 (資源的完整 URI),遵循標準命名架構:

"projects/{project}/locations/{location}/unitOperations/{unitOperation}"

unit

string

這是必要旗標,不可變動。指定 UnitOperation 將作用的 Unit。

parentUnitOperation

string

選用。父項資源參照:UnitOperation。如果作業需要在工作流程中建立其他作業,每個子項作業都應將這個欄位設為父項。這可用於追蹤。(選填)

rollout

string

選用。指定哪個推出作業建立了這個單元作業。這項資訊無法修改,僅用於篩選。如果依附單元和單元作業是做為其他單元作業的一部分建立,則會使用相同的 rolloutId。

cancel

boolean

選用。如果為 true,請嘗試取消作業。如果作業正在執行,取消作業可能會失敗。(選填)

state

enum (UnitOperationState)

選用。僅供輸出。UnitOperationState 會說明單元作業的目前狀態。

conditions[]

object (UnitOperationCondition)

選用。僅供輸出。一組條件,指出這個資源可能擁有的各種條件。

schedule

object (Schedule)

選用。排定這項作業的時間。

engineState

string

選用。僅供輸出。正在進行的部署引擎作業引擎狀態。這個欄位不開放外部使用。

errorCategory

enum (UnitOperationErrorCategory)

選用。僅供輸出。UnitOperationErrorCategory 說明錯誤類別。

labels

map (key: string, value: string)

選用。資源上的標籤,可用於分類,類似於 Kubernetes 資源標籤。

包含 "key": value 組合清單的物件,範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

annotations

map (key: string, value: string)

選用。註解是與資源一起儲存的非結構化鍵/值對應,外部工具可能會設定註解,用來儲存及擷取任意中繼資料。這些屬性無法查詢,修改物件時應保留這些屬性。

詳情請參閱:https://kubernetes.io/docs/user-guide/annotations

包含 "key": value 組合清單的物件,例如 { "name": "wrench", "mass": "1.3kg", "count": "3" }

uid

string

僅供輸出。資源專屬識別碼。在服務範圍內,這項資源適用的時間和空間中,UID 是獨一無二的。UID 通常是由伺服器在成功建立資源時產生,且不可變更。資源名稱會重複使用,因此您可以使用 UID 明確識別資源。這應為 UUID4。

etag

string

僅供輸出。能明確識別版本或產生資源的不透明值。可用來確認用戶端和伺服器同意寫入資源的順序。

createTime

string (Timestamp format)

僅供輸出。資源的建立時間戳記。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

僅供輸出。資源上次更新時間的時間戳記。如果使用者對資源做了任何變更,系統就會更新這個值。如果服務對資源做了變更,系統也會更新這個值。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

deleteTime

string (Timestamp format)

僅供輸出。資源標示為待刪除的時間戳記 (刪除作業為非同步作業)。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

聯集欄位 unit_operation_type

unit_operation_type 只能是下列其中一項:

provision

object (Provision)

upgrade

object (Upgrade)

deprovision

object (Deprovision)

佈建

佈建是單元作業,可佈建單元代表的基礎資源。只有在裝置目前未佈建服務時才能執行。

JSON 表示法
{
  "release": string,
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ]
}
欄位
release

string

選用。用於單位的 Release 物件參照。(選用)。

inputVariables[]

object (UnitVariable)

選用。一組輸入變數。最多 100 個。(選填)

升級

升級是升級已佈建單元的單元作業,其中可能也包括以單元表示的基礎資源。只有在目前已佈建裝置時才能執行。

JSON 表示法
{
  "release": string,
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ]
}
欄位
release

string

選用。用於單位的 Release 物件參照。(選用)。

inputVariables[]

object (UnitVariable)

選用。一組輸入變數。最多 100 個。(選填)

取消佈建

這個類型沒有任何欄位。

取消佈建是單元作業,會取消佈建單元代表的基礎資源。只有在目前已佈建裝置時才能執行。

UnitOperationState

UnitOperationState 會說明單元作業的目前狀態。

列舉
UNIT_OPERATION_STATE_UNKNOWN
UNIT_OPERATION_STATE_PENDING 裝置作業已接受,但尚未準備就緒。
UNIT_OPERATION_STATE_SCHEDULED 系統已接受並排定單元作業。
UNIT_OPERATION_STATE_RUNNING 單元作業正在執行中。
UNIT_OPERATION_STATE_SUCCEEDED 單元作業已順利完成。
UNIT_OPERATION_STATE_FAILED 單位作業失敗。
UNIT_OPERATION_STATE_CANCELLED 已取消單位作業。

UnitOperationCondition

UnitOperationCondition 說明單元作業的狀態。UnitOperationCondition 是構成整體狀態的個別元件。

JSON 表示法
{
  "status": enum (Status),
  "type": enum (Type),
  "lastTransitionTime": string,
  "message": string,
  "reason": string
}
欄位
status

enum (Status)

這是必要旗標,條件的狀態。

type

enum (Type)

這是必要旗標,條件類型。

lastTransitionTime

string (Timestamp format)

這是必要旗標,條件最近一次從一個狀態轉變為另一個狀態的時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

message

string

這是必要旗標,使用者可理解的訊息,指出最近一次轉換的詳細資料。

reason

string

這是必要旗標,條件上次轉換的簡要原因。

狀態

列舉條件狀態。

列舉
STATUS_UNSPECIFIED 未指定條件狀態。
STATUS_UNKNOWN 條件符合狀態不明。
STATUS_TRUE 條件為 true。
STATUS_FALSE 條件為 false。

類型

條件類型列舉。

列舉
TYPE_UNSPECIFIED 未指定條件類型。
TYPE_SCHEDULED 已安排好條件類型。
TYPE_RUNNING 條件類型為「執行中」。
TYPE_SUCCEEDED 條件類型為成功。
TYPE_CANCELLED 條件類型已取消。
TYPE_APP_CREATED 指出是否已建立 App Hub 應用程式。
TYPE_APP_COMPONENTS_REGISTERED 指出服務和工作負載是否已向 AppHub 註冊。

排程

排定維護作業的時間規格。

JSON 表示法
{
  "startTime": string
}
欄位
startTime

string (Timestamp format)

選用。作業開始時間。如果未設定,系統會將其設為下一個視窗的開頭。(選填)

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

UnitOperationErrorCategory

UnitOperationErrorCategory 說明單元作業的錯誤類別。

列舉
UNIT_OPERATION_ERROR_CATEGORY_UNSPECIFIED 未指定單元作業錯誤類別
NOT_APPLICABLE 單元作業錯誤類別不適用,或不是錯誤
FATAL 單元作業錯誤類別為嚴重錯誤
RETRIABLE 單元作業錯誤類別可重試
IGNORABLE 可忽略的單元作業錯誤類別
STANDARD 單元作業錯誤類別為標準,計入推出作業錯誤預算

方法

create

建立新的單位作業。

delete

刪除單一單元作業。

get

擷取單一單元作業。

list

擷取一系列單位作業。

patch

更新單一單元作業。