Skip to content

Resources

Resource management and dependency injection utilities.

resources

Classes

Functions

find_compatible_platforms(job_platforms, config)

Find compatible platforms for the given job platforms.

This is the default implementation, it can be overridden by the user to provide a custom implementation using the "find_compatible_platforms" key in "diracx" entrypoint.

Parameters:

Name Type Description Default
job_platforms list[str]

list of job platforms

required
config Config

config object

required

Returns:

Type Description
list[str]

list of compatible platforms

Source code in diracx-core/src/diracx/core/resources.py
@supports_extending("diracx.resources", "find_compatible_platforms")
def find_compatible_platforms(job_platforms: list[str], config: Config) -> list[str]:
    """Find compatible platforms for the given job platforms.

    This is the default implementation, it can be overridden by the user to
    provide a custom implementation using the "find_compatible_platforms"
    key in "diracx" entrypoint.

    Args:
        job_platforms: list of job platforms
        config: config object

    Returns:
        list of compatible platforms

    """
    os_compatibility_dict = config.Resources.Computing.OSCompatibility
    return returnValueOrRaise(getDIRACPlatform(job_platforms, os_compatibility_dict))