use of com.sequenceiq.cloudbreak.api.model.v2.ImageSettings in project cloudbreak by hortonworks.
the class StackToStackV2RequestConverter method prepareImage.
private void prepareImage(Stack source, StackV2Request stackV2Request) {
try {
Image image = componentConfigProvider.getImage(source.getId());
ImageSettings is = new ImageSettings();
is.setImageId(Strings.isNullOrEmpty(image.getImageId()) ? "" : image.getImageId());
is.setImageCatalog(Strings.isNullOrEmpty(image.getImageCatalogName()) ? "" : image.getImageCatalogName());
stackV2Request.setImageSettings(is);
} catch (CloudbreakImageNotFoundException e) {
LOGGER.error(e.toString());
}
}
use of com.sequenceiq.cloudbreak.api.model.v2.ImageSettings in project cloudbreak by hortonworks.
the class AbstractStackCreationV2Test method createStackRequest.
@BeforeMethod(groups = "V2StackCreationInit")
@Parameters({ "stackName", "credentialName", "region", "availabilityZone", "imageCatalog", "imageId" })
public void createStackRequest(String stackName, @Optional("") String credentialName, @Optional("") String region, @Optional("") String availabilityZone, @Optional("") String imageCatalog, @Optional("") String imageId) {
IntegrationTestContext itContext = getItContext();
credentialName = StringUtils.hasText(credentialName) ? credentialName : itContext.getContextParam(CloudbreakV2Constants.CREDENTIAL_NAME);
region = StringUtils.hasText(region) ? region : itContext.getContextParam(CloudbreakV2Constants.REGION);
availabilityZone = StringUtils.hasText(availabilityZone) ? availabilityZone : itContext.getContextParam(CloudbreakV2Constants.AVAILABILTYZONE);
imageCatalog = StringUtils.hasText(imageCatalog) ? imageCatalog : itContext.getContextParam(CloudbreakV2Constants.IMAGECATALOG);
imageId = StringUtils.hasText(imageId) ? imageId : itContext.getContextParam(CloudbreakV2Constants.IMAGEID);
Map<String, InstanceGroupV2Request> instanceGroupV2RequestMap = itContext.getContextParam(CloudbreakV2Constants.INSTANCEGROUP_MAP, Map.class);
Assert.assertTrue(StringUtils.hasText(credentialName), "Credential name is mandatory.");
Assert.assertTrue(StringUtils.hasText(region), "Region is mandatory.");
Assert.assertTrue(StringUtils.hasText(availabilityZone), "AvailabilityZone is mandatory.");
Assert.assertNotNull(instanceGroupV2RequestMap, "InstanceGroup map is mandatory");
StackV2Request stackV2Request = new StackV2Request();
GeneralSettings gs = new GeneralSettings();
stackV2Request.setGeneral(gs);
gs.setName(stackName);
gs.setCredentialName(credentialName);
PlacementSettings ps = new PlacementSettings();
stackV2Request.setPlacement(ps);
ps.setRegion(region);
ps.setAvailabilityZone(availabilityZone);
if (StringUtils.hasText(imageCatalog) || StringUtils.hasText(imageId)) {
ImageSettings is = new ImageSettings();
is.setImageCatalog(imageCatalog);
is.setImageId(imageId);
stackV2Request.setImageSettings(is);
}
stackV2Request.setInstanceGroups(Lists.newArrayList(instanceGroupV2RequestMap.values()));
itContext.putContextParam(CloudbreakV2Constants.STACK_CREATION_REQUEST, stackV2Request);
}
Aggregations