Compartir a través de


JobSpecification Clase

Especifica los detalles de los trabajos que se van a crear según una programación.

Todos los parámetros necesarios deben rellenarse para enviarlos a Azure.

Herencia
JobSpecification

Constructor

JobSpecification(*, pool_info, priority: int = None, allow_task_preemption: bool = None, max_parallel_tasks: int = -1, display_name: str = None, uses_task_dependencies: bool = None, on_all_tasks_complete=None, on_task_failure=None, network_configuration=None, constraints=None, job_manager_task=None, job_preparation_task=None, job_release_task=None, common_environment_settings=None, metadata=None, **kwargs)

Parámetros

priority
int
Requerido

Prioridad de los trabajos creados en esta programación. Los valores de prioridad pueden oscilar entre -1000 y 1000, siendo -1000 la prioridad más baja y 1000 la prioridad más alta. El valor predeterminado es 0. Esta prioridad se usa como valor predeterminado para todos los trabajos en la programación de trabajos. Puede actualizar la prioridad de un trabajo después de crearla mediante mediante la API de trabajo de actualización.

allow_task_preemption
bool
Requerido

Si las tareas de este trabajo pueden ser adelantadas por otros trabajos de prioridad alta. Si el valor se establece en True, otros trabajos de prioridad alta enviados al sistema tendrán prioridad y podrán volver a poner en cola las tareas de este trabajo. Puede actualizar allowTaskPreemption de un trabajo después de crearlo mediante la API de trabajo de actualización.

max_parallel_tasks
int
Requerido

Número máximo de tareas que se pueden ejecutar en paralelo para el trabajo. El valor de maxParallelTasks debe ser -1 o mayor que 0 si se especifica. Si no se especifica, el valor predeterminado es -1, lo que significa que no hay ningún límite para el número de tareas que se pueden ejecutar a la vez. Puede actualizar maxParallelTasks de un trabajo una vez creado mediante la API de trabajo de actualización. Valor predeterminado: -1 .

display_name
str
Requerido

El nombre no debe ser único y puede contener caracteres Unicode de hasta una longitud máxima de 1024.

uses_task_dependencies
bool
Requerido

Si las tareas del trabajo pueden definir dependencias entre sí. El valor predeterminado es false.

on_all_tasks_complete
str o OnAllTasksComplete
Requerido

La acción que debe realizar el servicio Batch cuando todas las tareas de un trabajo creado en esta programación están en estado completado. Tenga en cuenta que si un trabajo no contiene ninguna tarea, todas las tareas se consideran completadas. Por lo tanto, esta opción se usa con más frecuencia con una tarea del Administrador de trabajos; Si desea usar la finalización automática del trabajo sin un Administrador de trabajos, debe establecer inicialmente onAllTasksComplete en noaction y actualizar las propiedades job para establecer onAllTasksComplete para finalizarjob una vez que haya terminado de agregar Tareas. El valor predeterminado es noaction. Entre los valores posibles se incluyen: "noAction", "terminateJob"

on_task_failure
str o OnTaskFailure
Requerido

La acción que debe realizar el servicio Batch cuando se produce un error en cualquier tarea en un trabajo creado en esta programación. Se considera que se ha producido un error en una tarea si se ha producido un error si tiene un errorInfo. Se establece un errorInfo si la tarea se completa con un código de salida distinto de cero después de agotar su recuento de reintentos, o si se produjo un error al iniciar la tarea, por ejemplo debido a un error de descarga del archivo de recursos. El valor predeterminado es noaction. Entre los valores posibles se incluyen: "noAction", "performExitOptionsJobAction".

network_configuration
JobNetworkConfiguration
Requerido

Configuración de red para el trabajo.

constraints
JobConstraints
Requerido

Restricciones de ejecución para trabajos creados en esta programación.

job_manager_task
JobManagerTask
Requerido

Los detalles de una tarea del Administrador de trabajos que se iniciará cuando se inicia un trabajo en esta programación. Si el trabajo no especifica una tarea del Administrador de trabajos, el usuario debe agregar explícitamente tareas al trabajo mediante la API de tareas. Si el trabajo especifica una tarea del Administrador de trabajos, el servicio Batch crea la tarea administrador de trabajos cuando se crea el trabajo e intentará programar la tarea del Administrador de trabajos antes de programar otras tareas en el trabajo.

job_preparation_task
JobPreparationTask
Requerido

Tarea de preparación de trabajos para trabajos creados en esta programación. Si un trabajo tiene una tarea de preparación de trabajos, el servicio Batch ejecutará la tarea de preparación del trabajo en un nodo antes de iniciar cualquier tarea de ese trabajo en ese nodo de proceso.

job_release_task
JobReleaseTask
Requerido

