Class Studio


  • public class Studio
    extends com.pulumi.resources.CustomResource
    Provides an Elastic MapReduce Studio. ## Example Usage
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.emr.Studio;
     import com.pulumi.aws.emr.StudioArgs;
     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 Studio("example", StudioArgs.builder()
                 .authMode("SSO")
                 .defaultS3Location(String.format("s3://%s/test", test.bucket()))
                 .engineSecurityGroupId(testAwsSecurityGroup.id())
                 .name("example")
                 .serviceRole(testAwsIamRole.arn())
                 .subnetIds(testAwsSubnet.id())
                 .userRole(testAwsIamRole.arn())
                 .vpcId(testAwsVpc.id())
                 .workspaceSecurityGroupId(testAwsSecurityGroup.id())
                 .build());
     
         }
     }
     
     
    ## Import Using `pulumi import`, import EMR studios using the `id`. For example: ```sh $ pulumi import aws:emr/studio:Studio studio es-123456ABCDEF ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Constructor Summary

      Constructors 
      Constructor Description
      Studio​(java.lang.String name)  
      Studio​(java.lang.String name, StudioArgs args)  
      Studio​(java.lang.String name, StudioArgs 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.lang.String> authMode()  
      com.pulumi.core.Output<java.lang.String> defaultS3Location()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> encryptionKeyArn()  
      com.pulumi.core.Output<java.lang.String> engineSecurityGroupId()  
      static Studio get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, StudioState 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.util.Optional<java.lang.String>> idpAuthUrl()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> idpRelayStateParameterName()  
      com.pulumi.core.Output<java.lang.String> name()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.lang.String> serviceRole()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> subnetIds()  
      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> url()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> userRole()  
      com.pulumi.core.Output<java.lang.String> vpcId()  
      com.pulumi.core.Output<java.lang.String> workspaceSecurityGroupId()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Studio

        public Studio​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • Studio

        public Studio​(java.lang.String name,
                      StudioArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • Studio

        public Studio​(java.lang.String name,
                      StudioArgs 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:
        ARN of the studio.
      • authMode

        public com.pulumi.core.Output<java.lang.String> authMode()
        Returns:
        Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO. Valid values are `SSO` or `IAM`.
      • defaultS3Location

        public com.pulumi.core.Output<java.lang.String> defaultS3Location()
        Returns:
        The Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files.
      • description

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
        Returns:
        A detailed description of the Amazon EMR Studio.
      • encryptionKeyArn

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> encryptionKeyArn()
        Returns:
        The AWS KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.
      • engineSecurityGroupId

        public com.pulumi.core.Output<java.lang.String> engineSecurityGroupId()
        Returns:
        The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by `vpcId`.
      • idpAuthUrl

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> idpAuthUrl()
        Returns:
        The authentication endpoint of your identity provider (IdP). Specify this value when you use IAM authentication and want to let federated users log in to a Studio with the Studio URL and credentials from your IdP. Amazon EMR Studio redirects users to this endpoint to enter credentials.
      • idpRelayStateParameterName

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> idpRelayStateParameterName()
        Returns:
        The name that your identity provider (IdP) uses for its RelayState parameter. For example, RelayState or TargetSource. Specify this value when you use IAM authentication and want to let federated users log in to a Studio using the Studio URL. The RelayState parameter differs by IdP.
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        A descriptive name for the Amazon EMR Studio.
      • 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.
      • serviceRole

        public com.pulumi.core.Output<java.lang.String> serviceRole()
        Returns:
        The IAM role that the Amazon EMR Studio assumes. The service role provides a way for Amazon EMR Studio to interoperate with other Amazon Web Services services.
      • subnetIds

        public com.pulumi.core.Output<java.util.List<java.lang.String>> subnetIds()
        Returns:
        A list of subnet IDs to associate with the Amazon EMR Studio. A Studio can have a maximum of 5 subnets. The subnets must belong to the VPC specified by `vpcId`. Studio users can create a Workspace in any of the specified subnets.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        list of tags to apply to the EMR Cluster. 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()
      • url

        public com.pulumi.core.Output<java.lang.String> url()
        Returns:
        The unique access URL of the Amazon EMR Studio.
      • userRole

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> userRole()
        Returns:
        The IAM user role that users and groups assume when logged in to an Amazon EMR Studio. Only specify a User Role when you use Amazon Web Services SSO authentication. The permissions attached to the User Role can be scoped down for each user or group using session policies.
      • vpcId

        public com.pulumi.core.Output<java.lang.String> vpcId()
        Returns:
        ID of the VPC to associate with the Studio.
      • workspaceSecurityGroupId

        public com.pulumi.core.Output<java.lang.String> workspaceSecurityGroupId()
        Returns:
        The ID of the Amazon EMR Studio Workspace security group. The Workspace security group allows outbound network traffic to resources in the Engine security group, and it must be in the same VPC specified by `vpcId`. The following arguments are optional:
      • get

        public static Studio get​(java.lang.String name,
                                 com.pulumi.core.Output<java.lang.String> id,
                                 @Nullable
                                 StudioState 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.