From 8fdf8467ae435adbc2685995a4392ebf7d2f71a5 Mon Sep 17 00:00:00 2001 From: Federico Negri Date: Mon, 5 Feb 2024 13:41:45 +0100 Subject: [PATCH 1/2] Update RMS models --- .flake8 | 2 +- doc/source/contribute.rst | 2 +- src/ansys/hps/client/rms/models.py | 215 ++++++++++++++--------------- 3 files changed, 102 insertions(+), 117 deletions(-) diff --git a/.flake8 b/.flake8 index 59849d82c..54587f6cc 100644 --- a/.flake8 +++ b/.flake8 @@ -1,5 +1,5 @@ [flake8] -exclude = venv, __init__.py, doc/_build, .venv, ansys/hps/client/rms/models.py, generate_resources.py +exclude = venv, __init__.py, doc/_build, .venv, src/ansys/hps/client/rms/models.py, generate_resources.py select = W191, W291, W293, W391, E115, E117, E122, E124, E125, E225, E231, E301, E303, E501, F401, F403, N801, N802, N803, N804, N805, N806, N807, N815, N816 count = True max-complexity = 10 diff --git a/doc/source/contribute.rst b/doc/source/contribute.rst index 653135af5..c2744abc2 100644 --- a/doc/source/contribute.rst +++ b/doc/source/contribute.rst @@ -159,7 +159,7 @@ data model generator with this command: .. code:: bash - datamodel-codegen --input .\rms_openapi.json --input-file-type openapi --output ansys/hps/client/rms/models.py --output-model-type pydantic_v2.BaseModel + datamodel-codegen --input .\rms_openapi.json --input-file-type openapi --output src/ansys/hps/client/rms/models.py --output-model-type pydantic_v2.BaseModel Post issues ----------- diff --git a/src/ansys/hps/client/rms/models.py b/src/ansys/hps/client/rms/models.py index 3f542b12e..e3e06497a 100644 --- a/src/ansys/hps/client/rms/models.py +++ b/src/ansys/hps/client/rms/models.py @@ -19,10 +19,10 @@ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. -"""Module providing model information.""" + # generated by datamodel-codegen: # filename: rms_openapi.json -# timestamp: 2024-01-15T16:13:17+00:00 +# timestamp: 2024-02-05T12:33:03+00:00 from __future__ import annotations @@ -35,24 +35,23 @@ class ApplicationInfo(BaseModel): - name: str = Field(..., description="Application name", title="Name") - version: str = Field(..., description="Application version", title="Version") + name: str = Field(..., description="Application name.", title="Name") + version: str = Field(..., description="Application version.", title="Version") install_path: str = Field( - ..., description="Installation path of application", title="Install Path" + ..., description="Installation path of application.", title="Install Path" ) executable: str = Field( - ..., description="Executable path to run application", title="Executable" + ..., description="Executable path to run application.", title="Executable" ) environment: Optional[Dict[str, Any]] = Field( - None, description="Environment setup for the process", title="Environment" + None, description="Environment setup for the process.", title="Environment" ) capabilities: Optional[List[str]] = Field( - None, description="Capabilities of this application", title="Capabilities" + None, description="Capabilities of the application.", title="Capabilities" ) customization_hook: Optional[Dict[str, Any]] = Field( None, - description="Details of a custom hook used to modify the configuration before \ - runs are performed", + description="Details of a custom hook used to modify the configuration before runs are performed.", title="Customization Hook", ) @@ -90,13 +89,13 @@ class EvaluatorRegistration(BaseModel): title="Last Modified", ) host_id: Optional[str] = Field( - None, description="Static hardware and configuration-based UUID.", title="Host Id" + None, description="Static, hardware and configuration-based UUID.", title="Host Id" ) host_name: Optional[str] = Field( None, description="Name of the host that the worker is running on.", title="Host Name" ) username: Optional[str] = Field( - None, description="Username that the evaluator authenticated with.", title="Username" + None, description="Username that the worker authenticated with.", title="Username" ) platform: Optional[str] = Field( None, description="OS that the evaluator is running on.", title="Platform" @@ -152,30 +151,27 @@ class KubernetesKedaBackend(BaseModel): ) job_script_template_path: Optional[str] = Field( None, - description="Path to the job script template to use in the backend", + description="Path to the job script template to use in the backend.", title="Job Script Template Path", ) working_dir: Optional[str] = Field( - None, description="Working directory to use in the backend", title="Working Dir" + None, description="Working directory to use in the backend.", title="Working Dir" ) env: Optional[Dict[str, Any]] = Field( - None, description="Static environment variables needed for job execution", title="Env" + None, description="Static environment variables needed for job execution.", title="Env" ) cpu_limit: Optional[str] = Field( - "1.0", description="CPU limit applied to each evaluator instance", title="Cpu Limit" + "1.0", description="CPU limit applied to each evaluator instance.", title="Cpu Limit" ) memory_limit: Optional[str] = Field( - "250M", description="Memory limit applied to each evaluator instance", title="Memory Limit" + "250M", description="Memory limit applied to each evaluator instance.", title="Memory Limit" ) namespace: Optional[str] = Field( - "default", - description="Kubernetes namespace to use to scale evaluators", - title="Namespace", + "default", description="Kubernetes namespace to use to scale evaluators.", title="Namespace" ) target_resource_kind: Optional[str] = Field( "job", - description="Kubernetes resource kind that REP scaler should scale, should be one of \ - job, deployment, statefulset", + description="Kubernetes resource kind that the REP scaler should target. Options are ``job``, ``deployment`` and ``statefulset``.", title="Target Resource Kind", ) @@ -184,8 +180,7 @@ class KubernetesResourceScaling(BaseModel): plugin_name: Literal["kubernetes_resource_scaling"] = Field(..., title="Plugin Name") target_resource_kind: Optional[str] = Field( "job", - description="Kubernetes resource kind that REP scaler should scale, should be one of \ - job, deployment, statefulset", + description="Kubernetes resource kind that the REP scaler should target. Options are ``job``, ``deployment`` and ``statefulset``.", title="Target Resource Kind", ) @@ -196,10 +191,10 @@ class LocalBackend(BaseModel): False, description="Enable additional debugging of the backend", title="Debug" ) working_dir: Optional[str] = Field( - None, description="Working directory to use in the backend", title="Working Dir" + None, description="Working directory to use in the backend.", title="Working Dir" ) env: Optional[Dict[str, Any]] = Field( - None, description="Static environment variables needed for job execution", title="Env" + None, description="Static environment variables needed for job execution.", title="Env" ) @@ -212,9 +207,7 @@ class MaxAvailableResourceScaling(BaseModel): plugin_name: Literal["max_available_resource_scaling"] = Field(..., title="Plugin Name") match_all_requirements: Optional[bool] = Field( False, - description="Whether scaling should work with available resource properties specified in \ - compute resource set (default) or require a match of all requirements of the \ - task definition.", + description="Whether scaling should work with available resource properties specified in compute resource set (default) or require a match of all requirements of the task definition.", title="Match All Requirements", ) @@ -228,18 +221,20 @@ class MockupBackend(BaseModel): class Node(BaseModel): name: Optional[str] = Field(None, description="Node name", title="Name") - total_memory_mb: Optional[int] = Field(..., description="Total memory", title="Total Memory Mb") - total_cores: Optional[int] = Field(..., description="Number of cores", title="Total Cores") + total_memory_mb: Optional[int] = Field( + ..., description="Total memory.", title="Total Memory Mb" + ) + total_cores: Optional[int] = Field(..., description="Number of cores.", title="Total Cores") additional_props: Optional[Dict[str, Any]] = Field({}, title="Additional Props") class NodeGroup(BaseModel): node_names: List[str] = Field(..., title="Node Names") memory_per_node_mb: Optional[int] = Field( - ..., description="Total Memory per node", title="Memory Per Node Mb" + ..., description="Memory per node.", title="Memory Per Node Mb" ) cores_per_node: Optional[int] = Field( - ..., description="Total cores per node", title="Cores Per Node" + ..., description="Cores per node.", title="Cores Per Node" ) @@ -260,25 +255,25 @@ class ProblemDetail(BaseModel): class ProcessLauncherProcessRunner(BaseModel): plugin_name: Literal["process_launcher_module"] = Field(..., title="Plugin Name") default_user: Optional[str] = Field( - None, description="The user to use when none is specified", title="Default User" + None, description="User to use when none is specified.", title="Default User" ) timeout: Optional[int] = Field( 30, description="Timeout in seconds before the request is aborted.", title="Timeout" ) allowed_users: Optional[List[str]] = Field( - None, description="Users allowed to launch processes", title="Allowed Users" + None, description="Users allowed to launch processes.", title="Allowed Users" ) disallowed_users: Optional[List[str]] = Field( - ["root"], description="Users not allowed to launch processes", title="Disallowed Users" + ["root"], description="Users not allowed to launch processes.", title="Disallowed Users" ) user_mapping: Optional[Dict[str, str]] = Field( - {}, description="Map of calling user to system user", title="User Mapping" + {}, description="Map of calling user to system user.", title="User Mapping" ) minimum_uid: Optional[int] = Field( - 1000, description="Minimum UID of users allowed to launch processes", title="Minimum Uid" + 1000, description="Minimum UID of users allowed to launch processes.", title="Minimum Uid" ) minimum_gid: Optional[int] = Field( - 1000, description="Minimum GID of users allowed to launch processes", title="Minimum Gid" + 1000, description="Minimum GID of users allowed to launch processes.", title="Minimum Gid" ) @@ -286,27 +281,27 @@ class Queue(BaseModel): name: Optional[str] = Field(None, description="Queue name", title="Name") node_groups: Optional[List[NodeGroup]] = Field( None, - description="List of node groups associated with the queue (if available)", + description="List of node groups associated with the queue (if available).", title="Node Groups", ) additional_props: Optional[Dict[str, Any]] = Field({}, title="Additional Props") class Resources(BaseModel): - num_cores: Optional[int] = Field(None, description="Number of cores", title="Num Cores") + num_cores: Optional[int] = Field(None, description="Number of cores.", title="Num Cores") platform: Optional[PlatformEnum] = Field( - None, description="Basic platform information: 'windows' or 'linux'" + None, description="Basic platform information. Options are ``'linux'`` and ``'windows'``." ) - memory: Optional[int] = Field(None, description="Amount of RAM in bytes", title="Memory") + memory: Optional[int] = Field(None, description="Amount of RAM in bytes.", title="Memory") disk_space: Optional[int] = Field( - None, description="Amount of disk space in bytes", title="Disk Space" + None, description="Amount of disk space in bytes.", title="Disk Space" ) custom: Optional[Dict[str, Optional[Union[bool, int, str, float]]]] = Field( {}, description="Custom resource properties.", title="Custom" ) num_instances: Optional[int] = Field( None, - description="Number of instances/jobs that can be created on the compute resource set", + description="Number of instances/jobs that can be created on the compute resource set.", title="Num Instances", ) @@ -315,73 +310,72 @@ class RestLauncherProcessRunner(BaseModel): plugin_name: Literal["process_launcher_service"] = Field(..., title="Plugin Name") launcher_url: Optional[str] = Field( "http://localhost:4911", - description="URL to use when none is specified", + description="URL to use when none is specified.", title="Launcher Url", ) verify_ssl: Optional[bool] = Field( - True, description="Check the SSL certificate for HTTPS launchers", title="Verify Ssl" + True, description="Check the SSL certificate for HTTPS launchers.", title="Verify Ssl" ) timeout: Optional[int] = Field( 30, description="Timeout in seconds before the request is aborted.", title="Timeout" ) shell: Optional[bool] = Field( - True, description="Enable the shell interpretation on subprocess run", title="Shell" + True, description="Enable the shell interpretation on subprocess run.", title="Shell" ) class ScalerApplicationInfo(BaseModel): - name: str = Field(..., description="Application name", title="Name") - version: str = Field(..., description="Application version", title="Version") + name: str = Field(..., description="Application name.", title="Name") + version: str = Field(..., description="Application version.", title="Version") install_path: str = Field( - ..., description="Installation path of application", title="Install Path" + ..., description="Installation path of application.", title="Install Path" ) executable: str = Field( - ..., description="Executable path to run application", title="Executable" + ..., description="Executable path to run application.", title="Executable" ) environment: Optional[Dict[str, Any]] = Field( - None, description="Environment setup for the process", title="Environment" + None, description="Environment setup for the process.", title="Environment" ) capabilities: Optional[List[str]] = Field( - None, description="Capabilities of the application", title="Capabilities" + None, description="Capabilities of the application.", title="Capabilities" ) customization_hook: Optional[Dict[str, Any]] = Field( None, - description="Details of a custom hook used to modify the configuration before \ - runs are performed", + description="Details of a custom hook used to modify the configuration before runs are performed.", title="Customization Hook", ) resource_name: Optional[str] = Field( None, - description="Kubernetes object (deployment/statefulset) name to use as target resource \ - by keda", + description="Kubernetes object (deployment/statefulset) name or solver image used as target resource by KEDA", title="Resource Name", ) + evaluator_image: Optional[str] = Field( + None, description="Evaluator image to be used", title="Evaluator Image" + ) scaling_max_eval_instances: Optional[int] = Field( 1, - description="Maximum number of instances that can be created when scaling up", + description="Maximum number of instances that can be created when scaling up.", title="Scaling Max Eval Instances", ) scaling_min_eval_instances: Optional[int] = Field( 0, - description="Minimum number of instances than can be terminated when scaling down", + description="Minimum number of instances than can be terminated when scaling down.", title="Scaling Min Eval Instances", ) scaling_threshold: Optional[int] = Field( 1, - description="Threshold value to determine when Kubernetes deployments should be \ - scaled up or down", + description="Threshold value to determine when Kubernetes deployments should be scaled up or down.", title="Scaling Threshold", ) cool_down_period: Optional[int] = Field( 60, - description="Period to wait after the last trigger reported active before \ - scaling the resource back to 0", + description="Period to wait before scaling down the resource to 0 instances.", title="Cool Down Period", ) class ScalerRegistration(BaseModel): - id: Optional[str] = Field(None, description="Unique ID for this worker", title="Id") + id: Optional[str] = Field(None, description="Unique ID for this worker.", title="Id") name: Optional[str] = Field( None, description="User-defined name for this worker.", title="Name" ) @@ -391,13 +385,13 @@ class ScalerRegistration(BaseModel): title="Last Modified", ) host_id: Optional[str] = Field( - None, description="Static hardware and configuration-based UUID.", title="Host Id" + None, description="Static, hardware and configuration-based UUID.", title="Host Id" ) host_name: Optional[str] = Field( - None, description="Name of the host on which the worker is running", title="Host Name" + None, description="Name of the host that the worker is running on.", title="Host Name" ) username: Optional[str] = Field( - None, description="Username that the evaluator authenticated with.", title="Username" + None, description="Username that the worker authenticated with.", title="Username" ) platform: Optional[str] = Field( None, description="OS that the evaluator is running on.", title="Platform" @@ -407,7 +401,7 @@ class ScalerRegistration(BaseModel): ) config_modified: Optional[datetime] = Field( None, - description="Date and time of the configuration's last modification", + description="Date and time of the configuration's last modification.", title="Config Modified", ) @@ -434,9 +428,9 @@ class Status(BaseModel): class ClusterInfo(BaseModel): - id: Optional[str] = Field(None, description="Unique ID for database", title="Id") - crs_id: Optional[str] = Field(None, description="Compute resource set ID", title="Crs Id") - name: Optional[str] = Field(None, description="Cluster name", title="Name") + id: Optional[str] = Field(None, description="Unique ID for the database.", title="Id") + crs_id: Optional[str] = Field(None, description="Compute resource set ID.", title="Crs Id") + name: Optional[str] = Field(None, description="Cluster name.", title="Name") queues: Optional[List[Queue]] = Field([], title="Queues") nodes: Optional[List[Node]] = Field([], title="Nodes") additional_props: Optional[Dict[str, Dict[str, Any]]] = Field({}, title="Additional Props") @@ -454,13 +448,13 @@ class Context(BaseModel): class EvaluatorResources(BaseModel): - num_cores: Optional[int] = Field(None, description="Number of cores", title="Num Cores") + num_cores: Optional[int] = Field(None, description="Number of cores.", title="Num Cores") platform: Optional[PlatformEnum] = Field( - None, description="Basic platform information: 'windows' or 'linux'" + None, description="Basic platform information. Options are ``'linux'`` and ``'windows'``." ) - memory: Optional[int] = Field(None, description="Amount of RAM in bytes", title="Memory") + memory: Optional[int] = Field(None, description="Amount of RAM in bytes.", title="Memory") disk_space: Optional[int] = Field( - None, description="Amount of disk space in bytes", title="Disk Space" + None, description="Amount of disk space in bytes.", title="Disk Space" ) custom: Optional[Dict[str, Optional[Union[bool, int, str, float]]]] = Field( {}, description="Custom resource properties.", title="Custom" @@ -475,62 +469,61 @@ class OrchestrationInterfacesBackend(BaseModel): ) scheduler_type: Optional[str] = Field( "slurm", - description="Job scheduler type to use in the backend (slurm, pbs, uge...)", + description="Job scheduler type, such as ``slurm``, ``pbs``, ``uge``, or ``lsf`` to use in the backend.", title="Scheduler Type", ) scheduler_queue_default: Optional[str] = Field( None, - description="Job scheduler queue to use for submission", + description="Job scheduler queue to use for submission.", title="Scheduler Queue Default", ) scheduler_command_override: Optional[str] = Field( None, - description="Path to the JSON file with custom scheduler command definitions", + description="Path to the JSON file with custom scheduler command definitions.", title="Scheduler Command Override", ) scheduler_script_override: Optional[str] = Field( None, - description="Path to the shell script to template for the scheduler", + description="Path to the shell script to template for the scheduler.", title="Scheduler Script Override", ) exclusive_default: Optional[bool] = Field( False, - description="Request the scheduler to hold the nodes exclusively for one request", + description="Request the scheduler to hold the nodes exclusively for one request.", title="Exclusive Default", ) distributed_default: Optional[bool] = Field( True, - description="Allow the scheduler to provide multiple machines to fulfill the request", + description="Allow the scheduler to provide multiple machines to fulfill the request.", title="Distributed Default", ) num_cores_default: Optional[int] = Field( 1, - description="Number of cores to request from the scheduler for a task", + description="Number of cores to request from the scheduler for a task.", title="Num Cores Default", ) working_dir: Optional[str] = Field( - None, description="Working directory to use in the backend", title="Working Dir" + None, description="Working directory to use in the backend.", title="Working Dir" ) env: Optional[Dict[str, Any]] = Field( - None, description="Static environment variables needed for job execution", title="Env" + None, description="Static environment variables needed for job execution.", title="Env" ) process_runner: Optional[ Union[ServiceUserProcessRunner, ProcessLauncherProcessRunner, RestLauncherProcessRunner] ] = Field( {"plugin_name": "service_user_module"}, - description="Process runner used to execute commands", + description="Process runner used to execute commands.", discriminator="plugin_name", title="Process Runner", ) create_workdir: Optional[bool] = Field( True, - description="Create base and/or user-specific working directories at runtime", + description="Create base and/or user-specific working directories at runtime.", title="Create Workdir", ) use_templates: Optional[bool] = Field( True, - description="Use the templated versions of the scripts and write them to the \ - working directory", + description="Use the templated versions of the scripts and write them to the working directory.", title="Use Templates", ) @@ -539,10 +532,10 @@ class ComputeResourceSet(BaseModel): name: Optional[str] = Field( "default", description="Name of the compute resource set.", title="Name" ) - id: Optional[str] = Field(None, description="Unique ID for this set.", title="Id") + id: Optional[str] = Field(None, description="ID for this set.", title="Id") scaler_id: Optional[str] = Field( None, - description="Temporary. To be removed after transitioning to ``client_id``.", + description="Temporary. To be removed after transitioning to client_id.", title="Scaler Id", ) last_modified: Optional[datetime] = Field( @@ -572,8 +565,7 @@ class ComputeResourceSet(BaseModel): ) evaluator_requirements_matching: Optional[bool] = Field( False, - description="Whether the evaluators should do matching of resource and \ - software requirements.", + description="Whether the evaluators should do matching of resource and software requirements.", title="Evaluator Requirements Matching", ) evaluator_task_directory_cleanup: Optional[EvaluatorTaskDirectoryCleanup] = Field( @@ -583,12 +575,12 @@ class ComputeResourceSet(BaseModel): ) evaluator_auto_shutdown_time: Optional[int] = Field( 20, - description="Time after which to shut down the evaluator if not running any jobs.", + description="Time after which to shutdown the evaluator if not running any jobs.", title="Evaluator Auto Shutdown Time", ) evaluator_loop_interval: Optional[int] = Field( 5, - description="Main evaluator loop is repeated every ``loop_interval`` seconds.", + description="Number of seconds between each iteration of the evaluator's main loop.", title="Evaluator Loop Interval", ) @@ -606,18 +598,16 @@ class ComputeResourceSetsResponse(BaseModel): class EvaluatorConfiguration(BaseModel): - id: Optional[str] = Field(None, description="Unique DB ID (read-only)", title="Id") + id: Optional[str] = Field(None, description="Unique database ID (read-only).", title="Id") evaluator_id: Optional[str] = Field( None, description="ID of the parent evaluator (read-only).", title="Evaluator Id" ) last_modified: Optional[datetime] = Field( - None, description="Last modified time.", title="Last Modified" + None, description="Last modified time", title="Last Modified" ) working_directory: Optional[str] = Field(None, title="Working Directory") local_file_cache_max_size: Optional[int] = Field( - None, - description="Maximum allowed cache size in bytes or ``None``.", - title="Local File Cache Max Size", + None, description="Maximum allowed cache size in bytes.", title="Local File Cache Max Size" ) max_num_parallel_tasks: Optional[int] = Field(None, title="Max Num Parallel Tasks") task_directory_cleanup: Optional[TaskDirectoryCleanupEnum] = Field( @@ -627,7 +617,7 @@ class EvaluatorConfiguration(BaseModel): task_manager_type: Optional[str] = Field(None, title="Task Manager Type") loop_interval: Optional[float] = Field( 5.0, - description="Main evaluator loop is repeated every ``loop_interval`` seconds.", + description="Number of seconds between each iteration of the evaluator's main loop.", title="Loop Interval", ) local_file_cache: Optional[bool] = Field( @@ -640,19 +630,17 @@ class EvaluatorConfiguration(BaseModel): ) project_server_select: Optional[bool] = Field( True, - description="Get project assignments from the server instead of using the \ - locally set values.", + description="Get project assignments from the server instead of using the locally set values", title="Project Server Select", ) project_list: Optional[List[str]] = Field( [], - description="IDs of the projects that the evaluator should work on in order.", + description="IDs of projects that the evaluator should work on, in order", title="Project List", ) project_assignment_mode: Optional[str] = Field( "all_active", - description="How the evaluator is to select projects to work on. \ - Options are ``all_active``, ``disabled``, and ``list``.", + description="Specifies how the evaluator selects projects to work on. One of: disabled, all_active, list", title="Project Assignment Mode", ) context: Optional[Context] = Field( @@ -661,18 +649,16 @@ class EvaluatorConfiguration(BaseModel): class EvaluatorConfigurationUpdate(BaseModel): - id: Optional[str] = Field(None, description="Unique DB ID (read-only)", title="Id") + id: Optional[str] = Field(None, description="Unique database ID (read-only).", title="Id") evaluator_id: Optional[str] = Field( None, description="ID of the parent evaluator (read-only).", title="Evaluator Id" ) last_modified: Optional[datetime] = Field( - None, description="Last modified time.", title="Last Modified" + None, description="Last modified time", title="Last Modified" ) working_directory: Optional[str] = Field(None, title="Working Directory") local_file_cache_max_size: Optional[int] = Field( - None, - description="Maximum allowed cache size in bytes or ``None``.", - title="Local File Cache Max Size", + None, description="Maximum allowed cache size in bytes.", title="Local File Cache Max Size" ) max_num_parallel_tasks: Optional[int] = Field(None, title="Max Num Parallel Tasks") task_directory_cleanup: Optional[TaskDirectoryCleanupEnum] = Field( @@ -686,7 +672,7 @@ class EvaluatorConfigurationUpdate(BaseModel): ) loop_interval: Optional[float] = Field( None, - description="Main evaluator loop is repeated every ``loop_interval`` seconds.", + description="Number of seconds between each iteration of the evaluator's main loop.", title="Loop Interval", ) local_file_cache: Optional[bool] = Field( @@ -699,13 +685,12 @@ class EvaluatorConfigurationUpdate(BaseModel): ) project_list: Optional[List[str]] = Field( None, - description="IDs of the projects that the evaluator should work on in order.", + description="IDs of projects that the evaluator should work on in order.", title="Project List", ) project_assignment_mode: Optional[str] = Field( None, - description="How the evaluator selects projects to work on. \ - One of: disabled, all_active, list", + description="How the evaluator selects projects to work on. Options are: disabled, all_active, list.", title="Project Assignment Mode", ) context: Optional[ContextUpdate] = Field( From 9afef3b45e332d4390fa7008149ba7d7c80a548e Mon Sep 17 00:00:00 2001 From: Federico Negri Date: Mon, 5 Feb 2024 13:57:17 +0100 Subject: [PATCH 2/2] improve readme --- README.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.rst b/README.rst index 94059d586..e77ac214f 100644 --- a/README.rst +++ b/README.rst @@ -68,7 +68,7 @@ The PyHPS documentation contains these sections: - `Contribute _`: Provides information on how to install PyHPS in developer mode and make contributions to the codebase. -On the `PyHPS Issues ` page, you can +On the `PyHPS Issues `_ page, you can create issues to report bugs and request new features. On the `PyHPS Discussions `_ page or the `Discussions `_ page on the Ansys Developer portal, @@ -84,7 +84,7 @@ PyHPS is licensed under the MIT license. PyHPS makes no commercial claim over Ansys whatsoever. This library extends the functionality of Ansys HPC Platform Services by adding a Python interface to it without changing the core behavior or license of the original software. The use -of PyHPS requires a legally licensed local copy of AEDT. +of PyHPS requires a legally licensed local copy of Ansys HPC Platform Services. -To get a copy of AEDT, see the `Ansys HPC Platform Services Guide `_` +To get a copy of Ansys HPC Platform Services, see the `Ansys HPC Platform Services Guide `_ in the Ansys Help.