資源:Rollout
代表單一推出作業及其結果
| JSON 表示法 |
|---|
{ "name": string, "release": string, "flagRelease": string, "startTime": string, "endTime": string, "state": enum ( |
| 欄位 | |
|---|---|
name |
ID。資源名稱 (資源的完整 URI),遵循標準命名架構: "projects/{project}/locations/{location}/rollout/{rolloutId}" |
release |
選用。不可變動。要向目標裝置推出的版本名稱。如未指定其他發行類型,則必須提供這項資訊。 |
flagRelease |
選用。不可變動。要推出至目標單元的 FlagRelease 名稱。「Release」和「FlagRelease」互斥。 |
startTime |
選用。僅供輸出。推出作業開始執行的時間。如果尚未開始推出,這個欄位會是空白。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
endTime |
選用。僅供輸出。推出作業完成執行的時間 (無論成功、失敗或取消)。如果推出作業尚未完成,這個欄位會是空白。設定完成後,推出作業即處於終端狀態,所有結果皆為最終結果。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
state |
僅供輸出。推出更新的目前狀態。 |
stateMessage |
僅供輸出。使用者可理解的訊息,指出上次狀態轉換的詳細資料。 |
stateTransitionTime |
選用。僅供輸出。推出作業轉換為目前狀態的時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
rootRollout |
選用。僅供輸出。這項推出作業的根推出作業。資源名稱 (資源的完整 URI),遵循標準命名架構: "projects/{project}/locations/{location}/rollouts/{rolloutId}" |
parentRollout |
選用。僅供輸出。這項推出作業的直接父項推出作業。資源名稱 (資源的完整 URI),遵循標準命名架構: "projects/{project}/locations/{location}/rollouts/{rolloutId}" |
rolloutOrchestrationStrategy |
選用。執行這項推出作業時採用的策略。這項策略會覆寫 RolloutKind 中指定的任何策略。如未在建立時指定,系統會使用 RolloutKind 的策略。 有兩種支援的值策略可用於控制:「Google.Cloud.Simple.AllAtOnce」和「Google.Cloud.Simple.OneLocationAtATime」。 如果採用其中一種簡單策略推出,系統會將目標 UnitKind 的 SaaS 位置定義的所有位置都納入推出範圍。 |
unitFilter |
選用。針對單元的 CEL(https://github.com/google/cel-spec) 格式化篩選器字串。系統會套用篩選條件,判斷符合資格的單位人口。這個篩選器只能縮小推出範圍,無法擴大。如未提供,系統會使用 RolloutKind 中的 unitFilter。 |
rolloutKind |
這是必要旗標,不可變動。這項推出作業所衍生及遵循的 RolloutKind 名稱。 |
stats |
選用。僅供輸出。推出作業的進度詳細資料。 |
control |
選用。要求變更這項推出作業的執行方式。預設 RolloutControl.action 為 ROLLOUT_ACTION_RUN,表示系統會執行發布作業,直到完成為止,並逐步完成所有自然發布狀態 (例如 RUNNING -> SUCCEEDED 或 RUNNING -> FAILED)。只有在推出作業處於非終止狀態時,才能提出要求。 |
effectiveUnitFilter |
選用。僅供輸出。僅輸出推出作業開始時的有效單元篩選條件快照。包含由 Rollout.unit_filter 和 RolloutKind.unit_filter 的連詞組成的 CEL(https://github.com/google/cel-spec) 運算式。這個欄位會擷取 Rollout 套用的篩選器,以判斷 Unit 母體。如果相關聯的 RolloutKind 的 unitFilter 在推出作業開始後經過修改,這裡不會更新。 |
labels |
選用。資源上的標籤,可用於分類,類似於 Kubernetes 資源標籤。 包含 |
annotations |
選用。註解是與資源一起儲存的非結構化鍵/值對應,外部工具可能會設定註解,用來儲存及擷取任意中繼資料。這些屬性無法查詢,修改物件時應保留這些屬性。 詳情請參閱:https://kubernetes.io/docs/user-guide/annotations 包含 |
uid |
僅供輸出。資源專屬識別碼。在服務範圍內,這項資源適用的時間和空間中,UID 是獨一無二的。UID 通常是由伺服器在成功建立資源時產生,且不可變更。資源名稱會重複使用,因此您可以使用 UID 明確識別資源。這應為 UUID4。 |
etag |
僅供輸出。能明確識別版本或產生資源的不透明值。可用來確認用戶端和伺服器同意寫入資源的順序。 |
createTime |
僅供輸出。資源的建立時間戳記。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
updateTime |
僅供輸出。資源上次更新時間的時間戳記。如果使用者對資源做了任何變更,系統就會更新這個值。如果服務對資源做了變更,系統也會更新這個值。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
deleteTime |
僅供輸出。資源標示為待刪除的時間戳記 (刪除作業為非同步作業)。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例: |
RolloutState
推出作業的目前狀態。
| 列舉 | |
|---|---|
ROLLOUT_STATE_UNSPECIFIED |
未指定狀態。 |
ROLLOUT_STATE_RUNNING |
正在推出。 |
ROLLOUT_STATE_PAUSED |
已暫停發布。 |
ROLLOUT_STATE_SUCCEEDED |
發布作業順利完成。 |
ROLLOUT_STATE_FAILED |
推出失敗。 |
ROLLOUT_STATE_CANCELLED |
已取消推出作業。 |
ROLLOUT_STATE_WAITING |
推出作業正在等待符合特定條件,才會開始。 |
ROLLOUT_STATE_CANCELLING |
正在取消推出作業。 |
ROLLOUT_STATE_RESUMING |
系統正在恢復推出。 |
ROLLOUT_STATE_PAUSING |
已暫停推出。 |
RolloutStats
RolloutStats 包含推出作業的進度資訊。
| JSON 表示法 |
|---|
{
"operationsByState": [
{
object ( |
| 欄位 | |
|---|---|
operationsByState[] |
選用。僅供輸出。未排序的清單。由推出作業觸發的作業進度明細。依狀態提供作業數量。這項資訊可用於判斷已更新或預計更新的裝置數量。 每個群組最多只能有一筆記錄。作業群組可能的值包括:-「SCHEDULED」-「PENDING」-「RUNNING」-「SUCCEEDED」-「FAILED」-「CANCELLED」 |
estimatedTotalUnitCount |
選用。僅供輸出。預估單位數。系統會在建立推出作業時計算預估值。 |
匯總
代表一組類似記錄的母體,依特定群組匯總而成。舉例來說,您可以匯總一組單元計數,並依狀態分組。
| JSON 表示法 |
|---|
{ "group": string, "count": integer } |
| 欄位 | |
|---|---|
group |
這是必要旗標,要匯總的分組依據。 |
count |
這是必要旗標,群組中的記錄數。 |
RolloutControl
RolloutControl 提供暫停或取消 Rollout 的方式,藉此要求變更 Rollout 的執行作業。
| JSON 表示法 |
|---|
{ "action": enum ( |
| 欄位 | |
|---|---|
action |
這是必要旗標,要對推出作業執行的動作。預設行為是執行推出作業,直到自然達到終止狀態為止。 |
聯集欄位 action_params。動作設定。設定必須符合動作,例如:action=RUN 只能設定 run_params 或省略所有參數。如果設定不適用於動作,就會發生錯誤。action_params 只能是下列其中一個設定: |
|
runParams |
選用。RUN 動作的參數。如果 RolloutAction 未設為 RUN,指定此值會發生錯誤。根據預設,推出作業會在繼續執行時重試失敗的作業。 |
RunRolloutActionParams
RUN 動作的參數,可控制從 PAUSED 狀態繼續推出時的行為。
| JSON 表示法 |
|---|
{ "retryFailedOperations": boolean } |
| 欄位 | |
|---|---|
retryFailedOperations |
這是必要旗標,如為 true,推出作業會在繼續執行時重試失敗的作業。只有在目前推出狀態為「已暫停」且要求動作為「執行」時,才適用這項設定。 |
RolloutAction
RolloutAction 會指出要對 Rollout 執行的動作。
| 列舉 | |
|---|---|
ROLLOUT_ACTION_UNSPECIFIED |
未指定動作,預設會視為 RUN。 |
ROLLOUT_ACTION_RUN |
執行 Rollout,直到自然達到終止狀態為止。要求執行的推出作業會經歷所有自然推出狀態 (例如 RUNNING -> SUCCEEDED 或 RUNNING -> FAILED)。如果在推出期間發生可重試的錯誤,系統預設會暫停推出作業,只要重新要求這項 RUN 動作,即可繼續推出。 |
ROLLOUT_ACTION_PAUSE |
暫停推出作業,直到恢復為止 (即要求 RUN)。 |
ROLLOUT_ACTION_CANCEL |
永久取消推出作業。 |
方法 |
|
|---|---|
|
建立新的推出作業。 |
|
刪除單一推出作業。 |
|
擷取單一推出作業。 |
|
擷取一系列推出作業。 |
|
更新單一發布內容。 |