1. Packages
  2. Launch Darkly
  3. API Docs
  4. Project
Launch Darkly v0.0.6 published on Sunday, Feb 19, 2023 by lbrlabs

launchdarkly.Project

Explore with Pulumi AI

Provides a LaunchDarkly project resource.

This resource allows you to create and manage projects within your LaunchDarkly organization.

Example Usage

using System.Collections.Generic;
using Pulumi;
using Launchdarkly = Lbrlabs.PulumiPackage.Launchdarkly;

return await Deployment.RunAsync(() => 
{
    var example = new Launchdarkly.Project("example", new()
    {
        Environments = new[]
        {
            new Launchdarkly.Inputs.ProjectEnvironmentArgs
            {
                ApprovalSettings = new[]
                {
                    new Launchdarkly.Inputs.ProjectEnvironmentApprovalSettingArgs
                    {
                        CanApplyDeclinedChanges = false,
                        CanReviewOwnRequest = false,
                        MinNumApprovals = 3,
                        RequiredApprovalTags = new[]
                        {
                            "approvals_required",
                        },
                    },
                },
                Color = "EEEEEE",
                Key = "production",
                Name = "Production",
                Tags = new[]
                {
                    "terraform",
                },
            },
            new Launchdarkly.Inputs.ProjectEnvironmentArgs
            {
                Color = "000000",
                Key = "staging",
                Name = "Staging",
                Tags = new[]
                {
                    "terraform",
                },
            },
        },
        Key = "example-project",
        Tags = new[]
        {
            "terraform",
        },
    });

});
Copy
package main

