REST Resource: projects.locations.unitOperations

リソース: UnitOperation

UnitOperation は、特定の Unit で表されるサービス コンポーネントの変更/操作の意図をカプセル化します。複数の UnitOperation を作成(リクエスト)して将来のスケジュールを設定できますが、一度に実行できるのは 1 つだけです(非ミューテーション オペレーションの場合、将来変更される可能性があります)。

UnitOperations を使用すると、同じユニットを操作するさまざまなアクターが、リクエストした変更のみに集中できます。

これは、すべての単位オペレーションの共通フィールドを含む基本オブジェクトです。次: 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)

省略可。アノテーションは、任意のメタデータを保存して取得するため、外部ツールによって設定される可能性のあるリソースとともに保存される非構造化 Key-Value マップです。クエリは実行可能ではなく、オブジェクトを変更する際に保持する必要があります。

詳細: https://kubernetes.io/docs/user-guide/annotations

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

uid

string

出力専用。リソースの一意の識別子。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)

プロビジョニング

プロビジョニングは、Unit で表される基盤となるリソースをプロビジョニングするユニット オペレーションです。ユニットが現在プロビジョニングされていない場合にのみ実行できます。

JSON 表現
{
  "release": string,
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ]
}
フィールド
release

string

省略可。Unit に使用する Release オブジェクトへの参照。(省略可)

inputVariables[]

object (UnitVariable)

省略可。入力変数のセット。最大 100。(省略可)

アップグレード

アップグレードは、プロビジョニングされたユニットをアップグレードするユニット オペレーションです。これには、Unit で表される基盤となるリソースも含まれる場合があります。Unit が現在プロビジョニングされている場合にのみ実行できます。

JSON 表現
{
  "release": string,
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ]
}
フィールド
release

string

省略可。Unit に使用する Release オブジェクトへの参照。(省略可)

inputVariables[]

object (UnitVariable)

省略可。入力変数のセット。最大 100。(省略可)

デプロビジョニング

この型にはフィールドがありません。

プロビジョニング解除は、Unit で表される基盤となるリソースのプロビジョニングを解除するユニット オペレーションです。Unit が現在プロビジョニングされている場合にのみ実行できます。

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 AppHub アプリが作成されているかどうかを示します。
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

単一のユニット オペレーションを更新します。