def create_solution()

in next_steps/operations/ml_ops/personalize-step-functions/lambdas/create-solution/solution.py [0:0]


def create_solution(solutionArn, params):
    try:
        status = LOADER.personalize_cli.describe_solution(
            solutionArn=solutionArn
        )['solution']['status']

    except LOADER.personalize_cli.exceptions.ResourceNotFoundException:
        LOADER.logger.info(
            'Solution not found! Will follow to create a new solution.'
        )
        LOADER.personalize_cli.create_solution(**params)
        status = LOADER.personalize_cli.describe_solution(
            solutionArn=solutionArn
        )['solution']['status']

    while status in {'CREATE PENDING', 'CREATE IN_PROGRESS'}:
        status = LOADER.personalize_cli.describe_solution(
            solutionVersion=solutionArn
        )['solution']['status']

    if status != 'ACTIVE':
        raise actions.ResourceFailed