Example usage for com.amazonaws.services.elasticbeanstalk.model CreateEnvironmentRequest CreateEnvironmentRequest

List of usage examples for com.amazonaws.services.elasticbeanstalk.model CreateEnvironmentRequest CreateEnvironmentRequest

Introduction

In this page you can find the example usage for com.amazonaws.services.elasticbeanstalk.model CreateEnvironmentRequest CreateEnvironmentRequest.

Prototype

public CreateEnvironmentRequest() 

Source Link

Document

Default constructor for CreateEnvironmentRequest object.

Usage

From source file:br.com.ingenieux.jenkins.plugins.awsebdeployment.cmd.ZeroDowntime.java

License:Apache License

private String createEnvironment(String versionLabel, String templateName, List<String> environmentNames)
        throws InvalidDeploymentTypeException {
    log("Creating environment based on application %s/%s from version %s and configuration template %s",
            getApplicationName(), getEnvironmentName(), versionLabel, templateName);

    String newEnvironmentName = environmentNames.get(0);

    for (String environmentName : environmentNames) {
        try {//from   w ww.  ja  v a 2 s. c o  m
            lookupEnvironmentIds(Collections.singletonList(environmentName));
        } catch (InvalidEnvironmentsSizeException e) {
            newEnvironmentName = environmentName;

            break;
        }
    }

    CreateEnvironmentRequest request = new CreateEnvironmentRequest().withEnvironmentName(newEnvironmentName)
            .withVersionLabel(versionLabel).withApplicationName(getApplicationName())
            .withTemplateName(templateName);

    return getAwseb().createEnvironment(request).getEnvironmentId();
}

From source file:br.com.ingenieux.mojo.beanstalk.cmd.env.create.CreateEnvironmentCommand.java

License:Apache License

@Override
protected CreateEnvironmentResult executeInternal(CreateEnvironmentContext context) throws Exception {
    CreateEnvironmentRequest request = new CreateEnvironmentRequest();

    request.setApplicationName(context.getApplicationName());
    request.setCNAMEPrefix(parentMojo.ensureSuffixStripped(context.getCnamePrefix()));
    request.setDescription(context.getApplicationDescription());
    request.setEnvironmentName(context.getEnvironmentName());
    request.setTags(context.getTags());/*from w  w w . j  a  v a2 s . c  o  m*/

    request.setOptionSettings(Arrays.asList(context.getOptionSettings()));
    request.setOptionsToRemove(Arrays.asList(context.getOptionsToRemove()));

    if ("Worker".equals(context.getEnvironmentTierName())) {
        if (contextDoesNotContainsEC2Role(context)) {
            parentMojo.getLog().warn(
                    "It is meaningless to launch a worker without an IAM Role. If you set in templateName, thats fine, but here's a warning for you");
        }
        ;
        context.setEnvironmentTierType(StringUtils.defaultString(context.getEnvironmentTierType(), "SQS/HTTP"));
        request.setCNAMEPrefix(null);
        request.setTier(new EnvironmentTier().withName(context.getEnvironmentTierName())
                .withType(context.getEnvironmentTierType()).withVersion(context.getEnvironmentTierVersion()));
    }

    if (StringUtils.isNotBlank(context.getTemplateName())) {
        request.setTemplateName(
                parentMojo.lookupTemplateName(context.getApplicationName(), context.getTemplateName()));
    } else if (StringUtils.isNotBlank(context.getSolutionStack())) {
        request.setSolutionStackName(context.getSolutionStack());
    }

    request.setVersionLabel(context.getVersionLabel());

    if (parentMojo.isVerbose()) {
        parentMojo.getLog()
                .info("Requesting createEnvironment w/ request: " + CredentialsUtil.redact("" + request));
    }

    return service.createEnvironment(request);
}

From source file:fr.xebia.workshop.caching.CreateTomcat.java

License:Apache License

