Package com.pulumi.aws.cloud9
Class EnvironmentEC2
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.cloud9.EnvironmentEC2
-
public class EnvironmentEC2 extends com.pulumi.resources.CustomResourceProvides a Cloud9 EC2 Development Environment. ## Example Usage Basic usage:
Get the URL of the Cloud9 environment after creation:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.cloud9.EnvironmentEC2; import com.pulumi.aws.cloud9.EnvironmentEC2Args; import java.util.ArrayList; import java.util.Arrays; 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 EnvironmentEC2("example", EnvironmentEC2Args.builder() .instanceType("t2.micro") .name("example-env") .imageId("amazonlinux-2023-x86_64") .build()); } }
Allocate a static IP to the Cloud9 environment:package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.cloud9.EnvironmentEC2; import com.pulumi.aws.cloud9.EnvironmentEC2Args; import com.pulumi.aws.ec2.Ec2Functions; import com.pulumi.aws.ec2.inputs.GetInstanceArgs; import com.pulumi.aws.ec2.inputs.GetInstanceFilterArgs; import java.util.ArrayList; import java.util.Arrays; 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 EnvironmentEC2("example", EnvironmentEC2Args.builder() .instanceType("t2.micro") .build()); final var cloud9Instance = Ec2Functions.getInstance(GetInstanceArgs.builder() .filters(GetInstanceFilterArgs.builder() .name("tag:aws:cloud9:environment") .values(example.id()) .build()) .build()); ctx.export("cloud9Url", example.id().applyValue(_id -> String.format("https://%s.console.aws.amazon.com/cloud9/ide/%s", region,_id))); } }package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.cloud9.EnvironmentEC2; import com.pulumi.aws.cloud9.EnvironmentEC2Args; import com.pulumi.aws.ec2.Ec2Functions; import com.pulumi.aws.ec2.inputs.GetInstanceArgs; import com.pulumi.aws.ec2.inputs.GetInstanceFilterArgs; import com.pulumi.aws.ec2.Eip; import com.pulumi.aws.ec2.EipArgs; import java.util.ArrayList; import java.util.Arrays; 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 EnvironmentEC2("example", EnvironmentEC2Args.builder() .instanceType("t2.micro") .build()); final var cloud9Instance = Ec2Functions.getInstance(GetInstanceArgs.builder() .filters(GetInstanceFilterArgs.builder() .name("tag:aws:cloud9:environment") .values(example.id()) .build()) .build()); var cloud9Eip = new Eip("cloud9Eip", EipArgs.builder() .instance(cloud9Instance.applyValue(_cloud9Instance -> _cloud9Instance.id())) .domain("vpc") .build()); ctx.export("cloud9PublicIp", cloud9Eip.publicIp()); } }
-
-
Constructor Summary
Constructors Constructor Description EnvironmentEC2(java.lang.String name)EnvironmentEC2(java.lang.String name, EnvironmentEC2Args args)EnvironmentEC2(java.lang.String name, EnvironmentEC2Args args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>arn()com.pulumi.core.Output<java.util.Optional<java.lang.Integer>>automaticStopTimeMinutes()com.pulumi.core.Output<java.util.Optional<java.lang.String>>connectionType()com.pulumi.core.Output<java.util.Optional<java.lang.String>>description()static EnvironmentEC2get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, EnvironmentEC2State state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.lang.String>imageId()com.pulumi.core.Output<java.lang.String>instanceType()com.pulumi.core.Output<java.lang.String>name()com.pulumi.core.Output<java.lang.String>ownerArn()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.util.Optional<java.lang.String>>subnetId()com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>>tags()com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>>tagsAll()com.pulumi.core.Output<java.lang.String>type()
-
-
-
Constructor Detail
-
EnvironmentEC2
public EnvironmentEC2(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
EnvironmentEC2
public EnvironmentEC2(java.lang.String name, EnvironmentEC2Args args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
EnvironmentEC2
public EnvironmentEC2(java.lang.String name, EnvironmentEC2Args args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
arn
public com.pulumi.core.Output<java.lang.String> arn()
- Returns:
- The ARN of the environment.
-
automaticStopTimeMinutes
public com.pulumi.core.Output<java.util.Optional<java.lang.Integer>> automaticStopTimeMinutes()
- Returns:
- The number of minutes until the running instance is shut down after the environment has last been used.
-
connectionType
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> connectionType()
- Returns:
- The connection type used for connecting to an Amazon EC2 environment. Valid values are `CONNECT_SSH` and `CONNECT_SSM`. For more information please refer [AWS documentation for Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/ec2-ssm.html).
-
description
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
- Returns:
- The description of the environment.
-
imageId
public com.pulumi.core.Output<java.lang.String> imageId()
- Returns:
- Identifier for the AMI that's used to create the EC2 instance. Valid values are * `amazonlinux-2-x86_64` * `amazonlinux-2023-x86_64` * `ubuntu-18.04-x86_64` * `ubuntu-22.04-x86_64` * `resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2-x86_64` * `resolve:ssm:/aws/service/cloud9/amis/amazonlinux-2023-x86_64` * `resolve:ssm:/aws/service/cloud9/amis/ubuntu-18.04-x86_64` * `resolve:ssm:/aws/service/cloud9/amis/ubuntu-22.04-x86_64`
-
instanceType
public com.pulumi.core.Output<java.lang.String> instanceType()
- Returns:
- The type of instance to connect to the environment, e.g., `t2.micro`.
-
name
public com.pulumi.core.Output<java.lang.String> name()
- Returns:
- The name of the environment.
-
ownerArn
public com.pulumi.core.Output<java.lang.String> ownerArn()
- Returns:
- The ARN of the environment owner. This can be ARN of any AWS IAM principal. Defaults to the environment's creator.
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
subnetId
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> subnetId()
- Returns:
- The ID of the subnet in Amazon VPC that AWS Cloud9 will use to communicate with the Amazon EC2 instance.
-
tags
public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,java.lang.String>>> tags()
- Returns:
- Key-value map of resource tags. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
-
tagsAll
public com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tagsAll()
- Returns:
- A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
-
type
public com.pulumi.core.Output<java.lang.String> type()
- Returns:
- The type of the environment (e.g., `ssh` or `ec2`).
-
get
public static EnvironmentEC2 get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable EnvironmentEC2State state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-