src/workflow/lambda.py [105:145]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        else :
            pass
    
    def _create_sagemaker_image(self, image_name, role, timeout, start_time) :

        try :
            info = self.sm.describe_image(ImageName=image_name)
            
            if info :
                self.sm.update_image(ImageName = image_name,
                                    RoleArn = role)
            else :
                self.sm.create_image(ImageName = image_name,
                                    RoleArn = role)
                                                                    
        except :
            self.sm.create_image(ImageName = image_name,
                                RoleArn = role)
                                        
        while(True) :
            
            info = self.sm.describe_image(ImageName=image_name)
            
            if info["ImageStatus"] == "CREATED" :
                self.update_and_next(info)
                break
            elif info["ImageStatus"] == "CREATE_FAILED" or \
                 info["ImageStatus"] == "UPDATE_FAILED" or \
                 info["ImageStatus"] == "DELETE_FAILED" or \
                 info["ImageStatus"] == "DELETING" : 
                self.update_and_next(info)
                raise Exception(f"Failed to create SageMaker image: {info}.")    
            else :
                self._handle_wait(start_time, timeout)

    def _create_sagemaker_image_version(self, image_name, ecr_uri, timeout, start_time) :
        
        self.sm.create_image_version(BaseImage = ecr_uri,
                                    ImageName = image_name)
        
        version = None
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/workflow/publish.py [70:110]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        else :
            pass
    
    def _create_sagemaker_image(self, image_name, role, timeout, start_time) :

        try :
            info = self.sm.describe_image(ImageName=image_name)
            
            if info :
                self.sm.update_image(ImageName = image_name,
                                    RoleArn = role)
            else :
                self.sm.create_image(ImageName = image_name,
                                    RoleArn = role)
                                                                    
        except :
            self.sm.create_image(ImageName = image_name,
                                RoleArn = role)
                                        
        while(True) :
            
            info = self.sm.describe_image(ImageName=image_name)
            
            if info["ImageStatus"] == "CREATED" :
                self.update_and_next(info)
                break
            elif info["ImageStatus"] == "CREATE_FAILED" or \
                 info["ImageStatus"] == "UPDATE_FAILED" or \
                 info["ImageStatus"] == "DELETE_FAILED" or \
                 info["ImageStatus"] == "DELETING" : 
                self.update_and_next(info)
                raise Exception(f"Failed to create SageMaker image: {info}.")    
            else :
                self._handle_wait(start_time, timeout)

    def _create_sagemaker_image_version(self, image_name, ecr_uri, timeout, start_time) :
        
        self.sm.create_image_version(BaseImage = ecr_uri,
                                    ImageName = image_name)
        
        version = None
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



