Skip to content

Validate geant products

A task that checks for all products in the database to be well-kept.

task_validate_geant_products()

Validate products in the database.

This task is based on the task_validate_products present in orchestrator-core but it does not check for the existence of the modify_note workflow on all products, since this workflow is currently not used in GEANT.

Source code in gso/workflows/tasks/validate_geant_products.py
@workflow("Validate GEANT products", target=Target.SYSTEM)
def task_validate_geant_products() -> StepList:
    """Validate products in the database.

    This task is based on the ``task_validate_products`` present in ``orchestrator-core`` but it does not check for the
    existence of the ``modify_note`` workflow on all products, since this workflow is currently not used in GEANT.
    """
    return (
        init
        >> check_all_workflows_are_in_db
        >> check_workflows_for_matching_targets_and_descriptions
        # >> check_that_products_have_at_least_one_workflow  FIXME: Uncomment as soon as this would pass again
        >> check_db_fixed_input_config
        >> check_that_products_have_create_modify_and_terminate_workflows
        >> check_subscription_models
        >> done
    )