TaskAddParameter Classe

Oggetto Azure Batch Task da aggiungere.

Batch ritenta attività quando viene attivata un'operazione di ripristino in un nodo. Esempi di operazioni di ripristino includono (ma non sono limitati) quando un nodo non integro viene riavviato o un nodo di calcolo è scomparso a causa di un errore dell'host. I tentativi dovuti alle operazioni di ripristino sono indipendenti da e non vengono conteggiati rispetto a maxTaskRetryCount. Anche se maxTaskRetryCount è 0, può verificarsi un nuovo tentativo interno a causa di un'operazione di ripristino. Per questo motivo, tutte le attività devono essere idempotenti. Ciò significa che le attività devono tollerare l'interruzione e il riavvio senza causare danni o dati duplicati. La procedura consigliata per le attività a esecuzione prolungata consiste nell'usare una forma di checkpoint.

Tutti i parametri obbligatori devono essere popolati per l'invio ad Azure.

Ereditarietà
TaskAddParameter

Costruttore

TaskAddParameter(*, id: str, command_line: str, display_name: str = None, container_settings=None, exit_conditions=None, resource_files=None, output_files=None, environment_settings=None, affinity_info=None, constraints=None, required_slots: int = None, user_identity=None, multi_instance_settings=None, depends_on=None, application_package_references=None, authentication_token_settings=None, **kwargs)

Parametri

id
str
Necessario

Obbligatorio. L'ID può contenere qualsiasi combinazione di caratteri alfanumerici, inclusi trattini e caratteri di sottolineatura, e non può contenere più di 64 caratteri. L'ID mantiene la distinzione tra maiuscole e minuscole e non fa distinzione tra maiuscole e minuscole, ovvero potrebbe non avere due ID all'interno di un processo che differisce solo per caso.

display_name
str
Necessario

Il nome visualizzato non deve essere univoco e può contenere caratteri Unicode fino a una lunghezza massima di 1024.

command_line
str
Necessario

Obbligatorio. Per attività a istanze multiple, la riga di comando viene eseguita come attività primaria, dopo che l'attività primaria e tutte le sottoattività hanno completato l'esecuzione della riga di comando di coordinamento. La riga di comando non viene eseguita in una shell e pertanto non può sfruttare le funzionalità della shell, ad esempio l'espansione delle variabili di ambiente. Se si desidera sfruttare tali funzionalità, è necessario richiamare la shell nella riga di comando, ad esempio usando "cmd /c MyCommand" in Windows o "/bin/sh -c MyCommand" in Linux. Se la riga di comando fa riferimento ai percorsi di file, deve usare un percorso relativo (relativo alla directory di lavoro attività) o usare la variabile di ambiente fornita da Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

container_settings
TaskContainerSettings
Necessario

Impostazioni per il contenitore in cui viene eseguita l'attività. Se il pool che eseguirà questa attività ha impostato containerConfiguration, è necessario impostare anche questo valore. Se il pool che eseguirà questa attività non dispone di containerConfiguration impostato, non deve essere impostato. Quando viene specificato, tutte le directory vengono mappate in modo ricorsivo al di sotto del AZ_BATCH_NODE_ROOT_DIR (la radice delle directory Azure Batch nel nodo) nel contenitore, tutte le variabili di ambiente dell'attività vengono mappate al contenitore e la riga di comando Task viene eseguita nel contenitore. I file prodotti nel contenitore all'esterno di AZ_BATCH_NODE_ROOT_DIR potrebbero non essere riflessi sul disco host, vale a dire che le API del file Batch non saranno in grado di accedere a tali file.

exit_conditions
ExitConditions
Necessario

Risposta del servizio Batch al completamento dell'attività.

resource_files
list[ResourceFile]
Necessario

Per le attività a istanze multiple, i file di risorse verranno scaricati solo nel nodo di calcolo in cui viene eseguita l'attività primaria. Per l'elenco dei file di risorse è prevista una dimensione massima. Quando viene superata la dimensione massima, la richiesta avrà esito negativo e il codice di errore della risposta sarà RequestEntityTooLarge. In questo caso, la raccolta di ResourceFiles deve essere ridotta di dimensioni. A tale scopo, è possibile usare .zip file, pacchetti dell'applicazione o contenitori Docker.

output_files
list[OutputFile]
Necessario

Per le attività a istanze multiple, i file verranno caricati solo dal nodo di calcolo in cui viene eseguita l'attività primaria.

environment_settings
list[EnvironmentSetting]
Necessario
affinity_info
AffinityInformation
Necessario

Hint di località che può essere usato dal servizio Batch per selezionare un nodo di calcolo in cui avviare la nuova attività.

constraints
TaskConstraints
Necessario

Vincoli di esecuzione che si applicano a questa attività. Se non si specificano vincoli, maxTaskRetryCount è il valore maxTaskRetryCount specificato per job, maxWallClockTime è infinito e retentionTime è di 7 giorni.

required_slots
int
Necessario

Numero di slot di pianificazione necessari per l'esecuzione dell'attività. Il valore predefinito è 1. Un'attività può essere pianificata per l'esecuzione in un nodo di calcolo solo se il nodo dispone di slot di pianificazione gratuiti sufficienti. Per le attività a istanze multiple, deve essere 1.

user_identity
UserIdentity
Necessario

Identità utente con cui viene eseguita l'attività. Se omesso, l'attività viene eseguita come utente non amministrativo univoco per l'attività.

multi_instance_settings
MultiInstanceSettings
Necessario

