use of com.amazonaws.services.cloudformation.model.Parameter in project aws-cf-templates by widdix.
the class TestVPCSshBastion method test.
@Test
public void test() {
final Context context = new Context();
final String vpcStackName = "vpc-2azs-" + this.random8String();
final String bastionStackName = "vpc-ssh-bastion-" + this.random8String();
final String classB = "10";
final String keyName = "key-" + this.random8String();
try {
final KeyPair key = this.createKey(keyName);
try {
this.createStack(context, vpcStackName, "vpc/vpc-2azs.yaml", new Parameter().withParameterKey("ClassB").withParameterValue(classB));
try {
this.createStack(context, bastionStackName, "vpc/vpc-ssh-bastion.yaml", new Parameter().withParameterKey("ParentVPCStack").withParameterValue(vpcStackName), new Parameter().withParameterKey("KeyName").withParameterValue(keyName));
final String host = this.getStackOutputValue(bastionStackName, "IPAddress");
this.probeSSH(context, host, key);
} finally {
this.deleteStack(context, bastionStackName);
}
} finally {
this.deleteStack(context, vpcStackName);
}
} finally {
this.deleteKey(context, keyName);
}
}
use of com.amazonaws.services.cloudformation.model.Parameter in project aws-cf-templates by widdix.
the class TestWordpressHA method testMySQL.
@Test
public void testMySQL() {
final Context context = new Context();
final String zoneStackName = "zone-" + this.random8String();
final String vpcStackName = "vpc-2azs-" + this.random8String();
final String stackName = "wordpress-ha-" + this.random8String();
final String classB = "10";
final String keyName = "key-" + this.random8String();
final String subDomainName = stackName;
final String blogTitle = "Stay-AWSome";
final String blogPassword = this.random8String();
try {
this.createKey(keyName);
try {
this.createStack(context, zoneStackName, "vpc/zone-legacy.yaml", new Parameter().withParameterKey("HostedZoneName").withParameterValue(Config.get(Config.Key.DOMAIN_SUFFIX)), new Parameter().withParameterKey("HostedZoneId").withParameterValue(Config.get(Config.Key.HOSTED_ZONE_ID)));
try {
this.createStack(context, vpcStackName, "vpc/vpc-2azs.yaml", new Parameter().withParameterKey("ClassB").withParameterValue(classB));
try {
this.createStack(context, stackName, "wordpress/wordpress-ha.yaml", new Parameter().withParameterKey("ParentVPCStack").withParameterValue(vpcStackName), new Parameter().withParameterKey("ParentZoneStack").withParameterValue(zoneStackName), new Parameter().withParameterKey("WebServerKeyName").withParameterValue(keyName), new Parameter().withParameterKey("SubDomainNameWithDot").withParameterValue(subDomainName + "."), new Parameter().withParameterKey("CloudFrontAcmCertificate").withParameterValue(Config.get(Config.Key.CLOUDFRONT_ACM_CERTIFICATE_ARN)), new Parameter().withParameterKey("ElbAcmCertificate").withParameterValue(Config.get(Config.Key.ACM_CERTIFICATE_ARN)), new Parameter().withParameterKey("BlogTitle").withParameterValue(blogTitle), new Parameter().withParameterKey("BlogAdminUsername").withParameterValue("admin"), new Parameter().withParameterKey("BlogAdminPassword").withParameterValue(blogPassword), new Parameter().withParameterKey("BlogAdminEMail").withParameterValue("no-reply@widdix.de"), new Parameter().withParameterKey("EFSBackupRetentionPeriod").withParameterValue("0"));
final String url = "https://" + subDomainName + "." + Config.get(Config.Key.DOMAIN_SUFFIX);
final Callable<Boolean> callable = () -> {
final HttpResponse response = WS.url(url).timeout(10000).get();
// check HTTP response code
if (WS.getStatus(response) != 200) {
throw new RuntimeException("200 expected, but saw " + WS.getStatus(response));
}
if (!WS.getResponseAsString(response).contains(blogTitle)) {
throw new RuntimeException("http response body contains \"" + blogTitle + "\"");
}
return true;
};
Assert.assertTrue("WordPress ready", this.retry(context, callable));
} finally {
this.deleteStackAndRetryOnFailure(context, stackName);
}
} finally {
this.deleteStack(context, vpcStackName);
}
} finally {
this.deleteStack(context, zoneStackName);
}
} finally {
this.deleteKey(context, keyName);
}
}
use of com.amazonaws.services.cloudformation.model.Parameter in project pipeline-aws-plugin by jenkinsci.
the class ParameterParseTests method parseStringArray.
@Test
public void parseStringArray() throws IOException {
ParameterProvider parameterProvider = Mockito.mock(ParameterProvider.class);
Mockito.when(parameterProvider.getParams()).thenReturn(new String[] { "foo=bar", "baz=true" });
Collection<Parameter> parameters = ParameterParser.parse(new FilePath(temporaryFolder.newFolder()), parameterProvider);
Assertions.assertThat(parameters).containsExactlyInAnyOrder(new Parameter().withParameterKey("foo").withParameterValue("bar"), new Parameter().withParameterKey("baz").withParameterValue("true"));
}
use of com.amazonaws.services.cloudformation.model.Parameter in project pipeline-aws-plugin by jenkinsci.
the class ParameterParseTests method parseStringList.
@Test
public void parseStringList() throws IOException {
ParameterProvider parameterProvider = Mockito.mock(ParameterProvider.class);
Mockito.when(parameterProvider.getParams()).thenReturn(Arrays.asList("foo=bar", "baz=true"));
Collection<Parameter> parameters = ParameterParser.parse(new FilePath(temporaryFolder.newFolder()), parameterProvider);
Assertions.assertThat(parameters).containsExactlyInAnyOrder(new Parameter().withParameterKey("foo").withParameterValue("bar"), new Parameter().withParameterKey("baz").withParameterValue("true"));
}
use of com.amazonaws.services.cloudformation.model.Parameter in project pipeline-aws-plugin by jenkinsci.
the class YAMLParameterFileParserTests method parseParameters.
@Test
public void parseParameters() throws IOException {
YAMLParameterFileParser parser = new YAMLParameterFileParser();
String json = "bar: foo";
Collection<Parameter> parameters = parser.parseParams(new StringInputStream(json));
Assertions.assertThat(parameters).containsExactlyInAnyOrder(new Parameter().withParameterKey("bar").withParameterValue("foo"));
}
Aggregations