REST Resource: projects.locations.customTargetTypes

リソース: CustomTargetType

Cloud Deploy API の CustomTargetType リソース。

CustomTargetType は、サポートされているランタイム以外のシステムへのデプロイを容易にするために Target で参照できるカスタム ターゲットのタイプを定義します。

JSON 表現
{
  "name": string,
  "customTargetTypeId": string,
  "uid": string,
  "description": string,
  "annotations": {
    string: string,
    ...
  },
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,

  // Union field definition can be only one of the following:
  "customActions": {
    object (CustomTargetSkaffoldActions)
  }
  // End of list of possible types for union field definition.
}
フィールド
name

string

省略可。CustomTargetType の名前。形式は projects/{project}/locations/{location}/customTargetTypes/{customTargetType} です。customTargetType コンポーネントは [a-z]([a-z0-9-]{0,61}[a-z0-9])? と一致する必要があります。

customTargetTypeId

string

出力専用。CustomTargetType のリソース ID。

uid

string

出力専用。CustomTargetType の固有識別子。

description

string

省略可。CustomTargetType の説明。最大長は 255 文字です。

annotations

map (key: string, value: string)

省略可。ユーザー アノテーション。これらの属性はユーザーのみが設定、使用できます。Cloud Deploy は設定、使用することはできません。形式やサイズの制限などの詳細については、https://google.aip.dev/128#annotations をご覧ください。

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

labels

map (key: string, value: string)

省略可。ラベルは、ユーザーと Cloud Deploy の両方が設定して使用できる属性です。ラベルは次の制約を満たしている必要があります。

  • キーと値には、小文字、数字、アンダースコア、ダッシュのみを使用できます。
  • すべての文字は UTF-8 でエンコードする必要があります。国際文字も使用できます。
  • キーは、小文字または国際文字で始める必要があります。
  • 各リソースは最大 64 個のラベルに制限されます。

さらに、キーと値の両方が 128 バイト以下に制限されます。

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

createTime

string (Timestamp format)

出力専用。CustomTargetType が作成された時刻。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

出力専用。CustomTargetType が最後に更新された時刻。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

etag

string

省略可。このチェックサムは、他のフィールドの値に基づいてサーバーによって計算されて、更新リクエストと削除リクエストで送信され、続行する前にクライアントが最新の値を持っていることを確認できます。

共用体フィールド definitionCustomTargetType レンダラとデプロイツールを定義します。definition は次のいずれかになります。
customActions

object (CustomTargetSkaffoldActions)

Skaffold カスタム アクションを使用して CustomTargetType のレンダリングとデプロイを構成します。

CustomTargetSkaffoldActions

CustomTargetSkaffoldActions Skaffold カスタム アクションを使用した CustomTargetType 構成を表します。

JSON 表現
{
  "renderAction": string,
  "deployAction": string,
  "includeSkaffoldModules": [
    {
      object (SkaffoldModules)
    }
  ]
}
フィールド
renderAction

string

省略可。レンダリング オペレーションを担当する Skaffold カスタム アクション。指定しない場合、Cloud Deploy は skaffold render を介してレンダリング オペレーションを実行します。

deployAction

string

必須。デプロイ オペレーションを担当する Skaffold カスタム アクション。

includeSkaffoldModules[]

object (SkaffoldModules)

省略可。診断を実行する前に、必要に応じて Cloud Deploy が Skaffold Config に含める Skaffold モジュールのリスト。

SkaffoldModules

Skaffold Config モジュールとそのリモートソース。

JSON 表現
{
  "configs": [
    string
  ],

  // Union field source can be only one of the following:
  "git": {
    object (SkaffoldGitSource)
  },
  "googleCloudStorage": {
    object (SkaffoldGCSSource)
  },
  "googleCloudBuildRepo": {
    object (SkaffoldGCBRepoSource)
  }
  // End of list of possible types for union field source.
}
フィールド
configs[]

string

省略可。指定したソースから使用する Skaffold Config モジュール。

共用体フィールド source。Skaffold Config モジュールを含むソース。source は次のいずれかになります。
git

object (SkaffoldGitSource)

Skaffold Config モジュールを含むリモート git リポジトリ。

googleCloudStorage

object (SkaffoldGCSSource)

Skaffold Config モジュールを含む Cloud Storage バケット。

googleCloudBuildRepo

object (SkaffoldGCBRepoSource)

Skaffold Config モジュールを含む Cloud Build V2 リポジトリ。

SkaffoldGitSource

Skaffold Config モジュールを含む Git リポジトリ。

JSON 表現
{
  "repo": string,
  "path": string,
  "ref": string
}
フィールド
repo

string

必須。パッケージのクローンを作成する Git リポジトリ。

path

string

省略可。リポジトリのルートから Skaffold ファイルへの相対パス。

ref

string

省略可。リポジトリのクローンを作成するときに使用する Git ブランチまたはタグ。

SkaffoldGCSSource

Skaffold Config モジュールを含む Cloud Storage バケット。

JSON 表現
{
  "source": string,
  "path": string
}
フィールド
source

string

必須。再帰的にコピーする Cloud Storage ソースパス。たとえば、"gs://my-bucket/dir/configs/*" を指定すると、Skaffold はバケット "my-bucket" の "dir/configs" ディレクトリにあるすべてのファイルをコピーします。

path

string

省略可。ソースから Skaffold ファイルへの相対パス。

SkaffoldGCBRepoSource

Skaffold 構成を含む Cloud Build V2 リポジトリ。

JSON 表現
{
  "repository": string,
  "path": string,
  "ref": string
}
フィールド
repository

string

必須。Cloud Build V2 リポジトリの名前。形式は projects/{project}/locations/{location}/connections/{connection}/repositories/{repository} です。

path

string

省略可。リポジトリのルートから Skaffold 構成ファイルへの相対パス。

ref

string

省略可。リポジトリのクローンを作成するときに使用するブランチまたはタグ。

メソッド

create

指定されたプロジェクトとロケーションで新しい CustomTargetType を作成します。

delete

単一の CustomTargetType を削除します。

get

単一の CustomTargetType の詳細を取得します。

getIamPolicy

リソースのアクセス制御ポリシーを取得します。

list

指定されたプロジェクトとロケーションの CustomTargetTypes を一覧表示します。

patch

1 つの CustomTargetType を更新します。

setIamPolicy

指定したリソースにアクセス制御ポリシーを設定します。