@pulumiverse/cpln
Version:
A Pulumi package for creating and managing Control Plane (cpln) resources.
177 lines (176 loc) • 6.33 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
export declare class Policy extends pulumi.CustomResource {
/**
* Get an existing Policy resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PolicyState, opts?: pulumi.CustomResourceOptions): Policy;
/**
* Returns true if the given object is an instance of Policy. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is Policy;
/**
* The association between a target kind and the bound permissions to service principals.
*/
readonly bindings: pulumi.Output<outputs.PolicyBinding[] | undefined>;
/**
* The ID, in GUID format, of the Policy.
*/
readonly cplnId: pulumi.Output<string>;
/**
* Description of the Policy.
*/
readonly description: pulumi.Output<string>;
/**
* The GVC for `identity`, `workload` and `volumeset` target kinds only.
*/
readonly gvc: pulumi.Output<string | undefined>;
/**
* Name of the Policy.
*/
readonly name: pulumi.Output<string>;
/**
* Origin of the Policy. Either `builtin` or `default`.
*/
readonly origin: pulumi.Output<string>;
/**
* Full link to this resource. Can be referenced by other resources.
*/
readonly selfLink: pulumi.Output<string>;
/**
* Key-value map of resource tags.
*/
readonly tags: pulumi.Output<{
[key: string]: string;
}>;
/**
* Set this value of this attribute to `all` if this policy should target all objects of the given target_kind. Otherwise, do not include the attribute.
*/
readonly target: pulumi.Output<string | undefined>;
/**
* The kind of resource to target (e.g., gvc, serviceaccount, etc.).
*/
readonly targetKind: pulumi.Output<string>;
/**
* List of the targets this policy will be applied to. Not used if `target` is set to `all`.
*/
readonly targetLinks: pulumi.Output<string[] | undefined>;
/**
* A defined set of criteria or conditions used to identify the target entities or resources to which the policy applies.
*/
readonly targetQuery: pulumi.Output<outputs.PolicyTargetQuery | undefined>;
/**
* Create a Policy resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: PolicyArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Policy resources.
*/
export interface PolicyState {
/**
* The association between a target kind and the bound permissions to service principals.
*/
bindings?: pulumi.Input<pulumi.Input<inputs.PolicyBinding>[]>;
/**
* The ID, in GUID format, of the Policy.
*/
cplnId?: pulumi.Input<string>;
/**
* Description of the Policy.
*/
description?: pulumi.Input<string>;
/**
* The GVC for `identity`, `workload` and `volumeset` target kinds only.
*/
gvc?: pulumi.Input<string>;
/**
* Name of the Policy.
*/
name?: pulumi.Input<string>;
/**
* Origin of the Policy. Either `builtin` or `default`.
*/
origin?: pulumi.Input<string>;
/**
* Full link to this resource. Can be referenced by other resources.
*/
selfLink?: pulumi.Input<string>;
/**
* Key-value map of resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Set this value of this attribute to `all` if this policy should target all objects of the given target_kind. Otherwise, do not include the attribute.
*/
target?: pulumi.Input<string>;
/**
* The kind of resource to target (e.g., gvc, serviceaccount, etc.).
*/
targetKind?: pulumi.Input<string>;
/**
* List of the targets this policy will be applied to. Not used if `target` is set to `all`.
*/
targetLinks?: pulumi.Input<pulumi.Input<string>[]>;
/**
* A defined set of criteria or conditions used to identify the target entities or resources to which the policy applies.
*/
targetQuery?: pulumi.Input<inputs.PolicyTargetQuery>;
}
/**
* The set of arguments for constructing a Policy resource.
*/
export interface PolicyArgs {
/**
* The association between a target kind and the bound permissions to service principals.
*/
bindings?: pulumi.Input<pulumi.Input<inputs.PolicyBinding>[]>;
/**
* Description of the Policy.
*/
description?: pulumi.Input<string>;
/**
* The GVC for `identity`, `workload` and `volumeset` target kinds only.
*/
gvc?: pulumi.Input<string>;
/**
* Name of the Policy.
*/
name?: pulumi.Input<string>;
/**
* Key-value map of resource tags.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* Set this value of this attribute to `all` if this policy should target all objects of the given target_kind. Otherwise, do not include the attribute.
*/
target?: pulumi.Input<string>;
/**
* The kind of resource to target (e.g., gvc, serviceaccount, etc.).
*/
targetKind: pulumi.Input<string>;
/**
* List of the targets this policy will be applied to. Not used if `target` is set to `all`.
*/
targetLinks?: pulumi.Input<pulumi.Input<string>[]>;
/**
* A defined set of criteria or conditions used to identify the target entities or resources to which the policy applies.
*/
targetQuery?: pulumi.Input<inputs.PolicyTargetQuery>;
}