in aws-sagemaker-imageversion/src/main/java/software/amazon/sagemaker/imageversion/CreateHandler.java [115:147]
private boolean stabilizedOnCreate(
final CreateImageVersionRequest createImageVersionRequest,
final CreateImageVersionResponse createImageVersionResponse,
final ProxyClient<SageMakerClient> proxyClient,
final ResourceModel model,
final CallbackContext callbackContext) {
if (model.getImageVersionArn() == null) {
model.setImageVersionArn(createImageVersionResponse.imageVersionArn());
}
final ImageVersionStatus imageVersionStatus= proxyClient.injectCredentialsAndInvokeV2(
Translator.translateToReadRequest(model), proxyClient.client()::describeImageVersion)
.imageVersionStatus();
switch (imageVersionStatus) {
case CREATE_FAILED:
throw new CfnGeneralServiceException(String.format("%s [%s] failed to create.", ResourceModel.TYPE_NAME,
model.getImageVersionArn()));
case CREATED:
logger.log(String.format("%s [%s] has been stabilized with status %s.", ResourceModel.TYPE_NAME,
model.getImageVersionArn(), imageVersionStatus));
return true;
case CREATING:
logger.log(String.format("%s [%s] is stabilizing %s.", ResourceModel.TYPE_NAME,
model.getImageVersionArn(), imageVersionStatus));
return false;
default:
throw new CfnGeneralServiceException(
String.format("Stabilizing of %s failed with an unexpected status %s",
model.getImageVersionArn(), imageVersionStatus));
}
}