Tarea de liberación de trabajos para trabajos creados en esta programación. El propósito principal de la tarea de liberación de trabajos es deshacer los cambios realizados en los nodos realizados por la tarea de preparación del trabajo. Las actividades de ejemplo incluyen la eliminación de archivos locales o el apagado de servicios que se iniciaron como parte de la preparación del trabajo. No se puede especificar una tarea de liberación de trabajos sin especificar también una tarea de preparación de trabajos para el trabajo. El servicio Batch ejecuta la tarea de liberación de trabajos en los nodos de proceso que han ejecutado la tarea de preparación del trabajo.

common_environment_settings
list[EnvironmentSetting]
Requerido

Las tareas individuales pueden invalidar una configuración de entorno especificada aquí especificando el mismo nombre de configuración con un valor diferente.

pool_info
PoolInformation
Requerido

Necesario. Grupo en el que el servicio Batch ejecuta las tareas de los trabajos creados en esta programación.

metadata
list[MetadataItem]
Requerido

El servicio Batch no asigna ningún significado a los metadatos; es únicamente para el uso del código de usuario.

Métodos

as_dict

Devuelve un dict que puede ser JSONify mediante json.dump.

El uso avanzado puede usar opcionalmente una devolución de llamada como parámetro:

Key es el nombre de atributo que se usa en Python. Attr_desc es un dict de metadatos. Actualmente contiene 'type' con el tipo msrest y 'key' con la clave codificada restAPI. Value es el valor actual de este objeto.

La cadena devuelta se usará para serializar la clave. Si el tipo de valor devuelto es una lista, se considera una diferencia de resultado jerárquica.

Vea los tres ejemplos de este archivo:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Si desea serialización XML, puede pasar los kwargs is_xml=True.

deserialize

Analice una cadena mediante la sintaxis restAPI y devuelva un modelo.

enable_additional_properties_sending
from_dict

Analizar un dict mediante un extractor de claves dado devuelve un modelo.

De forma predeterminada, considere la posibilidad de extractores de claves (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor y last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Devuelve el JSON que se enviaría a Azure desde este modelo.

Se trata de un alias para as_dict(full_restapi_key_transformer, keep_readonly=False).

Si desea serialización XML, puede pasar los kwargs is_xml=True.

validate

Valide este modelo de forma recursiva y devuelva una lista de ValidationError.

as_dict

Devuelve un dict que puede ser JSONify mediante json.dump.

El uso avanzado puede usar opcionalmente una devolución de llamada como parámetro:

Key es el nombre de atributo que se usa en Python. Attr_desc es un dict de metadatos. Actualmente contiene 'type' con el tipo msrest y 'key' con la clave codificada restAPI. Value es el valor actual de este objeto.

La cadena devuelta se usará para serializar la clave. Si el tipo de valor devuelto es una lista, se considera una diferencia de resultado jerárquica.

Vea los tres ejemplos de este archivo:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Si desea serialización XML, puede pasar los kwargs is_xml=True.

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

Parámetros

key_transformer
<xref:function>

Función de transformador de teclas.

keep_readonly
valor predeterminado: True

Devoluciones

Un objeto compatible con JSON dict

Tipo de valor devuelto

deserialize

Analice una cadena mediante la sintaxis restAPI y devuelva un modelo.

deserialize(data, content_type=None)

Parámetros

data
str
Requerido

Una cadena de datos mediante la estructura restAPI. JSON de forma predeterminada.

content_type
str
valor predeterminado: None

JSON de forma predeterminada, establezca application/xml si XML.

Devoluciones

Instancia de este modelo

Excepciones

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

Analizar un dict mediante un extractor de claves dado devuelve un modelo.

De forma predeterminada, considere la posibilidad de extractores de claves (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor y last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

Parámetros

data
dict
Requerido

Un dict mediante la estructura restAPI

content_type
str
valor predeterminado: None

JSON de forma predeterminada, establezca application/xml si XML.

key_extractors
valor predeterminado: None

Devoluciones

Instancia de este modelo

Excepciones

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

Devuelve el JSON que se enviaría a Azure desde este modelo.

Se trata de un alias para as_dict(full_restapi_key_transformer, keep_readonly=False).

Si desea serialización XML, puede pasar los kwargs is_xml=True.

serialize(keep_readonly=False, **kwargs)

Parámetros

keep_readonly
bool
valor predeterminado: False

Si desea serializar los atributos de solo lectura

Devoluciones

Un objeto compatible con JSON dict

Tipo de valor devuelto

validate

Valide este modelo de forma recursiva y devuelva una lista de ValidationError.

validate()

Devoluciones

Una lista de errores de validación

Tipo de valor devuelto