import (
	"github.com/lbrlabs/pulumi-launchdarkly/sdk/go/launchdarkly"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := launchdarkly.NewProject(ctx, "example", &launchdarkly.ProjectArgs{
			Environments: launchdarkly.ProjectEnvironmentArray{
				&launchdarkly.ProjectEnvironmentArgs{
					ApprovalSettings: launchdarkly.ProjectEnvironmentApprovalSettingArray{
						&launchdarkly.ProjectEnvironmentApprovalSettingArgs{
							CanApplyDeclinedChanges: pulumi.Bool(false),
							CanReviewOwnRequest:     pulumi.Bool(false),
							MinNumApprovals:         pulumi.Int(3),
							RequiredApprovalTags: pulumi.StringArray{
								pulumi.String("approvals_required"),
							},
						},
					},
					Color: pulumi.String("EEEEEE"),
					Key:   pulumi.String("production"),
					Name:  pulumi.String("Production"),
					Tags: pulumi.StringArray{
						pulumi.String("terraform"),
					},
				},
				&launchdarkly.ProjectEnvironmentArgs{
					Color: pulumi.String("000000"),
					Key:   pulumi.String("staging"),
					Name:  pulumi.String("Staging"),
					Tags: pulumi.StringArray{
						pulumi.String("terraform"),
					},
				},
			},
			Key: pulumi.String("example-project"),
			Tags: pulumi.StringArray{
				pulumi.String("terraform"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.launchdarkly.Project;
import com.pulumi.launchdarkly.ProjectArgs;
import com.pulumi.launchdarkly.inputs.ProjectEnvironmentArgs;
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 example = new Project("example", ProjectArgs.builder()        
            .environments(            
                ProjectEnvironmentArgs.builder()
                    .approvalSettings(ProjectEnvironmentApprovalSettingArgs.builder()
                        .canApplyDeclinedChanges(false)
                        .canReviewOwnRequest(false)
                        .minNumApprovals(3)
                        .requiredApprovalTags("approvals_required")
                        .build())
                    .color("EEEEEE")
                    .key("production")
                    .name("Production")
                    .tags("terraform")
                    .build(),
                ProjectEnvironmentArgs.builder()
                    .color("000000")
                    .key("staging")
                    .name("Staging")
                    .tags("terraform")
                    .build())
            .key("example-project")
            .tags("terraform")
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as launchdarkly from "@lbrlabs/pulumi-launchdarkly";

const example = new launchdarkly.Project("example", {
    environments: [
        {
            approvalSettings: [{
                canApplyDeclinedChanges: false,
                canReviewOwnRequest: false,
                minNumApprovals: 3,
                requiredApprovalTags: ["approvals_required"],
            }],
            color: "EEEEEE",
            key: "production",
            name: "Production",
            tags: ["terraform"],
        },
        {
            color: "000000",
            key: "staging",
            name: "Staging",
            tags: ["terraform"],
        },
    ],
    key: "example-project",
    tags: ["terraform"],
});
Copy
import pulumi
import lbrlabs_pulumi_launchdarkly as launchdarkly

example = launchdarkly.Project("example",
    environments=[
        launchdarkly.ProjectEnvironmentArgs(
            approval_settings=[launchdarkly.ProjectEnvironmentApprovalSettingArgs(
                can_apply_declined_changes=False,
                can_review_own_request=False,
                min_num_approvals=3,
                required_approval_tags=["approvals_required"],
            )],
            color="EEEEEE",
            key="production",
            name="Production",
            tags=["terraform"],
        ),
        launchdarkly.ProjectEnvironmentArgs(
            color="000000",
            key="staging",
            name="Staging",
            tags=["terraform"],
        ),
    ],
    key="example-project",
    tags=["terraform"])
Copy
resources:
  example:
    type: launchdarkly:Project
    properties:
      environments:
        - approvalSettings:
            - canApplyDeclinedChanges: false
              canReviewOwnRequest: false
              minNumApprovals: 3
              requiredApprovalTags:
                - approvals_required
          color: EEEEEE
          key: production
          name: Production
          tags:
            - terraform
        - color: '000000'
          key: staging
          name: Staging
          tags:
            - terraform
      key: example-project
      tags:
        - terraform
Copy

Create Project Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Project(name: string, args: ProjectArgs, opts?: CustomResourceOptions);
@overload
def Project(resource_name: str,
            args: ProjectArgs,
            opts: Optional[ResourceOptions] = None)

@overload
def Project(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            environments: Optional[Sequence[ProjectEnvironmentArgs]] = None,
            key: Optional[str] = None,
            default_client_side_availabilities: Optional[Sequence[ProjectDefaultClientSideAvailabilityArgs]] = None,
            include_in_snippet: Optional[bool] = None,
            name: Optional[str] = None,
            tags: Optional[Sequence[str]] = None)
func NewProject(ctx *Context, name string, args ProjectArgs, opts ...ResourceOption) (*Project, error)
public Project(string name, ProjectArgs args, CustomResourceOptions? opts = null)
public Project(String name, ProjectArgs args)
public Project(String name, ProjectArgs args, CustomResourceOptions options)
type: launchdarkly:Project
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. ProjectArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. ProjectArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. ProjectArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. ProjectArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ProjectArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var projectResource = new Launchdarkly.Project("projectResource", new()
{
    Environments = new[]
    {
        new Launchdarkly.Inputs.ProjectEnvironmentArgs
        {
            Name = "string",
            Color = "string",
            Key = "string",
            ApprovalSettings = new[]
            {
                new Launchdarkly.Inputs.ProjectEnvironmentApprovalSettingArgs
                {
                    CanApplyDeclinedChanges = false,
                    CanReviewOwnRequest = false,
                    MinNumApprovals = 0,
                    Required = false,
                    RequiredApprovalTags = new[]
                    {
                        "string",
                    },
                },
            },
            ClientSideId = "string",
            ConfirmChanges = false,
            DefaultTrackEvents = false,
            DefaultTtl = 0,
            MobileKey = "string",
            ApiKey = "string",
            RequireComments = false,
            SecureMode = false,
            Tags = new[]
            {
                "string",
            },
        },
    },
    Key = "string",
    DefaultClientSideAvailabilities = new[]
    {
        new Launchdarkly.Inputs.ProjectDefaultClientSideAvailabilityArgs
        {
            UsingEnvironmentId = false,
            UsingMobileKey = false,
        },
    },
    Name = "string",
    Tags = new[]
    {
        "string",
    },
});
Copy
example, err := launchdarkly.NewProject(ctx, "projectResource", &launchdarkly.ProjectArgs{
	Environments: launchdarkly.ProjectEnvironmentArray{
		&launchdarkly.ProjectEnvironmentArgs{
			Name:  pulumi.String("string"),
			Color: pulumi.String("string"),
			Key:   pulumi.String("string"),
			ApprovalSettings: launchdarkly.ProjectEnvironmentApprovalSettingArray{
				&launchdarkly.ProjectEnvironmentApprovalSettingArgs{
					CanApplyDeclinedChanges: pulumi.Bool(false),
					CanReviewOwnRequest:     pulumi.Bool(false),
					MinNumApprovals:         pulumi.Int(0),
					Required:                pulumi.Bool(false),
					RequiredApprovalTags: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
			ClientSideId:       pulumi.String("string"),
			ConfirmChanges:     pulumi.Bool(false),
			DefaultTrackEvents: pulumi.Bool(false),
			DefaultTtl:         pulumi.Int(0),
			MobileKey:          pulumi.String("string"),
			ApiKey:             pulumi.String("string"),
			RequireComments:    pulumi.Bool(false),
			SecureMode:         pulumi.Bool(false),
			Tags: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
	Key: pulumi.String("string"),
	DefaultClientSideAvailabilities: launchdarkly.ProjectDefaultClientSideAvailabilityArray{
		&launchdarkly.ProjectDefaultClientSideAvailabilityArgs{
			UsingEnvironmentId: pulumi.Bool(false),
			UsingMobileKey:     pulumi.Bool(false),
		},
	},
	Name: pulumi.String("string"),
	Tags: pulumi.StringArray{
		pulumi.String("string"),
	},
})
Copy
var projectResource = new Project("projectResource", ProjectArgs.builder()
    .environments(ProjectEnvironmentArgs.builder()
        .name("string")
        .color("string")
        .key("string")
        .approvalSettings(ProjectEnvironmentApprovalSettingArgs.builder()
            .canApplyDeclinedChanges(false)
            .canReviewOwnRequest(false)
            .minNumApprovals(0)
            .required(false)
            .requiredApprovalTags("string")
            .build())
        .clientSideId("string")
        .confirmChanges(false)
        .defaultTrackEvents(false)
        .defaultTtl(0)
        .mobileKey("string")
        .apiKey("string")
        .requireComments(false)
        .secureMode(false)
        .tags("string")
        .build())
    .key("string")
    .defaultClientSideAvailabilities(ProjectDefaultClientSideAvailabilityArgs.builder()
        .usingEnvironmentId(false)
        .usingMobileKey(false)
        .build())
    .name("string")
    .tags("string")
    .build());
Copy
project_resource = launchdarkly.Project("projectResource",
    environments=[{
        "name": "string",
        "color": "string",
        "key": "string",
        "approval_settings": [{
            "can_apply_declined_changes": False,
            "can_review_own_request": False,
            "min_num_approvals": 0,
            "required": False,
            "required_approval_tags": ["string"],
        }],
        "client_side_id": "string",
        "confirm_changes": False,
        "default_track_events": False,
        "default_ttl": 0,
        "mobile_key": "string",
        "api_key": "string",
        "require_comments": False,
        "secure_mode": False,
        "tags": ["string"],
    }],
    key="string",
    default_client_side_availabilities=[{
        "using_environment_id": False,
        "using_mobile_key": False,
    }],
    name="string",
    tags=["string"])
Copy
const projectResource = new launchdarkly.Project("projectResource", {
    environments: [{
        name: "string",
        color: "string",
        key: "string",
        approvalSettings: [{
            canApplyDeclinedChanges: false,
            canReviewOwnRequest: false,
            minNumApprovals: 0,
            required: false,
            requiredApprovalTags: ["string"],
        }],
        clientSideId: "string",
        confirmChanges: false,
        defaultTrackEvents: false,
        defaultTtl: 0,
        mobileKey: "string",
        apiKey: "string",
        requireComments: false,
        secureMode: false,
        tags: ["string"],
    }],
    key: "string",
    defaultClientSideAvailabilities: [{
        usingEnvironmentId: false,
        usingMobileKey: false,
    }],
    name: "string",
    tags: ["string"],
});
Copy
type: launchdarkly:Project
properties:
    defaultClientSideAvailabilities:
        - usingEnvironmentId: false
          usingMobileKey: false
    environments:
        - apiKey: string
          approvalSettings:
            - canApplyDeclinedChanges: false
              canReviewOwnRequest: false
              minNumApprovals: 0
              required: false
              requiredApprovalTags:
                - string
          clientSideId: string
          color: string
          confirmChanges: false
          defaultTrackEvents: false
          defaultTtl: 0
          key: string
          mobileKey: string
          name: string
          requireComments: false
          secureMode: false
          tags:
            - string
    key: string
    name: string
    tags:
        - string
Copy

Project Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Project resource accepts the following input properties:

Environments This property is required. List<Lbrlabs.PulumiPackage.Launchdarkly.Inputs.ProjectEnvironment>
List of nested environments blocks describing LaunchDarkly environments that belong to the project
Key
This property is required.
Changes to this property will trigger replacement.
string
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
DefaultClientSideAvailabilities List<Lbrlabs.PulumiPackage.Launchdarkly.Inputs.ProjectDefaultClientSideAvailability>
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
IncludeInSnippet bool
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

Name string
The project's name.
Tags List<string>
The project's set of tags.
Environments This property is required. []ProjectEnvironmentArgs
List of nested environments blocks describing LaunchDarkly environments that belong to the project
Key
This property is required.
Changes to this property will trigger replacement.
string
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
DefaultClientSideAvailabilities []ProjectDefaultClientSideAvailabilityArgs
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
IncludeInSnippet bool
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

Name string
The project's name.
Tags []string
The project's set of tags.
environments This property is required. List<ProjectEnvironment>
List of nested environments blocks describing LaunchDarkly environments that belong to the project
key
This property is required.
Changes to this property will trigger replacement.
String
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
defaultClientSideAvailabilities List<ProjectDefaultClientSideAvailability>
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
includeInSnippet Boolean
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

name String
The project's name.
tags List<String>
The project's set of tags.
environments This property is required. ProjectEnvironment[]
List of nested environments blocks describing LaunchDarkly environments that belong to the project
key
This property is required.
Changes to this property will trigger replacement.
string
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
defaultClientSideAvailabilities ProjectDefaultClientSideAvailability[]
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
includeInSnippet boolean
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

name string
The project's name.
tags string[]
The project's set of tags.
environments This property is required. Sequence[ProjectEnvironmentArgs]
List of nested environments blocks describing LaunchDarkly environments that belong to the project
key
This property is required.
Changes to this property will trigger replacement.
str
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
default_client_side_availabilities Sequence[ProjectDefaultClientSideAvailabilityArgs]
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
include_in_snippet bool
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

name str
The project's name.
tags Sequence[str]
The project's set of tags.
environments This property is required. List<Property Map>
List of nested environments blocks describing LaunchDarkly environments that belong to the project
key
This property is required.
Changes to this property will trigger replacement.
String
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
defaultClientSideAvailabilities List<Property Map>
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
includeInSnippet Boolean
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

name String
The project's name.
tags List<String>
The project's set of tags.

Outputs

All input properties are implicitly available as output properties. Additionally, the Project resource produces the following output properties:

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing Project Resource

Get an existing Project resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: ProjectState, opts?: CustomResourceOptions): Project
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        default_client_side_availabilities: Optional[Sequence[ProjectDefaultClientSideAvailabilityArgs]] = None,
        environments: Optional[Sequence[ProjectEnvironmentArgs]] = None,
        include_in_snippet: Optional[bool] = None,
        key: Optional[str] = None,
        name: Optional[str] = None,
        tags: Optional[Sequence[str]] = None) -> Project
func GetProject(ctx *Context, name string, id IDInput, state *ProjectState, opts ...ResourceOption) (*Project, error)
public static Project Get(string name, Input<string> id, ProjectState? state, CustomResourceOptions? opts = null)
public static Project get(String name, Output<String> id, ProjectState state, CustomResourceOptions options)
resources:  _:    type: launchdarkly:Project    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
DefaultClientSideAvailabilities List<Lbrlabs.PulumiPackage.Launchdarkly.Inputs.ProjectDefaultClientSideAvailability>
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
Environments List<Lbrlabs.PulumiPackage.Launchdarkly.Inputs.ProjectEnvironment>
List of nested environments blocks describing LaunchDarkly environments that belong to the project
IncludeInSnippet bool
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

Key Changes to this property will trigger replacement. string
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
Name string
The project's name.
Tags List<string>
The project's set of tags.
DefaultClientSideAvailabilities []ProjectDefaultClientSideAvailabilityArgs
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
Environments []ProjectEnvironmentArgs
List of nested environments blocks describing LaunchDarkly environments that belong to the project
IncludeInSnippet bool
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

Key Changes to this property will trigger replacement. string
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
Name string
The project's name.
Tags []string
The project's set of tags.
defaultClientSideAvailabilities List<ProjectDefaultClientSideAvailability>
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
environments List<ProjectEnvironment>
List of nested environments blocks describing LaunchDarkly environments that belong to the project
includeInSnippet Boolean
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

key Changes to this property will trigger replacement. String
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
name String
The project's name.
tags List<String>
The project's set of tags.
defaultClientSideAvailabilities ProjectDefaultClientSideAvailability[]
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
environments ProjectEnvironment[]
List of nested environments blocks describing LaunchDarkly environments that belong to the project
includeInSnippet boolean
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

key Changes to this property will trigger replacement. string
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
name string
The project's name.
tags string[]
The project's set of tags.
default_client_side_availabilities Sequence[ProjectDefaultClientSideAvailabilityArgs]
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
environments Sequence[ProjectEnvironmentArgs]
List of nested environments blocks describing LaunchDarkly environments that belong to the project
include_in_snippet bool
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

key Changes to this property will trigger replacement. str
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
name str
The project's name.
tags Sequence[str]
The project's set of tags.
defaultClientSideAvailabilities List<Property Map>
A block describing which client-side SDKs can use new flags by default. To learn more, read Nested Client Side Availability Block.
environments List<Property Map>
List of nested environments blocks describing LaunchDarkly environments that belong to the project
includeInSnippet Boolean
Deprecated (Optional) Whether feature flags created under the project should be available to client-side SDKs by default. Please migrate to default_client_side_availability to maintain future compatibility.

Deprecated: 'include_in_snippet' is now deprecated. Please migrate to 'default_client_side_availability' to maintain future compatability.

key Changes to this property will trigger replacement. String
The project's unique key. A change in this field will force the destruction of the existing resource and the creation of a new one.
name String
The project's name.
tags List<String>
The project's set of tags.

Supporting Types

ProjectDefaultClientSideAvailability
, ProjectDefaultClientSideAvailabilityArgs

UsingEnvironmentId This property is required. bool
Whether feature flags created under the project are available to JavaScript SDKs using the client-side ID by default. Defaults to false when not using default_client_side_availability.
UsingMobileKey This property is required. bool
Whether feature flags created under the project are available to mobile SDKs, and other non-JavaScript SDKs, using a mobile key by default. Defaults to true when not using default_client_side_availability.
UsingEnvironmentId This property is required. bool
Whether feature flags created under the project are available to JavaScript SDKs using the client-side ID by default. Defaults to false when not using default_client_side_availability.
UsingMobileKey This property is required. bool
Whether feature flags created under the project are available to mobile SDKs, and other non-JavaScript SDKs, using a mobile key by default. Defaults to true when not using default_client_side_availability.
usingEnvironmentId This property is required. Boolean
Whether feature flags created under the project are available to JavaScript SDKs using the client-side ID by default. Defaults to false when not using default_client_side_availability.
usingMobileKey This property is required. Boolean
Whether feature flags created under the project are available to mobile SDKs, and other non-JavaScript SDKs, using a mobile key by default. Defaults to true when not using default_client_side_availability.
usingEnvironmentId This property is required. boolean
Whether feature flags created under the project are available to JavaScript SDKs using the client-side ID by default. Defaults to false when not using default_client_side_availability.
usingMobileKey This property is required. boolean
Whether feature flags created under the project are available to mobile SDKs, and other non-JavaScript SDKs, using a mobile key by default. Defaults to true when not using default_client_side_availability.
using_environment_id This property is required. bool
Whether feature flags created under the project are available to JavaScript SDKs using the client-side ID by default. Defaults to false when not using default_client_side_availability.
using_mobile_key This property is required. bool
Whether feature flags created under the project are available to mobile SDKs, and other non-JavaScript SDKs, using a mobile key by default. Defaults to true when not using default_client_side_availability.
usingEnvironmentId This property is required. Boolean
Whether feature flags created under the project are available to JavaScript SDKs using the client-side ID by default. Defaults to false when not using default_client_side_availability.
usingMobileKey This property is required. Boolean
Whether feature flags created under the project are available to mobile SDKs, and other non-JavaScript SDKs, using a mobile key by default. Defaults to true when not using default_client_side_availability.

ProjectEnvironment
, ProjectEnvironmentArgs

Color This property is required. string
The color swatch as an RGB hex value with no leading #. For example: 000000.
Key This property is required. string
The project-unique key for the environment. A change in this field will force the destruction of the existing environment and the creation of a new one.
Name This property is required. string
The name of the environment.
ApiKey string
ApprovalSettings List<Lbrlabs.PulumiPackage.Launchdarkly.Inputs.ProjectEnvironmentApprovalSetting>
ClientSideId string
ConfirmChanges bool
Set to true if this environment requires confirmation for flag and segment changes. This field will default to false when not set.
DefaultTrackEvents bool
Set to true to enable data export for every flag created in this environment after you configure this argument. This field will default to false when not set. To learn more, read Data Export.
DefaultTtl int
The TTL for the environment. This must be between 0 and 60 minutes. The TTL setting only applies to environments using the PHP SDK. This field will default to 0 when not set. To learn more, read TTL settings.
MobileKey string
RequireComments bool
Set to true if this environment requires comments for flag and segment changes. This field will default to false when not set.
SecureMode bool
Set to true to ensure a user of the client-side SDK cannot impersonate another user. This field will default to false when not set.
Tags List<string>
Set of tags associated with the environment.
Color This property is required. string
The color swatch as an RGB hex value with no leading #. For example: 000000.
Key This property is required. string
The project-unique key for the environment. A change in this field will force the destruction of the existing environment and the creation of a new one.
Name This property is required. string
The name of the environment.
ApiKey string
ApprovalSettings []ProjectEnvironmentApprovalSetting
ClientSideId string
ConfirmChanges bool
Set to true if this environment requires confirmation for flag and segment changes. This field will default to false when not set.
DefaultTrackEvents bool
Set to true to enable data export for every flag created in this environment after you configure this argument. This field will default to false when not set. To learn more, read Data Export.
DefaultTtl int
The TTL for the environment. This must be between 0 and 60 minutes. The TTL setting only applies to environments using the PHP SDK. This field will default to 0 when not set. To learn more, read TTL settings.
MobileKey string
RequireComments bool
Set to true if this environment requires comments for flag and segment changes. This field will default to false when not set.
SecureMode bool
Set to true to ensure a user of the client-side SDK cannot impersonate another user. This field will default to false when not set.
Tags []string
Set of tags associated with the environment.
color This property is required. String
The color swatch as an RGB hex value with no leading #. For example: 000000.
key This property is required. String
The project-unique key for the environment. A change in this field will force the destruction of the existing environment and the creation of a new one.
name This property is required. String
The name of the environment.
apiKey String
approvalSettings List<ProjectEnvironmentApprovalSetting>
clientSideId String
confirmChanges Boolean
Set to true if this environment requires confirmation for flag and segment changes. This field will default to false when not set.
defaultTrackEvents Boolean
Set to true to enable data export for every flag created in this environment after you configure this argument. This field will default to false when not set. To learn more, read Data Export.
defaultTtl Integer
The TTL for the environment. This must be between 0 and 60 minutes. The TTL setting only applies to environments using the PHP SDK. This field will default to 0 when not set. To learn more, read TTL settings.
mobileKey String
requireComments Boolean
Set to true if this environment requires comments for flag and segment changes. This field will default to false when not set.
secureMode Boolean
Set to true to ensure a user of the client-side SDK cannot impersonate another user. This field will default to false when not set.
tags List<String>
Set of tags associated with the environment.
color This property is required. string
The color swatch as an RGB hex value with no leading #. For example: 000000.
key This property is required. string
The project-unique key for the environment. A change in this field will force the destruction of the existing environment and the creation of a new one.
name This property is required. string
The name of the environment.
apiKey string
approvalSettings ProjectEnvironmentApprovalSetting[]
clientSideId string
confirmChanges boolean
Set to true if this environment requires confirmation for flag and segment changes. This field will default to false when not set.
defaultTrackEvents boolean
Set to true to enable data export for every flag created in this environment after you configure this argument. This field will default to false when not set. To learn more, read Data Export.
defaultTtl number
The TTL for the environment. This must be between 0 and 60 minutes. The TTL setting only applies to environments using the PHP SDK. This field will default to 0 when not set. To learn more, read TTL settings.
mobileKey string
requireComments boolean
Set to true if this environment requires comments for flag and segment changes. This field will default to false when not set.
secureMode boolean
Set to true to ensure a user of the client-side SDK cannot impersonate another user. This field will default to false when not set.
tags string[]
Set of tags associated with the environment.
color This property is required. str
The color swatch as an RGB hex value with no leading #. For example: 000000.
key This property is required. str
The project-unique key for the environment. A change in this field will force the destruction of the existing environment and the creation of a new one.
name This property is required. str
The name of the environment.
api_key str
approval_settings Sequence[ProjectEnvironmentApprovalSetting]
client_side_id str
confirm_changes bool
Set to true if this environment requires confirmation for flag and segment changes. This field will default to false when not set.
default_track_events bool
Set to true to enable data export for every flag created in this environment after you configure this argument. This field will default to false when not set. To learn more, read Data Export.
default_ttl int
The TTL for the environment. This must be between 0 and 60 minutes. The TTL setting only applies to environments using the PHP SDK. This field will default to 0 when not set. To learn more, read TTL settings.
mobile_key str
require_comments bool
Set to true if this environment requires comments for flag and segment changes. This field will default to false when not set.
secure_mode bool
Set to true to ensure a user of the client-side SDK cannot impersonate another user. This field will default to false when not set.
tags Sequence[str]
Set of tags associated with the environment.
color This property is required. String
The color swatch as an RGB hex value with no leading #. For example: 000000.
key This property is required. String
The project-unique key for the environment. A change in this field will force the destruction of the existing environment and the creation of a new one.
name This property is required. String
The name of the environment.
apiKey String
approvalSettings List<Property Map>
clientSideId String
confirmChanges Boolean
Set to true if this environment requires confirmation for flag and segment changes. This field will default to false when not set.
defaultTrackEvents Boolean
Set to true to enable data export for every flag created in this environment after you configure this argument. This field will default to false when not set. To learn more, read Data Export.
defaultTtl Number
The TTL for the environment. This must be between 0 and 60 minutes. The TTL setting only applies to environments using the PHP SDK. This field will default to 0 when not set. To learn more, read TTL settings.
mobileKey String
requireComments Boolean
Set to true if this environment requires comments for flag and segment changes. This field will default to false when not set.
secureMode Boolean
Set to true to ensure a user of the client-side SDK cannot impersonate another user. This field will default to false when not set.
tags List<String>
Set of tags associated with the environment.

ProjectEnvironmentApprovalSetting
, ProjectEnvironmentApprovalSettingArgs

CanApplyDeclinedChanges bool
Set to true if changes can be applied as long as the min_num_approvals is met, regardless of whether any reviewers have declined a request. Defaults to true.
CanReviewOwnRequest bool
Set to true if requesters can approve or decline their own request. They may always comment. Defaults to false.
MinNumApprovals int
The number of approvals required before an approval request can be applied. This number must be between 1 and 5. Defaults to 1.
Required bool
Set to true for changes to flags in this environment to require approval. You may only set required to true if required_approval_tags is not set and vice versa. Defaults to false.
RequiredApprovalTags List<string>
An array of tags used to specify which flags with those tags require approval. You may only set required_approval_tags if required is not set to true and vice versa.
CanApplyDeclinedChanges bool
Set to true if changes can be applied as long as the min_num_approvals is met, regardless of whether any reviewers have declined a request. Defaults to true.
CanReviewOwnRequest bool
Set to true if requesters can approve or decline their own request. They may always comment. Defaults to false.
MinNumApprovals int
The number of approvals required before an approval request can be applied. This number must be between 1 and 5. Defaults to 1.
Required bool
Set to true for changes to flags in this environment to require approval. You may only set required to true if required_approval_tags is not set and vice versa. Defaults to false.
RequiredApprovalTags []string
An array of tags used to specify which flags with those tags require approval. You may only set required_approval_tags if required is not set to true and vice versa.
canApplyDeclinedChanges Boolean
Set to true if changes can be applied as long as the min_num_approvals is met, regardless of whether any reviewers have declined a request. Defaults to true.
canReviewOwnRequest Boolean
Set to true if requesters can approve or decline their own request. They may always comment. Defaults to false.
minNumApprovals Integer
The number of approvals required before an approval request can be applied. This number must be between 1 and 5. Defaults to 1.
required Boolean
Set to true for changes to flags in this environment to require approval. You may only set required to true if required_approval_tags is not set and vice versa. Defaults to false.
requiredApprovalTags List<String>
An array of tags used to specify which flags with those tags require approval. You may only set required_approval_tags if required is not set to true and vice versa.
canApplyDeclinedChanges boolean
Set to true if changes can be applied as long as the min_num_approvals is met, regardless of whether any reviewers have declined a request. Defaults to true.
canReviewOwnRequest boolean
Set to true if requesters can approve or decline their own request. They may always comment. Defaults to false.
minNumApprovals number
The number of approvals required before an approval request can be applied. This number must be between 1 and 5. Defaults to 1.
required boolean
Set to true for changes to flags in this environment to require approval. You may only set required to true if required_approval_tags is not set and vice versa. Defaults to false.
requiredApprovalTags string[]
An array of tags used to specify which flags with those tags require approval. You may only set required_approval_tags if required is not set to true and vice versa.
can_apply_declined_changes bool
Set to true if changes can be applied as long as the min_num_approvals is met, regardless of whether any reviewers have declined a request. Defaults to true.
can_review_own_request bool
Set to true if requesters can approve or decline their own request. They may always comment. Defaults to false.
min_num_approvals int
The number of approvals required before an approval request can be applied. This number must be between 1 and 5. Defaults to 1.
required bool
Set to true for changes to flags in this environment to require approval. You may only set required to true if required_approval_tags is not set and vice versa. Defaults to false.
required_approval_tags Sequence[str]
An array of tags used to specify which flags with those tags require approval. You may only set required_approval_tags if required is not set to true and vice versa.
canApplyDeclinedChanges Boolean
Set to true if changes can be applied as long as the min_num_approvals is met, regardless of whether any reviewers have declined a request. Defaults to true.
canReviewOwnRequest Boolean
Set to true if requesters can approve or decline their own request. They may always comment. Defaults to false.
minNumApprovals Number
The number of approvals required before an approval request can be applied. This number must be between 1 and 5. Defaults to 1.
required Boolean
Set to true for changes to flags in this environment to require approval. You may only set required to true if required_approval_tags is not set and vice versa. Defaults to false.
requiredApprovalTags List<String>
An array of tags used to specify which flags with those tags require approval. You may only set required_approval_tags if required is not set to true and vice versa.

Import

LaunchDarkly projects can be imported using the project’s key, e.g.

 $ pulumi import launchdarkly:index/project:Project example example-project
Copy

IMPORTANT: Please note that, regardless of how many environments blocks you include on your import, all of the project’s environments will be saved to the Terraform state and will update with subsequent applies. This means that any environments not included in your import configuration will be torn down with any subsequent apply. If you wish to manage project properties with Terraform but not nested environments consider using Terraform’s ignore changes lifecycle meta-argument; see below for example. resource “launchdarkly_project” “example” { lifecycle { ignore_changes = [environments] } name = “testProject” key = “%s” # environments not included on this configuration will not be affected by subsequent applies } Managing environment resources with Terraform should always be done on the project unless the project is not also managed with Terraform.

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
launchdarkly lbrlabs/pulumi-launchdarkly
License
Notes
This Pulumi package is based on the launchdarkly Terraform Provider.