public void createServers() {

    String applicationName = "xfr-cocktail";

    // CREATE APPLICATION
    AmazonAwsUtils.deleteBeanstalkApplicationIfExists(applicationName, beanstalk);
    CreateApplicationRequest createApplicationRequest = new CreateApplicationRequest()
            .withApplicationName(applicationName)
            .withDescription("xfr-cocktail app created at " + new DateTime());

    ApplicationDescription applicationDescription = beanstalk.createApplication(createApplicationRequest)
            .getApplication();/*from w  w w. j  ava  2s.  c o  m*/
    logger.debug("Application {} created", applicationDescription.getApplicationName());

    // CREATE APPLICATION VERSION
    CreateApplicationVersionRequest createApplicationVersion1Request = new CreateApplicationVersionRequest()
            .withApplicationName(applicationDescription.getApplicationName()).withVersionLabel("1.0.0")
            .withSourceBundle(new S3Location("xfr-workshop-caching", "cocktail-app-1.0.0-SNAPSHOT.war"));
    ApplicationVersionDescription applicationVersion1Description = beanstalk
            .createApplicationVersion(createApplicationVersion1Request).getApplicationVersion();
    logger.debug("Application version {}:{} created", applicationVersion1Description.getApplicationName(),
            applicationVersion1Description.getVersionLabel());
    CreateApplicationVersionRequest createApplicationVersion11Request = new CreateApplicationVersionRequest()
            .withApplicationName(applicationDescription.getApplicationName()).withVersionLabel("1.1.0")
            .withSourceBundle(new S3Location("xfr-workshop-caching", "cocktail-app-1.1.0-SNAPSHOT.war"));
    ApplicationVersionDescription applicationVersion11Description = beanstalk
            .createApplicationVersion(createApplicationVersion11Request).getApplicationVersion();
    logger.debug("Application version {}:{} created", applicationVersion11Description.getApplicationName(),
            applicationVersion11Description.getVersionLabel());
    CreateApplicationVersionRequest createApplicationVersion12Request = new CreateApplicationVersionRequest()
            .withApplicationName(applicationDescription.getApplicationName()).withVersionLabel("1.2.0")
            .withSourceBundle(new S3Location("xfr-workshop-caching", "cocktail-app-1.2.0-SNAPSHOT.war"));
    ApplicationVersionDescription applicationVersion12Description = beanstalk
            .createApplicationVersion(createApplicationVersion12Request).getApplicationVersion();
    logger.debug("Application version {}:{} created", applicationVersion12Description.getApplicationName(),
            applicationVersion12Description.getVersionLabel());

    // CREATE CONFIGURATION TEMPLATE
    CreateConfigurationTemplateRequest createConfigurationTemplateRequest = new CreateConfigurationTemplateRequest()
            .withApplicationName(applicationDescription.getApplicationName())
            .withTemplateName(applicationDescription.getApplicationName() + "-base-configuration")
            .withSolutionStackName("32bit Amazon Linux running Tomcat 7").withOptionSettings(
                    new ConfigurationOptionSetting("aws:autoscaling:launchconfiguration", "InstanceType",
                            "t1.micro"),
                    new ConfigurationOptionSetting("aws:autoscaling:launchconfiguration", "EC2KeyName",
                            workshopInfrastructure.getKeyPairName()),

                    new ConfigurationOptionSetting("aws:elasticbeanstalk:sns:topics", "Notification Endpoint",
                            workshopInfrastructure.getBeanstalkNotificationEmail()),

                    new ConfigurationOptionSetting("aws:elasticbeanstalk:application:environment",
                            "AWS_ACCESS_KEY_ID", workshopInfrastructure.getAwsAccessKeyId()),
                    new ConfigurationOptionSetting("aws:elasticbeanstalk:application:environment",
                            "AWS_SECRET_KEY", workshopInfrastructure.getAwsSecretKey()));
    CreateConfigurationTemplateResult configurationTemplateResult = beanstalk
            .createConfigurationTemplate(createConfigurationTemplateRequest);
    logger.debug("Configuration {}:{} created", configurationTemplateResult.getApplicationName(),
            configurationTemplateResult.getTemplateName(), configurationTemplateResult);

    for (String teamIdentifier : workshopInfrastructure.getTeamIdentifiers()) {
        // CREATE ENVIRONMENT
        CreateEnvironmentRequest createEnvironmentRequest = new CreateEnvironmentRequest()
                .withEnvironmentName(applicationDescription.getApplicationName() + "-" + teamIdentifier)
                .withApplicationName(applicationDescription.getApplicationName())
                .withVersionLabel(applicationVersion1Description.getVersionLabel())
                .withCNAMEPrefix(applicationDescription.getApplicationName() + "-" + teamIdentifier)
                .withTemplateName(configurationTemplateResult.getTemplateName());

        CreateEnvironmentResult createEnvironmentResult = beanstalk.createEnvironment(createEnvironmentRequest);

        logger.info("Environment {}:{}:{} created at {}", createEnvironmentResult.getApplicationName(),
                createEnvironmentResult.getVersionLabel(), createEnvironmentResult.getEnvironmentName(),
                Strings.nullToEmpty(createEnvironmentResult.getEndpointURL()));

    }
}

