CapabilityArgs

data class CapabilityArgs(val capabilityName: Output<String>? = null, val parent: Output<String>? = null, val value: Output<Boolean>? = null) : ConvertibleToJava<CapabilityArgs>

Example Usage

Resource Manager Capability

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
import * as time from "@pulumi/time";
const folder = new gcp.organizations.Folder("folder", {
displayName: "my-folder",
parent: "organizations/123456789",
deletionProtection: false,
});
const wait60s = new time.index.Sleep("wait_60s", {createDuration: "60s"}, {
dependsOn: [folder],
});
const capability = new gcp.resourcemanager.Capability("capability", {
value: true,
parent: folder.name,
capabilityName: "app-management",
}, {
dependsOn: [wait60s],
});
import pulumi
import pulumi_gcp as gcp
import pulumi_time as time
folder = gcp.organizations.Folder("folder",
display_name="my-folder",
parent="organizations/123456789",
deletion_protection=False)
wait60s = time.index.Sleep("wait_60s", create_duration=60s,
opts = pulumi.ResourceOptions(depends_on=[folder]))
capability = gcp.resourcemanager.Capability("capability",
value=True,
parent=folder.name,
capability_name="app-management",
opts = pulumi.ResourceOptions(depends_on=[wait60s]))
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
using Time = Pulumi.Time;
return await Deployment.RunAsync(() =>
{
var folder = new Gcp.Organizations.Folder("folder", new()
{
DisplayName = "my-folder",
Parent = "organizations/123456789",
DeletionProtection = false,
});
var wait60s = new Time.Index.Sleep("wait_60s", new()
{
CreateDuration = "60s",
}, new CustomResourceOptions
{
DependsOn =
{
folder,
},
});
var capability = new Gcp.ResourceManager.Capability("capability", new()
{
Value = true,
Parent = folder.Name,
CapabilityName = "app-management",
}, new CustomResourceOptions
{
DependsOn =
{
wait60s,
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/resourcemanager"
"github.com/pulumi/pulumi-time/sdk/go/time"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
folder, err := organizations.NewFolder(ctx, "folder", &organizations.FolderArgs{
DisplayName: pulumi.String("my-folder"),
Parent: pulumi.String("organizations/123456789"),
DeletionProtection: pulumi.Bool(false),
})
if err != nil {
return err
}
wait60s, err := time.NewSleep(ctx, "wait_60s", &time.SleepArgs{
CreateDuration: "60s",
}, pulumi.DependsOn([]pulumi.Resource{
folder,
}))
if err != nil {
return err
}
_, err = resourcemanager.NewCapability(ctx, "capability", &resourcemanager.CapabilityArgs{
Value: pulumi.Bool(true),
Parent: folder.Name,
CapabilityName: pulumi.String("app-management"),
}, pulumi.DependsOn([]pulumi.Resource{
wait60s,
}))
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.Folder;
import com.pulumi.gcp.organizations.FolderArgs;
import com.pulumi.time.sleep;
import com.pulumi.time.sleepArgs;
import com.pulumi.gcp.resourcemanager.Capability;
import com.pulumi.gcp.resourcemanager.CapabilityArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var folder = new Folder("folder", FolderArgs.builder()
.displayName("my-folder")
.parent("organizations/123456789")
.deletionProtection(false)
.build());
var wait60s = new Sleep("wait60s", SleepArgs.builder()
.createDuration("60s")
.build(), CustomResourceOptions.builder()
.dependsOn(List.of(folder))
.build());
var capability = new Capability("capability", CapabilityArgs.builder()
.value(true)
.parent(folder.name())
.capabilityName("app-management")
.build(), CustomResourceOptions.builder()
.dependsOn(wait60s)
.build());
}
}
resources:
folder:
type: gcp:organizations:Folder
properties:
displayName: my-folder
parent: organizations/123456789
deletionProtection: false
wait60s:
type: time:sleep
name: wait_60s
properties:
createDuration: 60s
options:
dependsOn:
- ${folder}
capability:
type: gcp:resourcemanager:Capability
properties:
value: true
parent: ${folder.name}
capabilityName: app-management
options:
dependsOn:
- ${wait60s}

Import

Capability can be imported using any of these accepted formats:

  • {{parent}}/capabilities/{{capability_name}}

  • {{parent}}/{{capability_name}} When using the pulumi import command, Capability can be imported using one of the formats above. For example:

$ pulumi import gcp:resourcemanager/capability:Capability default {{parent}}/capabilities/{{capability_name}}
$ pulumi import gcp:resourcemanager/capability:Capability default {{parent}}/{{capability_name}}

Constructors

Link copied to clipboard
constructor(capabilityName: Output<String>? = null, parent: Output<String>? = null, value: Output<Boolean>? = null)

Properties

Link copied to clipboard
val capabilityName: Output<String>? = null

Capability name that should be updated on the folder.

Link copied to clipboard
val parent: Output<String>? = null

Folder on which Capability needs to be updated in the format folders/folder_id.

Link copied to clipboard
val value: Output<Boolean>? = null

Capability Value.

Functions

Link copied to clipboard
open override fun toJava(): CapabilityArgs