Class ApplicationVersion


  • public class ApplicationVersion
    extends com.pulumi.resources.CustomResource
    Provides an Elastic Beanstalk Application Version Resource. Elastic Beanstalk allows you to deploy and manage applications in the AWS cloud without worrying about the infrastructure that runs those applications. This resource creates a Beanstalk Application Version that can be deployed to a Beanstalk Environment. > **NOTE on Application Version Resource:** When using the Application Version resource with multiple Elastic Beanstalk Environments it is possible that an error may be returned when attempting to delete an Application Version while it is still in use by a different environment. To work around this you can either create each environment in a separate AWS account or create your `aws.elasticbeanstalk.ApplicationVersion` resources with a unique names in your Elastic Beanstalk Application. For example <revision>-<environment>. ## Example Usage
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.s3.Bucket;
     import com.pulumi.aws.s3.BucketArgs;
     import com.pulumi.aws.s3.BucketObjectv2;
     import com.pulumi.aws.s3.BucketObjectv2Args;
     import com.pulumi.aws.elasticbeanstalk.Application;
     import com.pulumi.aws.elasticbeanstalk.ApplicationArgs;
     import com.pulumi.aws.elasticbeanstalk.ApplicationVersion;
     import com.pulumi.aws.elasticbeanstalk.ApplicationVersionArgs;
     import com.pulumi.asset.FileAsset;
     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 default_ = new Bucket("default", BucketArgs.builder()
                 .bucket("tftest.applicationversion.bucket")
                 .build());
     
             var defaultBucketObjectv2 = new BucketObjectv2("defaultBucketObjectv2", BucketObjectv2Args.builder()
                 .bucket(default_.id())
                 .key("beanstalk/go-v1.zip")
                 .source(new FileAsset("go-v1.zip"))
                 .build());
     
             var defaultApplication = new Application("defaultApplication", ApplicationArgs.builder()
                 .name("tf-test-name")
                 .description("tf-test-desc")
                 .build());
     
             var defaultApplicationVersion = new ApplicationVersion("defaultApplicationVersion", ApplicationVersionArgs.builder()
                 .name("tf-test-version-label")
                 .application("tf-test-name")
                 .description("application version")
                 .bucket(default_.id())
                 .key(defaultBucketObjectv2.key())
                 .build());
     
         }
     }
     
     
    • 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
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> application()  
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.lang.String> bucket()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> forceDelete()  
      static ApplicationVersion get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, ApplicationVersionState 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> key()  
      com.pulumi.core.Output<java.lang.String> name()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> process()  
      com.pulumi.core.Output<java.lang.String> region()  
      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()  
      • 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

      • ApplicationVersion

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

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

        public ApplicationVersion​(java.lang.String name,
                                  ApplicationVersionArgs 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

      • application

        public com.pulumi.core.Output<java.lang.String> application()
        Returns:
        Name of the Beanstalk Application the version is associated with.
      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
        Returns:
        ARN assigned by AWS for this Elastic Beanstalk Application.
      • bucket

        public com.pulumi.core.Output<java.lang.String> bucket()
        Returns:
        S3 bucket that contains the Application Version source bundle.
      • description

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
        Returns:
        Short description of the Application Version.
      • forceDelete

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> forceDelete()
        Returns:
        On delete, force an Application Version to be deleted when it may be in use by multiple Elastic Beanstalk Environments.
      • key

        public com.pulumi.core.Output<java.lang.String> key()
        Returns:
        S3 object that is the Application Version source bundle.
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        Unique name for the this Application Version. The following arguments are optional:
      • process

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> process()
        Returns:
        Pre-processes and validates the environment manifest (env.yaml ) and configuration files (*.config files in the .ebextensions folder) in the source bundle. Validating configuration files can identify issues prior to deploying the application version to an environment. You must turn processing on for application versions that you create using AWS CodeBuild or AWS CodeCommit. For application versions built from a source bundle in Amazon S3, processing is optional. It validates Elastic Beanstalk configuration files. It doesn’t validate your application’s configuration files, like proxy server or Docker configuration.
      • 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.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Key-value map of tags for the Elastic Beanstalk Application Version. 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:
        Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
      • get

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