From source file:fr.xebia.workshop.nginx.CreateTomcat.java

License:Apache License

public void createServers() {

    String applicationName = "xfr-cocktail-nginx";

    // CREATE APPLICATION
    AmazonAwsUtils.deleteBeanstalkApplicationIfExists(applicationName, beanstalk);
    CreateApplicationRequest createApplicationRequest = new CreateApplicationRequest()
            .withApplicationName(applicationName).withDescription("xfr-cocktail-nginx app");

    ApplicationDescription applicationDescription = beanstalk.createApplication(createApplicationRequest)
            .getApplication();//from   w  ww  . jav a  2 s . c  o m
    logger.debug("Application {} created", applicationDescription.getApplicationName());

    // CREATE APPLICATION VERSION
    CreateApplicationVersionRequest createApplicationVersion1Request = new CreateApplicationVersionRequest()
            .withApplicationName(applicationDescription.getApplicationName()).withVersionLabel("1.0.0")
            .withSourceBundle(new S3Location("xfr-workshop-caching", "cocktail-app-1.0.0-SNAPSHOT.war"));
    ApplicationVersionDescription applicationVersion1Description = beanstalk
            .createApplicationVersion(createApplicationVersion1Request).getApplicationVersion();
    logger.debug("Application version {}:{} created", applicationVersion1Description.getApplicationName(),
            applicationVersion1Description.getVersionLabel());
    /*CreateApplicationVersionRequest createApplicationVersion11Request = new CreateApplicationVersionRequest()
        .withApplicationName(applicationDescription.getApplicationName())
        .withVersionLabel("1.1.0")
        .withSourceBundle(new S3Location(XFR_WORKSHOP_NGINX, "cocktail-app-1.1.0-SNAPSHOT.war"));
    ApplicationVersionDescription applicationVersion11Description = beanstalk.createApplicationVersion(createApplicationVersion11Request).getApplicationVersion();
    logger.debug("Application version {}:{} created", applicationVersion11Description.getApplicationName(), applicationVersion11Description.getVersionLabel());
    */
    // CREATE CONFIGURATION TEMPLATE
    CreateConfigurationTemplateRequest createConfigurationTemplateRequest = new CreateConfigurationTemplateRequest()
            .withApplicationName(applicationDescription.getApplicationName())
            .withTemplateName(applicationDescription.getApplicationName() + "-base-configuration")
            .withSolutionStackName("32bit Amazon Linux running Tomcat 7").withOptionSettings(
                    new ConfigurationOptionSetting("aws:autoscaling:launchconfiguration", "InstanceType",
                            "t1.micro"),
                    new ConfigurationOptionSetting("aws:autoscaling:launchconfiguration", "EC2KeyName",
                            workshopInfrastructure.getKeyPairName()),

                    new ConfigurationOptionSetting("aws:elasticbeanstalk:sns:topics", "Notification Endpoint",
                            workshopInfrastructure.getBeanstalkNotificationEmail()),

                    new ConfigurationOptionSetting("aws:elasticbeanstalk:application:environment",
                            "AWS_ACCESS_KEY_ID", workshopInfrastructure.getAwsAccessKeyId()),
                    new ConfigurationOptionSetting("aws:elasticbeanstalk:application:environment",
                            "AWS_SECRET_KEY", workshopInfrastructure.getAwsSecretKey()));
    CreateConfigurationTemplateResult configurationTemplateResult = beanstalk
            .createConfigurationTemplate(createConfigurationTemplateRequest);
    logger.debug("Configuration {}:{} created", new Object[] { configurationTemplateResult.getApplicationName(),
            configurationTemplateResult.getTemplateName(), configurationTemplateResult });

    for (String teamIdentifier : workshopInfrastructure.getTeamIdentifiers()) {
        for (int id = 0; id < 2; id++) {
            // CREATE ENVIRONMENT
            CreateEnvironmentRequest createEnvironmentRequest = new CreateEnvironmentRequest()
                    .withEnvironmentName(
                            applicationDescription.getApplicationName() + "-" + teamIdentifier + "-" + id)
                    .withApplicationName(applicationDescription.getApplicationName())
                    .withVersionLabel(applicationVersion1Description.getVersionLabel())
                    .withCNAMEPrefix(
                            applicationDescription.getApplicationName() + "-" + teamIdentifier + "-" + id)
                    .withTemplateName(configurationTemplateResult.getTemplateName());

            CreateEnvironmentResult createEnvironmentResult = beanstalk
                    .createEnvironment(createEnvironmentRequest);

            logger.info("Environment {}:{}:{} created at {}", new Object[] {
                    createEnvironmentResult.getApplicationName(), createEnvironmentResult.getVersionLabel(),
                    createEnvironmentResult.getEnvironmentName(), createEnvironmentResult.getEndpointURL() });
        }

    }
}

From source file:jp.classmethod.aws.gradle.elasticbeanstalk.AWSElasticBeanstalkCreateEnvironmentTask.java

License:Apache License

@TaskAction
public void createEnvironment() { // NOPMD
    // to enable conventionMappings feature
    String appName = getAppName();
    String envName = getEnvName();
    String envDesc = getEnvDesc();
    String cnamePrefix = getCnamePrefix();
    String templateName = getTemplateName();
    String versionLabel = getVersionLabel();
    Tier tier = getTier();//from   w  ww  .  j av a  2 s.c om
    Map<String, String> tags = getTags();

    AwsBeanstalkPluginExtension ext = getProject().getExtensions().getByType(AwsBeanstalkPluginExtension.class);
    AWSElasticBeanstalk eb = ext.getClient();

    DescribeEnvironmentsResult der = eb.describeEnvironments(new DescribeEnvironmentsRequest()
            .withApplicationName(appName).withEnvironmentNames(envName).withIncludeDeleted(false));

    List<Tag> ebTags = tags.entrySet().stream().map(entry -> {
        Tag t = new Tag();
        t.setKey(entry.getKey());
        t.setValue(entry.getValue());
        return t;
    }).collect(Collectors.toList());

    if (der.getEnvironments() == null || der.getEnvironments().isEmpty()) {
        CreateEnvironmentRequest req = new CreateEnvironmentRequest().withApplicationName(appName)
                .withEnvironmentName(envName).withDescription(envDesc).withTemplateName(templateName)
                .withVersionLabel(versionLabel);

        if (tier != null) {
            req.withTier(tier.toEnvironmentTier());
            if (tier == Tier.WebServer) {
                req.withCNAMEPrefix(cnamePrefix);
            }
        }

        if (ebTags != null && !ebTags.isEmpty()) {
            req.withTags(ebTags);
        }

        CreateEnvironmentResult result = eb.createEnvironment(req);
        getLogger().info("environment {} @ {} ({}) created", envName, appName, result.getEnvironmentId());
    } else {
        String environmentId = der.getEnvironments().get(0).getEnvironmentId();

        // Only these two values are required to deploy the a application
        UpdateEnvironmentRequest req = new UpdateEnvironmentRequest().withEnvironmentId(environmentId)
                .withVersionLabel(versionLabel);

        // All other variables are optional and refer to the environment
        if (isNotBlank(envName)) {
            req.withEnvironmentName(envName);
        }
        if (isNotBlank(envDesc)) {
            req.withDescription(envDesc);
        }
        if (isNotBlank(templateName)) {
            req.withTemplateName(templateName);
        }

        eb.updateEnvironment(req);

        getLogger().info("environment {} @ {} ({}) updated", envName, appName, environmentId);
    }
}

From source file:org.cloudml.connectors.BeanstalkConnector.java

License:Open Source License

public void createEnvironment(String applicationName, String domainName, String envName, String stackName) {
    CreateEnvironmentRequest cr = new CreateEnvironmentRequest();
    cr.setApplicationName(applicationName);
    cr.setEnvironmentName(envName);//  ww  w. jav  a2 s . com
    String stack = findSolutionStack(stackName);
    if (!stack.equals("")) {
        cr.setSolutionStackName(stack);
        CheckDNSAvailabilityResult r = checkDNS(domainName);
        if (r.isAvailable()) {
            cr.setCNAMEPrefix(domainName);
            CreateEnvironmentResult res = beanstalkClient.createEnvironment(cr);
            journal.log(Level.INFO, ">> Status of the environment creation: " + res.toString());
        } else {
            journal.log(Level.INFO, ">> Status of the environment creation: Domain Name already existing");
        }
    } else {
        journal.log(Level.INFO, ">> Status of the environment creation: This type of stack does not exist!");
    }
}

From source file:org.cloudml.connectors.BeanstalkConnector.java

License:Open Source License

public String createEnvironmentWithWar(String applicationName, String domainName, String envName,
        String stackName, int minRam, String warFile, String versionLabel) {
    String endPoint = "";
    prepareWar(new File(warFile), versionLabel, applicationName);
    CreateEnvironmentRequest cr = new CreateEnvironmentRequest();

    cr.setApplicationName(applicationName);
    cr.setEnvironmentName(envName);/*from  w  w  w  .jav a  2s. c o m*/
    cr.setVersionLabel(versionLabel);
    String stack = findSolutionStack(stackName);
    if (!stack.equals("")) {
        cr.setSolutionStackName(stack);
        CheckDNSAvailabilityResult r = checkDNS(domainName);
        if (r.isAvailable()) {
            cr.setCNAMEPrefix(domainName);
            CreateEnvironmentResult res = beanstalkClient.createEnvironment(cr);
            endPoint = res.getEndpointURL();
            journal.log(Level.INFO, ">> Status of the environment creation: " + res.toString());
        } else {
            journal.log(Level.INFO, ">> Status of the environment creation: Domain Name already existing");
        }
    } else {
        journal.log(Level.INFO, ">> Status of the environment creation: This type of stack does not exist!");
    }
    return endPoint;
}

From source file:org.xmlsh.aws.gradle.elasticbeanstalk.AWSElasticBeanstalkCreateEnvironmentTask.java

License:BSD License

@TaskAction
public void createEnvironment() {
    // to enable conventionMappings feature
    String appName = getAppName();
    String envName = getEnvName();
    String envDesc = getEnvDesc();
    String cnamePrefix = getCnamePrefix();
    String templateName = getTemplateName();
    String versionLabel = getVersionLabel();
    Tier tier = getTier();/*from   w w w  .ja  v  a2 s.com*/

    AwsBeanstalkPluginExtension ext = getProject().getExtensions().getByType(AwsBeanstalkPluginExtension.class);
    AWSElasticBeanstalk eb = ext.getClient();

    DescribeEnvironmentsResult der = eb.describeEnvironments(new DescribeEnvironmentsRequest()
            .withApplicationName(appName).withEnvironmentNames(envName).withIncludeDeleted(false));

    if (der.getEnvironments() == null || der.getEnvironments().isEmpty()) {
        CreateEnvironmentRequest req = new CreateEnvironmentRequest().withApplicationName(appName)
                .withEnvironmentName(envName).withDescription(envDesc).withTemplateName(templateName)
                .withVersionLabel(versionLabel).withTier(tier.toEnvironmentTier());
        if (tier == Tier.WebServer) {
            req.withCNAMEPrefix(cnamePrefix);
        }
        CreateEnvironmentResult result = eb.createEnvironment(req);
        getLogger().info(
                "environment " + envName + " @ " + appName + " (" + result.getEnvironmentId() + ") created");
    } else {
        String environmentId = der.getEnvironments().get(0).getEnvironmentId();

        eb.updateEnvironment(new UpdateEnvironmentRequest().withEnvironmentId(environmentId)
                .withEnvironmentName(envName).withDescription(envDesc).withTemplateName(templateName)
                .withVersionLabel(versionLabel).withTier(tier.toEnvironmentTier()));
        getLogger().info("environment " + envName + " @ " + appName + " (" + environmentId + ") updated");
    }
}