Oggetto che indica che l'attività è un'attività a istanze multipla e contiene informazioni su come eseguire l'attività a istanze multipla.

depends_on
TaskDependencies
Necessario

Attività da cui dipende questa attività. Questa attività non verrà pianificata fino a quando tutte le attività da cui dipende non saranno state completate correttamente. Se una di queste attività ha esito negativo e esaurisce i conteggi dei tentativi, questa attività non verrà mai pianificata. Se job non ha usesTaskDependencies impostato su true e questo elemento è presente, la richiesta ha esito negativo con codice di errore TaskDependenciesNotSpecifiedOnJob.

application_package_references
list[ApplicationPackageReference]
Necessario

I pacchetti dell'applicazione vengono scaricati e distribuiti in una directory condivisa, non nella directory di lavoro Attività. Pertanto, se un pacchetto a cui si fa riferimento è già presente nel nodo ed è aggiornato, non viene scaricato nuovamente; viene usata la copia esistente nel nodo di calcolo. Se non è possibile installare un pacchetto a cui si fa riferimento, ad esempio perché il pacchetto è stato eliminato o perché il download non è riuscito, l'attività ha esito negativo.

authentication_token_settings
AuthenticationTokenSettings
Necessario

Impostazioni per un token di autenticazione che l'attività può usare per eseguire operazioni del servizio Batch. Se questa proprietà è impostata, il servizio Batch fornisce all'attività un token di autenticazione che può essere usato per autenticare le operazioni del servizio Batch senza richiedere una chiave di accesso account. Il token viene fornito tramite la variabile di ambiente AZ_BATCH_AUTHENTICATION_TOKEN. Le operazioni che l'attività può eseguire usando il token dipendono dalle impostazioni. Ad esempio, un'attività può richiedere autorizzazioni di processo per aggiungere altre attività al processo oppure controllare lo stato del processo o di altre attività nel processo.

Metodi

as_dict

Restituire un dict che può essere JSONify usando json.dump.

L'utilizzo avanzato può facoltativamente usare un callback come parametro:

Key è il nome dell'attributo usato in Python. Attr_desc è un dict di metadati. Attualmente contiene 'type' con il tipo msrest e 'key' con la chiave con codifica RestAPI. Value è il valore corrente in questo oggetto.

La stringa restituita verrà utilizzata per serializzare la chiave. Se il tipo restituito è un elenco, si tratta di un risultato gerarchico dict.

Vedere i tre esempi in questo file:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Se si desidera la serializzazione XML, è possibile passare i kwargs is_xml=True.

deserialize

Analizzare uno str usando la sintassi RestAPI e restituire un modello.

enable_additional_properties_sending
from_dict

Analizzare un dict usando un estrattore di chiave specificato restituisce un modello.

Per impostazione predefinita, considerare gli estrattori di chiave (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor e last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

Restituire il codice JSON che verrebbe inviato ad Azure da questo modello.

Si tratta di un alias per as_dict(full_restapi_key_transformer, keep_readonly=False).

Se si desidera la serializzazione XML, è possibile passare i kwargs is_xml=True.

validate

Convalidare questo modello in modo ricorsivo e restituire un elenco di ValidationError.

as_dict

Restituire un dict che può essere JSONify usando json.dump.

L'utilizzo avanzato può facoltativamente usare un callback come parametro:

Key è il nome dell'attributo usato in Python. Attr_desc è un dict di metadati. Attualmente contiene 'type' con il tipo msrest e 'key' con la chiave con codifica RestAPI. Value è il valore corrente in questo oggetto.

La stringa restituita verrà utilizzata per serializzare la chiave. Se il tipo restituito è un elenco, si tratta di un risultato gerarchico dict.

Vedere i tre esempi in questo file:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Se si desidera la serializzazione XML, è possibile passare i kwargs is_xml=True.

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

Parametri

key_transformer
<xref:function>

Funzione di trasformatore di tasti.

keep_readonly
valore predefinito: True

Restituisce

Oggetto compatibile con JSON dict

Tipo restituito

deserialize

Analizzare uno str usando la sintassi RestAPI e restituire un modello.

deserialize(data, content_type=None)

Parametri

data
str
Necessario

Str che usa la struttura RestAPI. JSON per impostazione predefinita.

content_type
str
valore predefinito: None

JSON per impostazione predefinita, impostare application/xml se XML.

Restituisce

Istanza di questo modello

Eccezioni

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

Analizzare un dict usando un estrattore di chiave specificato restituisce un modello.

Per impostazione predefinita, considerare gli estrattori di chiave (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor e last_rest_key_case_insensitive_extractor)

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

Parametri

data
dict
Necessario

Oggetto dict using RestAPI structure (Struttura RESTAPI)

content_type
str
valore predefinito: None

JSON per impostazione predefinita, impostare application/xml se XML.

key_extractors
valore predefinito: None

Restituisce

Istanza di questo modello

Eccezioni

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

Restituire il codice JSON che verrebbe inviato ad Azure da questo modello.

Si tratta di un alias per as_dict(full_restapi_key_transformer, keep_readonly=False).

Se si desidera la serializzazione XML, è possibile passare i kwargs is_xml=True.

serialize(keep_readonly=False, **kwargs)

Parametri

keep_readonly
bool
valore predefinito: False

Se si desidera serializzare gli attributi readonly

Restituisce

Oggetto compatibile con JSON dict

Tipo restituito

validate

Convalidare questo modello in modo ricorsivo e restituire un elenco di ValidationError.

validate()

Restituisce

Elenco di errori di convalida

Tipo restituito