UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

458 lines (457 loc) 26.3 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ClouddeployCustomTargetTypeConfig extends cdktf.TerraformMetaArguments { /** * User annotations. These attributes can only be set and used by the user, and not by Cloud Deploy. See https://google.aip.dev/128#annotations for more details such as format and size limitations. * * **Note**: This field is non-authoritative, and will only manage the annotations present in your configuration. * Please refer to the field 'effective_annotations' for all of the annotations present on the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#annotations ClouddeployCustomTargetType#annotations} */ readonly annotations?: { [key: string]: string; }; /** * Description of the 'CustomTargetType'. Max length is 255 characters. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#description ClouddeployCustomTargetType#description} */ readonly description?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#id ClouddeployCustomTargetType#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Labels are attributes that can be set and used by both the user and by Cloud Deploy. Labels must meet the following constraints: * Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. * All characters must use UTF-8 encoding, and international characters are allowed. * Keys must start with a lowercase letter or international character. * Each resource is limited to a maximum of 64 labels. Both keys and values are additionally constrained to be <= 128 bytes. * * **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. * Please refer to the field 'effective_labels' for all of the labels present on the resource. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#labels ClouddeployCustomTargetType#labels} */ readonly labels?: { [key: string]: string; }; /** * The location of the source. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#location ClouddeployCustomTargetType#location} */ readonly location: string; /** * Name of the 'CustomTargetType'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#name ClouddeployCustomTargetType#name} */ readonly name: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#project ClouddeployCustomTargetType#project} */ readonly project?: string; /** * custom_actions block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#custom_actions ClouddeployCustomTargetType#custom_actions} */ readonly customActions?: ClouddeployCustomTargetTypeCustomActions; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#timeouts ClouddeployCustomTargetType#timeouts} */ readonly timeouts?: ClouddeployCustomTargetTypeTimeouts; } export interface ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit { /** * Relative path from the repository root to the Skaffold file. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#path ClouddeployCustomTargetType#path} */ readonly path?: string; /** * Git ref the package should be cloned from. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#ref ClouddeployCustomTargetType#ref} */ readonly ref?: string; /** * Git repository the package should be cloned from. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#repo ClouddeployCustomTargetType#repo} */ readonly repo: string; } export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGitToTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGitOutputReference | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit): any; export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGitToHclTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGitOutputReference | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit): any; export declare class ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGitOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit | undefined; set internalValue(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit | undefined); private _path?; get path(): string; set path(value: string); resetPath(): void; get pathInput(): string | undefined; private _ref?; get ref(): string; set ref(value: string); resetRef(): void; get refInput(): string | undefined; private _repo?; get repo(): string; set repo(value: string); get repoInput(): string | undefined; } export interface ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo { /** * Relative path from the repository root to the Skaffold file. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#path ClouddeployCustomTargetType#path} */ readonly path?: string; /** * Branch or tag to use when cloning the repository. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#ref ClouddeployCustomTargetType#ref} */ readonly ref?: string; /** * Cloud Build 2nd gen repository in the format of 'projects/<project>/locations/<location>/connections/<connection>/repositories/<repository>'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#repository ClouddeployCustomTargetType#repository} */ readonly repository: string; } export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepoToTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepoOutputReference | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo): any; export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepoToHclTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepoOutputReference | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo): any; export declare class ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepoOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo | undefined; set internalValue(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo | undefined); private _path?; get path(): string; set path(value: string); resetPath(): void; get pathInput(): string | undefined; private _ref?; get ref(): string; set ref(value: string); resetRef(): void; get refInput(): string | undefined; private _repository?; get repository(): string; set repository(value: string); get repositoryInput(): string | undefined; } export interface ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage { /** * Relative path from the source to the Skaffold file. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#path ClouddeployCustomTargetType#path} */ readonly path?: string; /** * Cloud Storage source paths to copy recursively. For example, providing 'gs://my-bucket/dir/configs/*' will result in Skaffold copying all files within the 'dir/configs' directory in the bucket 'my-bucket'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#source ClouddeployCustomTargetType#source} */ readonly source: string; } export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorageToTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorageOutputReference | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage): any; export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorageToHclTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorageOutputReference | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage): any; export declare class ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorageOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage | undefined; set internalValue(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage | undefined); private _path?; get path(): string; set path(value: string); resetPath(): void; get pathInput(): string | undefined; private _source?; get source(): string; set source(value: string); get sourceInput(): string | undefined; } export interface ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules { /** * The Skaffold Config modules to use from the specified source. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#configs ClouddeployCustomTargetType#configs} */ readonly configs?: string[]; /** * git block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#git ClouddeployCustomTargetType#git} */ readonly git?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit; /** * google_cloud_build_repo block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#google_cloud_build_repo ClouddeployCustomTargetType#google_cloud_build_repo} */ readonly googleCloudBuildRepo?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo; /** * google_cloud_storage block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#google_cloud_storage ClouddeployCustomTargetType#google_cloud_storage} */ readonly googleCloudStorage?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage; } export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesToTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules | cdktf.IResolvable): any; export declare function clouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesToHclTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules | cdktf.IResolvable): any; export declare class ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules | cdktf.IResolvable | undefined; set internalValue(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules | cdktf.IResolvable | undefined); private _configs?; get configs(): string[]; set configs(value: string[]); resetConfigs(): void; get configsInput(): string[] | undefined; private _git; get git(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGitOutputReference; putGit(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit): void; resetGit(): void; get gitInput(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGit | undefined; private _googleCloudBuildRepo; get googleCloudBuildRepo(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepoOutputReference; putGoogleCloudBuildRepo(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo): void; resetGoogleCloudBuildRepo(): void; get googleCloudBuildRepoInput(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudBuildRepo | undefined; private _googleCloudStorage; get googleCloudStorage(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorageOutputReference; putGoogleCloudStorage(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage): void; resetGoogleCloudStorage(): void; get googleCloudStorageInput(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesGoogleCloudStorage | undefined; } export declare class ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesOutputReference; } export interface ClouddeployCustomTargetTypeCustomActions { /** * The Skaffold custom action responsible for deploy operations. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#deploy_action ClouddeployCustomTargetType#deploy_action} */ readonly deployAction: string; /** * The Skaffold custom action responsible for render operations. If not provided then Cloud Deploy will perform the render operations via 'skaffold render'. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#render_action ClouddeployCustomTargetType#render_action} */ readonly renderAction?: string; /** * include_skaffold_modules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#include_skaffold_modules ClouddeployCustomTargetType#include_skaffold_modules} */ readonly includeSkaffoldModules?: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules[] | cdktf.IResolvable; } export declare function clouddeployCustomTargetTypeCustomActionsToTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsOutputReference | ClouddeployCustomTargetTypeCustomActions): any; export declare function clouddeployCustomTargetTypeCustomActionsToHclTerraform(struct?: ClouddeployCustomTargetTypeCustomActionsOutputReference | ClouddeployCustomTargetTypeCustomActions): any; export declare class ClouddeployCustomTargetTypeCustomActionsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ClouddeployCustomTargetTypeCustomActions | undefined; set internalValue(value: ClouddeployCustomTargetTypeCustomActions | undefined); private _deployAction?; get deployAction(): string; set deployAction(value: string); get deployActionInput(): string | undefined; private _renderAction?; get renderAction(): string; set renderAction(value: string); resetRenderAction(): void; get renderActionInput(): string | undefined; private _includeSkaffoldModules; get includeSkaffoldModules(): ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModulesList; putIncludeSkaffoldModules(value: ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules[] | cdktf.IResolvable): void; resetIncludeSkaffoldModules(): void; get includeSkaffoldModulesInput(): cdktf.IResolvable | ClouddeployCustomTargetTypeCustomActionsIncludeSkaffoldModules[] | undefined; } export interface ClouddeployCustomTargetTypeTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#create ClouddeployCustomTargetType#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#delete ClouddeployCustomTargetType#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#update ClouddeployCustomTargetType#update} */ readonly update?: string; } export declare function clouddeployCustomTargetTypeTimeoutsToTerraform(struct?: ClouddeployCustomTargetTypeTimeouts | cdktf.IResolvable): any; export declare function clouddeployCustomTargetTypeTimeoutsToHclTerraform(struct?: ClouddeployCustomTargetTypeTimeouts | cdktf.IResolvable): any; export declare class ClouddeployCustomTargetTypeTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ClouddeployCustomTargetTypeTimeouts | cdktf.IResolvable | undefined; set internalValue(value: ClouddeployCustomTargetTypeTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string | undefined; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string | undefined; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type google_clouddeploy_custom_target_type} */ export declare class ClouddeployCustomTargetType extends cdktf.TerraformResource { static readonly tfResourceType = "google_clouddeploy_custom_target_type"; /** * Generates CDKTF code for importing a ClouddeployCustomTargetType resource upon running "cdktf plan <stack-name>" * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the ClouddeployCustomTargetType to import * @param importFromId The id of the existing ClouddeployCustomTargetType that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ClouddeployCustomTargetType to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource; /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.13.0/docs/resources/clouddeploy_custom_target_type google_clouddeploy_custom_target_type} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options ClouddeployCustomTargetTypeConfig */ constructor(scope: Construct, id: string, config: ClouddeployCustomTargetTypeConfig); private _annotations?; get annotations(): { [key: string]: string; }; set annotations(value: { [key: string]: string; }); resetAnnotations(): void; get annotationsInput(): { [key: string]: string; } | undefined; get createTime(): string; get customTargetTypeId(): string; private _description?; get description(): string; set description(value: string); resetDescription(): void; get descriptionInput(): string | undefined; private _effectiveAnnotations; get effectiveAnnotations(): cdktf.StringMap; private _effectiveLabels; get effectiveLabels(): cdktf.StringMap; get etag(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _labels?; get labels(): { [key: string]: string; }; set labels(value: { [key: string]: string; }); resetLabels(): void; get labelsInput(): { [key: string]: string; } | undefined; private _location?; get location(): string; set location(value: string); get locationInput(): string | undefined; private _name?; get name(): string; set name(value: string); get nameInput(): string | undefined; private _project?; get project(): string; set project(value: string); resetProject(): void; get projectInput(): string | undefined; private _terraformLabels; get terraformLabels(): cdktf.StringMap; get uid(): string; get updateTime(): string; private _customActions; get customActions(): ClouddeployCustomTargetTypeCustomActionsOutputReference; putCustomActions(value: ClouddeployCustomTargetTypeCustomActions): void; resetCustomActions(): void; get customActionsInput(): ClouddeployCustomTargetTypeCustomActions | undefined; private _timeouts; get timeouts(): ClouddeployCustomTargetTypeTimeoutsOutputReference; putTimeouts(value: ClouddeployCustomTargetTypeTimeouts): void; resetTimeouts(): void; get timeoutsInput(): cdktf.IResolvable | ClouddeployCustomTargetTypeTimeouts | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }