List of usage examples for com.amazonaws.services.elasticbeanstalk.model CreateConfigurationTemplateRequest CreateConfigurationTemplateRequest
public CreateConfigurationTemplateRequest()
From source file:br.com.ingenieux.jenkins.plugins.awsebdeployment.cmd.ZeroDowntime.java
License:Apache License
private String createConfigurationTemplate(String environmentId) { log("Creating configuration template from application %s with label %s", getApplicationName(), getVersionLabel());/*from w w w .ja v a 2 s. c o m*/ CreateConfigurationTemplateRequest request = new CreateConfigurationTemplateRequest() .withApplicationName(getApplicationName()).withEnvironmentId(environmentId) .withTemplateName("tmp-" + getVersionLabel()); return getAwseb().createConfigurationTemplate(request).getTemplateName(); }
From source file:br.com.ingenieux.mojo.beanstalk.env.TagEnvironmentMojo.java
License:Apache License
@Override protected Object executeInternal() throws AbstractMojoExecutionException { Set<String> configTemplates = new TreeSet<String>(super.getConfigurationTemplates(applicationName)); String today = DATE_FORMAT.format(new Date()); if (StringUtils.isBlank(templateName)) { int i = 1; do {//from w ww.j a va 2s .c om templateName = String.format("%s-%s-%02d", curEnv.getEnvironmentName(), today, i++); } while (configTemplates.contains(templateName)); } CreateConfigurationTemplateResult result = getService().createConfigurationTemplate( new CreateConfigurationTemplateRequest().withEnvironmentId(curEnv.getEnvironmentId()) .withTemplateName(templateName).withApplicationName(curEnv.getApplicationName())); getLog().info("Created config template " + templateName + " for environment " + curEnv.getEnvironmentId()); return result; }
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();/*w ww .ja va2 s.co 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 ww w .j a v a 2 s . com 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.AWSElasticBeanstalkCreateConfigurationTemplateTask.java
License:Apache License
@TaskAction public void createTemplate() { // to enable conventionMappings feature String appName = getAppName(); AwsBeanstalkPluginExtension ext = getProject().getExtensions().getByType(AwsBeanstalkPluginExtension.class); AWSElasticBeanstalk eb = ext.getClient(); configurationTemplates.forEach(config -> { String templateName = config.getName(); String templateDesc = config.getDesc(); String solutionStackName = config.getSolutionStackName() != null ? config.getSolutionStackName() : getDefaultSolutionStackName(); boolean deleteTemplateIfExists = config.isRecreate(); try {/* ww w . j a va 2 s .c o m*/ List<ConfigurationOptionSetting> optionSettings = loadConfigurationOptions( config.getOptionSettings()); List<ApplicationDescription> existingApps = eb .describeApplications(new DescribeApplicationsRequest().withApplicationNames(appName)) .getApplications(); if (existingApps.isEmpty()) { throw new IllegalArgumentException("App with name '" + appName + "' does not exist"); } if (existingApps.get(0).getConfigurationTemplates().contains(templateName)) { if (deleteTemplateIfExists) { eb.deleteConfigurationTemplate(new DeleteConfigurationTemplateRequest() .withApplicationName(appName).withTemplateName(templateName)); getLogger().info("configuration template {} @ {} deleted", templateName, appName); } else { eb.updateConfigurationTemplate(new UpdateConfigurationTemplateRequest() .withApplicationName(appName).withTemplateName(templateName) .withDescription(templateDesc).withOptionSettings(optionSettings)); getLogger().info("configuration template {} @ {} updated", templateName, appName); return; } } eb.createConfigurationTemplate(new CreateConfigurationTemplateRequest().withApplicationName(appName) .withTemplateName(templateName).withDescription(templateDesc) .withSolutionStackName(solutionStackName).withOptionSettings(optionSettings)); getLogger().info("configuration template {} @ {} created", templateName, appName); } catch (IOException e) { getLogger().error("IOException", e); } }); }