def _do_schedule_solver_jobs( openshift: OpenShift, index_urls: List[str], package_name: str, package_version: str ) -> int: """Run Python solvers for the given package in specified version.""" _LOGGER.info( "Running solver job for package %r in version %r, results will be scheduled using Argo workflow", package_name, package_version, ) solvers_run = openshift.schedule_all_solvers(packages=f"{package_name}==={package_version}", indexes=index_urls) _LOGGER.debug("Response when running solver jobs: %r", solvers_run) return len(solvers_run)
async def _schedule_all_solvers( openshift: OpenShift, package_name: str, package_version: str, indexes: List[str] ) -> int: """Schedule all solvers.""" packages = f"{package_name}==={package_version}" try: await wait_for_limit(openshift, workflow_namespace=Configuration.THOTH_MIDDLETIER_NAMESPACE) analysis_ids = openshift.schedule_all_solvers(packages=packages, indexes=indexes) _LOGGER.info( "Scheduled solvers for packages %r from indexes %r, analysis ids are %r", packages, indexes, analysis_ids ) are_scheduled = len(analysis_ids) except Exception as e: _LOGGER.exception(f"Failed to schedule solvers for package {packages} from {indexes}: {e}") raise e return are_scheduled