Task - Add

Adiciona uma Tarefa à Tarefa especificada.
A duração máxima de uma Tarefa desde a adição à conclusão é de 180 dias. Se uma Tarefa não tiver sido concluída no prazo de 180 dias após a sua adição, será terminada pelo serviço Batch e deixada em qualquer estado em que se encontrava nessa altura.

POST {batchUrl}/jobs/{jobId}/tasks?api-version=2023-11-01.18.0
POST {batchUrl}/jobs/{jobId}/tasks?timeout={timeout}&api-version=2023-11-01.18.0

Parâmetros do URI

Name Em Necessário Tipo Description
batchUrl
path True

string

O URL base para todos os pedidos de serviço Azure Batch.

jobId
path True

string

O ID da Tarefa à qual a Tarefa deve ser adicionada.

api-version
query True

string

Versão da API de Cliente.

timeout
query

integer

int32

O tempo máximo que o servidor pode passar a processar o pedido, em segundos. A predefinição é 30 segundos.

Cabeçalho do Pedido

Media Types: "application/json; odata=minimalmetadata"

Name Necessário Tipo Description
client-request-id

string

uuid

A identidade do pedido gerado pelo autor da chamada, na forma de um GUID sem decoração, como chavetas, por exemplo, 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id

boolean

Se o servidor deve devolver o client-request-id na resposta.

ocp-date

string

date-time-rfc1123

A hora em que o pedido foi emitido. Normalmente, as bibliotecas de cliente definem isto como a hora atual do relógio do sistema; defina-o explicitamente se estiver a chamar a API REST diretamente.

Corpo do Pedido

Media Types: "application/json; odata=minimalmetadata"

Name Necessário Tipo Description
commandLine True

string

A linha de comandos da Tarefa.
Para Tarefas de várias instâncias, a linha de comandos é executada como a Tarefa primária, depois de a Tarefa primária e todas as subtarefas terem terminado de executar a linha de comandos de coordenação. A linha de comandos não é executada sob uma shell e, por conseguinte, não pode tirar partido das funcionalidades da shell, como a expansão da variável de ambiente. Se quiser tirar partido destas funcionalidades, deve invocar a shell na linha de comandos, por exemplo, utilizando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Se a linha de comandos se referir a caminhos de ficheiro, deve utilizar um caminho relativo (relativamente ao diretório de trabalho da tarefa) ou utilizar a variável de ambiente fornecido pelo Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

id True

string

Uma cadeia que identifica exclusivamente a Tarefa na Tarefa.
O ID pode conter qualquer combinação de carateres alfanuméricos, incluindo hífenes e carateres de sublinhado, e não pode conter mais de 64 carateres. O ID é de preservação de maiúsculas e minúsculas (ou seja, pode não ter dois IDs numa Tarefa que diferem apenas por maiúsculas e minúsculas).

affinityInfo

AffinityInformation

Uma sugestão de localidade que pode ser utilizada pelo serviço Batch para selecionar um Nó de Computação no qual iniciar a nova Tarefa.

applicationPackageReferences

ApplicationPackageReference[]

Uma lista de Pacotes que o serviço Batch irá implementar no Nó de Computação antes de executar a linha de comandos.
Os pacotes de aplicações são transferidos e implementados num diretório partilhado e não no diretório de trabalho de tarefas. Portanto, se um pacote referenciado já estiver no Nó e estiver atualizado, não será transferido novamente; é utilizada a cópia existente no Nó de Computação. Se não for possível instalar um Pacote referenciado, por exemplo, porque o pacote foi eliminado ou porque a transferência falhou, a Tarefa falha.

authenticationTokenSettings

AuthenticationTokenSettings

As definições de um token de autenticação que a Tarefa pode utilizar para efetuar operações de serviço do Batch.
Se esta propriedade estiver definida, o serviço Batch fornece à Tarefa um token de autenticação que pode ser utilizado para autenticar operações de serviço do Batch sem precisar de uma chave de acesso de Conta. O token é fornecido através da variável de ambiente AZ_BATCH_AUTHENTICATION_TOKEN. As operações que a Tarefa pode realizar com o token dependem das definições. Por exemplo, uma Tarefa pode pedir permissões de Tarefa para adicionar outras Tarefas à Tarefa ou verificar o estado da Tarefa ou de outras Tarefas na Tarefa.

constraints

TaskConstraints

As restrições de execução que se aplicam a esta Tarefa.
Se não especificar restrições, maxTaskRetryCount é o maxTaskRetryCount especificado para a Tarefa, maxWallClockTime é infinito e retentionTime é de 7 dias.

containerSettings

TaskContainerSettings

As definições do contentor no qual a Tarefa é executada.
Se o Conjunto que irá executar esta Tarefa tiver containerConfiguration definido, este também tem de ser definido. Se o Conjunto que irá executar esta Tarefa não tiver containerConfiguration definido, isto não pode ser definido. Quando for especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz dos diretórios Azure Batch no nó) são mapeados para o contentor, todas as variáveis de ambiente de tarefas são mapeadas para o contentor e a linha de comandos Tarefa é executada no contentor. Os ficheiros produzidos no contentor fora do AZ_BATCH_NODE_ROOT_DIR podem não ser refletidos no disco anfitrião, o que significa que as APIs de ficheiro do Batch não poderão aceder a esses ficheiros.

dependsOn

TaskDependencies

As Tarefas de que esta Tarefa depende.
Esta Tarefa só será agendada quando todas as Tarefas de que depende tiverem sido concluídas com êxito. Se qualquer uma dessas Tarefas falhar e esgotar as respetivas contagens de repetição, esta Tarefa nunca será agendada. Se a Tarefa não tiver utilizaTaskDependencies definidas como verdadeiras e este elemento estiver presente, o pedido falha com o código de erro TaskDependenciesNotSpecifiedOnJob.

displayName

string

Um nome a apresentar para a Tarefa.
O nome a apresentar não tem de ser exclusivo e pode conter carateres Unicode até um comprimento máximo de 1024.

environmentSettings

EnvironmentSetting[]

Uma lista de definições de variáveis de ambiente para a Tarefa.

exitConditions

ExitConditions

Especifica como o serviço Batch deve responder quando a Tarefa for concluída.
Como o serviço Batch deve responder quando a Tarefa for concluída.

multiInstanceSettings

MultiInstanceSettings

Um objeto que indica que a Tarefa é uma Tarefa de várias instâncias e contém informações sobre como executar a Tarefa de várias instâncias.
As Tarefas de várias instâncias são normalmente utilizadas para suportar Tarefas de MPI. No caso do MPI, se alguma das subtarefas falhar (por exemplo, devido à saída com um código de saída não zero), toda a Tarefa de várias instâncias falhará. Em seguida, a Tarefa de várias instâncias é terminada e repetida, até ao limite de repetições.

outputFiles

OutputFile[]

Uma lista de ficheiros que o serviço Batch irá carregar a partir do Nó de Computação depois de executar a linha de comandos.
Para tarefas de várias instâncias, os ficheiros só serão carregados a partir do Nó de Computação no qual a Tarefa primária é executada.

requiredSlots

integer

O número de blocos de agendamento que a Tarefa precisava de executar.
A predefinição é 1. Uma Tarefa só pode ser agendada para ser executada num nó de computação se o nó tiver blocos de agendamento gratuitos suficientes disponíveis. Para tarefas de várias instâncias, tem de ser 1.

resourceFiles

ResourceFile[]

Uma lista de ficheiros que o serviço Batch irá transferir para o Nó de Computação antes de executar a linha de comandos.
Para Tarefas de várias instâncias, os ficheiros de recursos só serão transferidos para o Nó de Computação no qual a Tarefa primária é executada. Existe um tamanho máximo para a lista de ficheiros de recursos. Quando o tamanho máximo for excedido, o pedido falhará e o código de erro de resposta será RequestEntityTooLarge. Se isto ocorrer, a coleção de ResourceFiles tem de ser reduzida em tamanho. Isto pode ser conseguido com .zip ficheiros, Pacotes de Aplicações ou Contentores do Docker.

userIdentity

UserIdentity

A identidade de utilizador na qual a Tarefa é executada.
Se omitido, a Tarefa é executada como um utilizador não administrativo exclusivo da Tarefa.

Respostas

Name Tipo Description
201 Created

O pedido ao serviço Batch foi efetuado com êxito.

Headers

  • client-request-id: string
  • request-id: string
  • ETag: string
  • Last-Modified: string
  • DataServiceId: string
Other Status Codes

BatchError

O erro do serviço Batch.

Segurança

azure_auth

Microsoft Entra fluxo de código de autenticação OAuth 2.0

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation Representar a sua conta de utilizador

Authorization

Type: apiKey
In: header

Exemplos

Add a basic task
Add a task with container settings
Add a task with exit conditions
Add a task with extra slot requirement

Add a basic task

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2023-11-01.18.0



{
  "id": "task1",
  "commandLine": "cmd /c echo task1"
}

Sample Response

Add a task with container settings

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2023-11-01.18.0



{
  "id": "taskId",
  "commandLine": "bash -c 'echo hello'",
  "containerSettings": {
    "imageName": "ubuntu",
    "containerRunOptions": "--rm"
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Sample Response

Add a task with exit conditions

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2023-11-01.18.0



{
  "id": "taskId",
  "commandLine": "cmd /c exit 3",
  "exitConditions": {
    "exitCodeRanges": [
      {
        "start": 2,
        "end": 4,
        "exitOptions": {
          "jobAction": "terminate"
        }
      }
    ]
  },
  "userIdentity": {
    "autoUser": {
      "scope": "task",
      "elevationLevel": "nonadmin"
    }
  }
}

Sample Response

Add a task with extra slot requirement

Sample Request

POST account.region.batch.azure.com/jobs/jobId/tasks?api-version=2023-11-01.18.0



{
  "id": "task1",
  "requiredSlots": 2,
  "commandLine": "cmd /c echo task1"
}

Sample Response

Definições

Name Description
AccessScope

Os recursos do Batch aos quais o token concede acesso.

AffinityInformation

Uma sugestão de localidade que pode ser utilizada pelo serviço Batch para selecionar um Nó de Computação no qual iniciar uma Tarefa.

ApplicationPackageReference

Uma referência a um Pacote a ser implementado nos Nós de Computação.

AuthenticationTokenSettings

As definições de um token de autenticação que a Tarefa pode utilizar para realizar operações de serviço do Batch.

AutoUserScope

O âmbito do utilizador automático

AutoUserSpecification

Especifica os parâmetros para o utilizador automático que executa uma Tarefa no serviço Batch.

BatchError

Uma resposta de erro recebida do serviço Azure Batch.

BatchErrorDetail

Um item de informações adicionais incluídas numa resposta de erro Azure Batch.

ComputeNodeIdentityReference

A referência a uma identidade atribuída pelo utilizador associada ao conjunto do Batch que um nó de computação irá utilizar.

ContainerRegistry

Um registo de contentor privado.

ContainerWorkingDirectory

A localização do diretório de trabalho tarefa do contentor.

DependencyAction

Uma ação que o serviço Batch executa em Tarefas que dependem desta Tarefa.

ElevationLevel

O nível de elevação do utilizador.

EnvironmentSetting

Uma variável de ambiente a definir num processo de Tarefa.

ErrorMessage

Uma mensagem de erro recebida numa resposta de erro Azure Batch.

ExitCodeMapping

Como o serviço Batch deve responder se uma Tarefa sair com um código de saída específico.

ExitCodeRangeMapping

Um intervalo de códigos de saída e como o serviço Batch deve responder aos códigos de saída dentro desse intervalo.

ExitConditions

Especifica como o serviço Batch deve responder quando a Tarefa for concluída.

ExitOptions

Especifica como o serviço Batch responde a uma condição de saída específica.

HttpHeader

Um par de nome-valor de cabeçalho HTTP

JobAction

Uma ação a tomar sobre a Tarefa que contém a Tarefa, se a Tarefa for concluída com a condição de saída especificada e a propriedade Job's onTaskFailed for "performExitOptionsJobAction".

MultiInstanceSettings

Definições que especificam como executar uma Tarefa de várias instâncias.

OutputFile

Uma especificação para carregar ficheiros de um Nó de Computação Azure Batch para outra localização depois de o serviço Batch ter terminado de executar o processo de Tarefa.

OutputFileBlobContainerDestination

Especifica um destino de carregamento de ficheiros num contentor de armazenamento de blobs do Azure.

OutputFileDestination

O destino para o qual um ficheiro deve ser carregado.

OutputFileUploadCondition

As condições nas quais deve ser carregado um ficheiro de saída de tarefa ou um conjunto de ficheiros.

OutputFileUploadOptions

Detalhes sobre uma operação de carregamento de ficheiros de saída, incluindo em que condições efetuar o carregamento.

ResourceFile

Um único ficheiro ou vários ficheiros a transferir para um Nó de Computação.

TaskAddParameter

Uma Tarefa de Azure Batch a adicionar.

TaskConstraints

Restrições de execução a aplicar a uma Tarefa.

TaskContainerSettings

As definições de contentor para uma Tarefa.

TaskDependencies

Especifica quaisquer dependências de uma Tarefa. Qualquer Tarefa especificada explicitamente ou dentro de um intervalo de dependências tem de ser concluída antes de a Tarefa dependente ser agendada.

TaskIdRange

Um intervalo de IDs de Tarefas de que uma Tarefa pode depender. Todas as Tarefas com IDs no intervalo têm de ser concluídas com êxito antes de a Tarefa dependente poder ser agendada.

UserIdentity

A definição da identidade de utilizador na qual a Tarefa é executada.

AccessScope

Os recursos do Batch aos quais o token concede acesso.

Name Tipo Description
job

string

Concede acesso para efetuar todas as operações na Tarefa que contém a Tarefa.

AffinityInformation

Uma sugestão de localidade que pode ser utilizada pelo serviço Batch para selecionar um Nó de Computação no qual iniciar uma Tarefa.

Name Tipo Description
affinityId

string

Uma cadeia opaca que representa a localização de um Nó de Computação ou de uma Tarefa que tenha sido executada anteriormente.
Pode transmitir o affinityId de um Nó para indicar que esta Tarefa tem de ser executada nesse Nó de Computação. Tenha em atenção que se trata apenas de uma afinidade suave. Se o Nó de Computação de destino estiver ocupado ou indisponível no momento em que a Tarefa estiver agendada, a Tarefa será agendada noutro local.

ApplicationPackageReference

Uma referência a um Pacote a ser implementado nos Nós de Computação.

Name Tipo Description
applicationId

string

O ID da aplicação a implementar.
Ao criar um conjunto, o ID de aplicação do pacote tem de ser completamente qualificado (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}).

version

string

A versão da aplicação a implementar. Se for omitida, a versão predefinida é implementada.
Se for omitido num Conjunto e não for especificada nenhuma versão predefinida para esta aplicação, o pedido falha com o código de erro InvalidApplicationPackageReferences e o código de estado HTTP 409. Se for omitido numa Tarefa e não for especificada nenhuma versão predefinida para esta aplicação, a Tarefa falha com um erro de pré-processamento.

AuthenticationTokenSettings

As definições de um token de autenticação que a Tarefa pode utilizar para realizar operações de serviço do Batch.

Name Tipo Description
access

AccessScope[]

Os recursos do Batch aos quais o token concede acesso.
O token de autenticação concede acesso a um conjunto limitado de operações de serviço do Batch. Atualmente, o único valor suportado para a propriedade de acesso é "job", que concede acesso a todas as operações relacionadas com a Tarefa que contém a Tarefa.

AutoUserScope

O âmbito do utilizador automático

Name Tipo Description
pool

string

Especifica que a Tarefa é executada como a Conta de utilizador automático comum que é criada em todos os Nós de Computação num Conjunto.

task

string

Especifica que o serviço deve criar um novo utilizador para a Tarefa.

AutoUserSpecification

Especifica os parâmetros para o utilizador automático que executa uma Tarefa no serviço Batch.

Name Tipo Description
elevationLevel

ElevationLevel

O nível de elevação do utilizador automático.
O valor predefinido não éAdmin.

scope

AutoUserScope

O âmbito do utilizador automático
O valor predefinido é conjunto. Se o conjunto estiver a executar o Windows, deve ser especificado um valor de Tarefa se for necessário um isolamento mais rigoroso entre as tarefas. Por exemplo, se a tarefa mudar o registo de uma forma que possa afetar outras tarefas ou se os certificados tiverem sido especificados no conjunto que não devem ser acessíveis por tarefas normais, mas devem ser acessíveis por StartTasks.

BatchError

Uma resposta de erro recebida do serviço Azure Batch.

Name Tipo Description
code

string

Um identificador para o erro. Os códigos são invariantes e destinam-se a ser consumidos programaticamente.

message

ErrorMessage

Uma mensagem que descreve o erro, que se destina a ser adequada para ser apresentada numa interface de utilizador.

values

BatchErrorDetail[]

Uma coleção de pares chave-valor que contém detalhes adicionais sobre o erro.

BatchErrorDetail

Um item de informações adicionais incluídas numa resposta de erro Azure Batch.

Name Tipo Description
key

string

Um identificador que especifica o significado da propriedade Valor.

value

string

As informações adicionais incluídas na resposta de erro.

ComputeNodeIdentityReference

A referência a uma identidade atribuída pelo utilizador associada ao conjunto do Batch que um nó de computação irá utilizar.

Name Tipo Description
resourceId

string

O ID de recurso do ARM da identidade atribuída pelo utilizador.

ContainerRegistry

Um registo de contentor privado.

Name Tipo Description
identityReference

ComputeNodeIdentityReference

A referência à identidade atribuída pelo utilizador a utilizar para aceder a um Azure Container Registry em vez de nome de utilizador e palavra-passe.
A referência a uma identidade atribuída pelo utilizador associada ao conjunto do Batch que um nó de computação irá utilizar.

password

string

A palavra-passe para iniciar sessão no servidor de registo.

registryServer

string

O URL do registo.
Se for omitido, a predefinição é "docker.io".

username

string

O nome de utilizador a iniciar sessão no servidor de registo.

ContainerWorkingDirectory

A localização do diretório de trabalho tarefa do contentor.

Name Tipo Description
containerImageDefault

string

Utilize o diretório de trabalho definido no contentor Imagem. Tenha em atenção que este diretório não conterá os Ficheiros de Recursos transferidos pelo Batch.

taskWorkingDirectory

string

Utilize o diretório de trabalho tarefas do serviço Batch padrão, que irá conter os Ficheiros de Recurso de Tarefa preenchidos pelo Batch.

DependencyAction

Uma ação que o serviço Batch executa em Tarefas que dependem desta Tarefa.

Name Tipo Description
block

string

Bloqueia tarefas à espera desta tarefa, impedindo-as de serem agendadas.

satisfy

string

Satisfaça as tarefas que aguardam por esta tarefa; Assim que todas as dependências estiverem satisfeitas, a tarefa será agendada para ser executada.

ElevationLevel

O nível de elevação do utilizador.

Name Tipo Description
admin

string

O utilizador é um utilizador com acesso elevado e funciona com permissões de Administrador completas.

nonadmin

string

O utilizador é um utilizador padrão sem acesso elevado.

EnvironmentSetting

Uma variável de ambiente a definir num processo de Tarefa.

Name Tipo Description
name

string

O nome da variável de ambiente.

value

string

O valor da variável de ambiente.

ErrorMessage

Uma mensagem de erro recebida numa resposta de erro Azure Batch.

Name Tipo Description
lang

string

O código de idioma da mensagem de erro

value

string

O texto da mensagem.

ExitCodeMapping

Como o serviço Batch deve responder se uma Tarefa sair com um código de saída específico.

Name Tipo Description
code

integer

Um código de saída do processo.

exitOptions

ExitOptions

Como o serviço Batch deve responder se a Tarefa sair com este código de saída.

ExitCodeRangeMapping

Um intervalo de códigos de saída e como o serviço Batch deve responder aos códigos de saída dentro desse intervalo.

Name Tipo Description
end

integer

O último código de saída no intervalo.

exitOptions

ExitOptions

Como o serviço Batch deve responder se a Tarefa sair com um código de saída no intervalo começar a terminar (inclusive).

start

integer

O primeiro código de saída no intervalo.

ExitConditions

Especifica como o serviço Batch deve responder quando a Tarefa for concluída.

Name Tipo Description
default

ExitOptions

Como o serviço Batch deve responder se a Tarefa falhar com uma condição de saída não abrangida por nenhuma das outras propriedades.
Este valor é utilizado se a Tarefa sair com qualquer código de saída nãozero não listado na coleção exitCodes ou exitCodeRanges, com um erro de pré-processamento se a propriedade preProcessingError não estiver presente ou com um erro de carregamento de ficheiros se a propriedade fileUploadError não estiver presente. Se quiser um comportamento não predefinido no código de saída 0, tem de listá-lo explicitamente através da coleção exitCodes ou exitCodeRanges.

exitCodeRanges

ExitCodeRangeMapping[]

Uma lista de intervalos de código de saída de tarefas e como o serviço Batch deve responder aos mesmos.

exitCodes

ExitCodeMapping[]

Uma lista de códigos de saída de tarefas individuais e como o serviço Batch deve responder aos mesmos.

fileUploadError

ExitOptions

Como o serviço Batch deve responder se ocorrer um erro de carregamento de ficheiros.
Se a Tarefa saiu com um código de saída especificado através de exitCodes ou exitCodeRanges e, em seguida, encontrou um erro de carregamento de ficheiros, a ação especificada pelo código de saída tem precedência.

preProcessingError

ExitOptions

Como o serviço Batch deve responder se a Tarefa não iniciar devido a um erro.

ExitOptions

Especifica como o serviço Batch responde a uma condição de saída específica.

Name Tipo Description
dependencyAction

DependencyAction

Uma ação que o serviço Batch executa em Tarefas que dependem desta Tarefa.
Os valores possíveis são "satisfazer" (permitindo que as tarefas dependentes progridam) e "bloquear" (as tarefas dependentes continuam a aguardar). O Batch ainda não suporta o cancelamento de tarefas dependentes.

jobAction

JobAction

Uma ação a executar no Trabalho que contém a Tarefa, se a Tarefa for concluída com a condição de saída especificada e a propriedade onTaskFailed da Tarefa for "performExitOptionsJobAction".
A predefinição não é nenhuma para o código de saída 0 e termina para todas as outras condições de saída. Se a propriedade Job's onTaskFailed for noaction, especificar esta propriedade devolve um erro e o pedido de adicionar Tarefa falha com um erro de valor de propriedade inválido; se estiver a chamar a API REST diretamente, o código de estado HTTP é 400 (Pedido Incorreto).

HttpHeader

Um par de nome-valor de cabeçalho HTTP

Name Tipo Description
name

string

O nome sensível a maiúsculas e minúsculas do cabeçalho a ser utilizado ao carregar ficheiros de saída

value

string

O valor do cabeçalho a ser utilizado ao carregar ficheiros de saída

JobAction

Uma ação a tomar sobre a Tarefa que contém a Tarefa, se a Tarefa for concluída com a condição de saída especificada e a propriedade Job's onTaskFailed for "performExitOptionsJobAction".

Name Tipo Description
disable

string

Desative a Tarefa. Isto é equivalente a chamar a API de Tarefa desativada, com um valor disableTasks de requeue.

none

string

Não tome nenhuma ação.

terminate

string

Termine a Tarefa. O terminateReason na execução da TarefaInfo está definido como "TaskFailed".

MultiInstanceSettings

Definições que especificam como executar uma Tarefa de várias instâncias.

Name Tipo Description
commonResourceFiles

ResourceFile[]

Uma lista de ficheiros que o serviço Batch irá transferir antes de executar a linha de comandos de coordenação.
A diferença entre ficheiros de recursos comuns e ficheiros de recursos de tarefas é que os ficheiros de recursos comuns são transferidos para todas as subtarefas, incluindo a primária, enquanto os ficheiros de recursos de tarefas são transferidos apenas para o principal. Tenha também em atenção que estes ficheiros de recursos não são transferidos para o diretório de trabalho da Tarefa, mas são transferidos para o diretório raiz da tarefa (um diretório acima do diretório de trabalho). Existe um tamanho máximo para a lista de ficheiros de recursos. Quando o tamanho máximo for excedido, o pedido falhará e o código de erro de resposta será RequestEntityTooLarge. Se isto ocorrer, a coleção de ResourceFiles tem de ser reduzida em tamanho. Isto pode ser conseguido com .zip ficheiros, Pacotes de Aplicações ou Contentores do Docker.

coordinationCommandLine

string

A linha de comandos a executar em todos os Nós de Computação para permitir que os mesmos se coordenem quando o principal executa o comando de Tarefa principal.
Uma linha de comandos de coordenação típica inicia um serviço em segundo plano e verifica se o serviço está pronto para processar mensagens entre nós.

numberOfInstances

integer

O número de Nós de Computação exigidos pela Tarefa.
Se omitido, a predefinição é 1.

OutputFile

Uma especificação para carregar ficheiros de um Nó de Computação Azure Batch para outra localização depois de o serviço Batch ter terminado de executar o processo de Tarefa.

Name Tipo Description
destination

OutputFileDestination

O destino dos ficheiros de saída.

filePattern

string

Um padrão que indica os ficheiros a carregar.
Os caminhos relativos e absolutos são suportados. Os caminhos relativos são relativos ao diretório de trabalho da tarefa. São suportados os seguintes carateres universais: * corresponde a 0 ou mais carateres (por exemplo, padrão abc* corresponderia a abc ou abcdef), ** corresponde a qualquer diretório, ? corresponde a qualquer caráter individual, [abc] corresponde a um caráter nos parênteses, e [a-c] corresponde a um caráter no intervalo. Os parênteses podem incluir uma negação para corresponder a qualquer caráter não especificado (por exemplo, [!abc] corresponde a qualquer caráter exceto a, b ou c). Se um nome de ficheiro começar com "" é ignorado por predefinição, mas pode ser correspondido ao especificá-lo explicitamente (por exemplo ,.gif não corresponderá a .a.gif, mas ..gif irá). Um exemplo simples: ***.txt corresponde a qualquer ficheiro que não seja iniciado em '.' e termina com .txt no diretório de trabalho da tarefa ou em qualquer subdiretório. Se o nome do ficheiro contiver um caráter universal, pode ser escapado através de parênteses (por exemplo, abc[] corresponderia a um ficheiro com o nome abc). Tenha em atenção que tanto \ como /são tratados como separadores de diretórios no Windows, mas apenas /está no Linux. As variáveis de ambiente (%var% no Windows ou $var no Linux) são expandidas antes da aplicação do padrão.

uploadOptions

OutputFileUploadOptions

Opções adicionais para a operação de carregamento, incluindo em que condições efetuar o carregamento.

OutputFileBlobContainerDestination

Especifica um destino de carregamento de ficheiros num contentor de armazenamento de blobs do Azure.

Name Tipo Description
containerUrl

string

O URL do contentor no Armazenamento de Blobs do Azure para o qual carregar os ficheiros.
Se não utilizar uma identidade gerida, o URL tem de incluir uma Assinatura de Acesso Partilhado (SAS) que conceda permissões de escrita ao contentor.

identityReference

ComputeNodeIdentityReference

A referência à identidade atribuída pelo utilizador a utilizar para aceder a Armazenamento de Blobs do Azure especificada por containerUrl
A identidade tem de ter acesso de escrita ao contentor de Armazenamento de Blobs do Azure

path

string

O blob de destino ou o diretório virtual no contentor do Armazenamento do Azure.
Se filePattern se referir a um ficheiro específico (ou seja, não contém carateres universais), o caminho é o nome do blob para o qual carregar esse ficheiro. Se filePattern contiver um ou mais carateres universais (e, por conseguinte, corresponder a múltiplos ficheiros), o caminho é o nome do diretório virtual de blobs (que está pré-anexado a cada nome de blob) para o qual carregar os ficheiros. Se omitido, os ficheiros são carregados para a raiz do contentor com um nome de blob correspondente ao respetivo nome de ficheiro.

uploadHeaders

HttpHeader[]

Uma lista de pares nome-valor para os cabeçalhos a serem utilizados no carregamento de ficheiros de saída
Estes cabeçalhos serão especificados ao carregar ficheiros para o Armazenamento do Azure. Documento oficial sobre cabeçalhos permitidos ao carregar blobs: https://docs.microsoft.com/en-us/rest/api/storageservices/put-blob#request-headers-all-blob-types

OutputFileDestination

O destino para o qual um ficheiro deve ser carregado.

Name Tipo Description
container

OutputFileBlobContainerDestination

Uma localização no armazenamento de blobs do Azure para a qual os ficheiros são carregados.

OutputFileUploadCondition

As condições nas quais deve ser carregado um ficheiro de saída de tarefa ou um conjunto de ficheiros.

Name Tipo Description
taskcompletion

string

Carregue os ficheiros após a saída do processo de tarefa, independentemente do código de saída.

taskfailure

string

Carregue os ficheiros apenas após o processo de tarefa sair com um código de saída nãozero.

tasksuccess

string

Carregue os ficheiros apenas após o processo de tarefa sair com um código de saída de 0.

OutputFileUploadOptions

Detalhes sobre uma operação de carregamento de ficheiros de saída, incluindo em que condições efetuar o carregamento.

Name Tipo Description
uploadCondition

OutputFileUploadCondition

As condições em que o ficheiro de saída da tarefa ou o conjunto de ficheiros devem ser carregados.
A predefinição é taskcompletion.

ResourceFile

Um único ficheiro ou vários ficheiros a transferir para um Nó de Computação.

Name Tipo Description
autoStorageContainerName

string

O nome do contentor de armazenamento na Conta de armazenamento automático.
As propriedades autoStorageContainerName, storageContainerUrl e httpUrl são mutuamente exclusivas e uma delas tem de ser especificada.

blobPrefix

string

O prefixo de blobs a utilizar ao transferir blobs a partir de um contentor do Armazenamento do Azure. Apenas os blobs cujos nomes começam com o prefixo especificado serão transferidos.
A propriedade só é válida quando autoStorageContainerName ou storageContainerUrl é utilizado. Este prefixo pode ser um nome de ficheiro parcial ou um subdiretório. Se não for especificado um prefixo, todos os ficheiros no contentor serão transferidos.

fileMode

string

O atributo do modo de permissão de ficheiro no formato octal.
Esta propriedade aplica-se apenas aos ficheiros que estão a ser transferidos para Nós de Computação do Linux. Será ignorado se for especificado para um resourceFile que será transferido para um Nó de Computação do Windows. Se esta propriedade não for especificada para um Nó de Computação do Linux, é aplicado um valor predefinido de 0770 ao ficheiro.

filePath

string

A localização no Nó de Computação para o qual transferir os ficheiros, relativamente ao diretório de trabalho da Tarefa.
Se a propriedade httpUrl for especificada, o filePath é necessário e descreve o caminho para o qual o ficheiro será transferido, incluindo o nome do ficheiro. Caso contrário, se a propriedade autoStorageContainerName ou storageContainerUrl for especificada, filePath é opcional e é o diretório para o qual transferir os ficheiros. No caso em que filePath é utilizado como um diretório, qualquer estrutura de diretório já associada aos dados de entrada será mantida na totalidade e anexada ao diretório filePath especificado. O caminho relativo especificado não consegue sair do diretório de trabalho da Tarefa (por exemplo, utilizando '.').

httpUrl

string

O URL do ficheiro a transferir.
As propriedades autoStorageContainerName, storageContainerUrl e httpUrl são mutuamente exclusivas e uma delas tem de ser especificada. Se o URL apontar para Armazenamento de Blobs do Azure, tem de ser legível a partir de nós de computação. Existem três formas de obter esse URL para um blob no armazenamento do Azure: incluir uma Assinatura de Acesso Partilhado (SAS) que concede permissões de leitura no blob, utilizar uma identidade gerida com permissão de leitura ou definir a ACL para o blob ou o respetivo contentor para permitir o acesso público.

identityReference

ComputeNodeIdentityReference

A referência à identidade atribuída pelo utilizador a utilizar para aceder a Armazenamento de Blobs do Azure especificada por storageContainerUrl ou httpUrl
A referência a uma identidade atribuída pelo utilizador associada ao conjunto do Batch que um nó de computação irá utilizar.

storageContainerUrl

string

O URL do contentor de blobs no Armazenamento de Blobs do Azure.
As propriedades autoStorageContainerName, storageContainerUrl e httpUrl são mutuamente exclusivas e uma delas tem de ser especificada. Este URL tem de ser legível e listável a partir de nós de computação. Existem três formas de obter esse URL para um contentor no armazenamento do Azure: incluir uma Assinatura de Acesso Partilhado (SAS) que concede permissões de leitura e lista no contentor, utilizar uma identidade gerida com permissões de leitura e lista ou definir a ACL para o contentor para permitir o acesso público.

TaskAddParameter

Uma Tarefa de Azure Batch a adicionar.

Name Tipo Description
affinityInfo

AffinityInformation

Uma sugestão de localidade que pode ser utilizada pelo serviço Batch para selecionar um Nó de Computação no qual iniciar a nova Tarefa.

applicationPackageReferences

ApplicationPackageReference[]

Uma lista de Pacotes que o serviço Batch irá implementar no Nó de Computação antes de executar a linha de comandos.
Os pacotes de aplicações são transferidos e implementados num diretório partilhado e não no diretório de trabalho de tarefas. Por conseguinte, se um pacote referenciado já estiver no Nó e estiver atualizado, não será transferido novamente; é utilizada a cópia existente no Nó de Computação. Se não for possível instalar um Pacote referenciado, por exemplo, porque o pacote foi eliminado ou porque a transferência falhou, a Tarefa falha.

authenticationTokenSettings

AuthenticationTokenSettings

As definições de um token de autenticação que a Tarefa pode utilizar para realizar operações de serviço do Batch.
Se esta propriedade estiver definida, o serviço Batch fornece à Tarefa um token de autenticação que pode ser utilizado para autenticar operações de serviço do Batch sem que seja necessária uma Chave de acesso de conta. O token é fornecido através da variável de ambiente AZ_BATCH_AUTHENTICATION_TOKEN. As operações que a Tarefa pode realizar com o token dependem das definições. Por exemplo, uma Tarefa pode pedir permissões de Tarefa para adicionar outras Tarefas à Tarefa ou verificar o estado da Tarefa ou de outras Tarefas na Tarefa.

commandLine

string

A linha de comandos da Tarefa.
Para Tarefas de várias instâncias, a linha de comandos é executada como a Tarefa principal, depois de a Tarefa principal e todas as subtarefas terem terminado de executar a linha de comandos de coordenação. A linha de comandos não é executada numa shell e, por conseguinte, não pode tirar partido das funcionalidades da shell, como a expansão da variável de ambiente. Se quiser tirar partido destas funcionalidades, deve invocar a shell na linha de comandos, por exemplo, utilizando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Se a linha de comandos se referir a caminhos de ficheiro, deve utilizar um caminho relativo (relativo ao diretório de trabalho de tarefas) ou utilizar a variável de ambiente fornecido pelo Batch (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables).

constraints

TaskConstraints

As restrições de execução que se aplicam a esta Tarefa.
Se não especificar restrições, maxTaskRetryCount é o maxTaskRetryCount especificado para a Tarefa, o maxWallClockTime é infinito e o retentionTime é de 7 dias.

containerSettings

TaskContainerSettings

As definições do contentor no qual a Tarefa é executada.
Se o Conjunto que irá executar esta Tarefa tiver containerConfiguration definido, este também tem de ser definido. Se o Conjunto que irá executar esta Tarefa não tiver containerConfiguration definido, não pode ser definido. Quando isto é especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz de Azure Batch diretórios no nó) são mapeados para o contentor, todas as variáveis de ambiente de tarefas são mapeadas para o contentor e a linha de comandos Tarefa é executada no contentor. Os ficheiros produzidos no contentor fora do AZ_BATCH_NODE_ROOT_DIR podem não ser refletidos no disco anfitrião, o que significa que as APIs de ficheiros do Batch não conseguirão aceder a esses ficheiros.

dependsOn

TaskDependencies

As Tarefas de que esta Tarefa depende.
Esta Tarefa só será agendada quando todas as Tarefas de que depende tiverem sido concluídas com êxito. Se alguma dessas Tarefas falhar e esgotar as respetivas contagens de repetições, esta Tarefa nunca será agendada. Se a Tarefa não tiver usesTaskDependencies definido como verdadeiro e este elemento estiver presente, o pedido falha com o código de erro TaskDependenciesNotSpecifiedOnJob.

displayName

string

Um nome a apresentar para a Tarefa.
O nome a apresentar não tem de ser exclusivo e pode conter carateres Unicode até um comprimento máximo de 1024.

environmentSettings

EnvironmentSetting[]

Uma lista de definições de variáveis de ambiente para a Tarefa.

exitConditions

ExitConditions

Especifica como o serviço Batch deve responder quando a Tarefa for concluída.
Como o serviço Batch deve responder quando a Tarefa é concluída.

id

string

Uma cadeia que identifica exclusivamente a Tarefa na Tarefa.
O ID pode conter qualquer combinação de carateres alfanuméricos, incluindo hífenes e carateres de sublinhado, e não pode conter mais de 64 carateres. O ID é de preservação de maiúsculas e minúsculas e não é sensível a maiúsculas e minúsculas (ou seja, pode não ter dois IDs numa Tarefa que diferem apenas por caso).

multiInstanceSettings

MultiInstanceSettings

Um objeto que indica que a Tarefa é uma Tarefa de várias instâncias e contém informações sobre como executar a Tarefa de várias instâncias.
As Tarefas de várias instâncias são normalmente utilizadas para suportar Tarefas de MPI. No caso do MPI, se alguma das subtarefas falhar (por exemplo, devido à saída com um código de saída diferente de zero), toda a Tarefa de várias instâncias falhará. Em seguida, a Tarefa de várias instâncias é terminada e repetida, até ao limite de repetições.

outputFiles

OutputFile[]

Uma lista de ficheiros que o serviço Batch irá carregar a partir do Nó de Computação depois de executar a linha de comandos.
Para Tarefas de várias instâncias, os ficheiros só serão carregados a partir do Nó de Computação no qual a Tarefa principal é executada.

requiredSlots

integer

O número de blocos de agendamento que a Tarefa precisava de executar.
A predefinição é 1. Uma Tarefa só pode ser agendada para ser executada num nó de computação se o nó tiver blocos de agendamento gratuitos suficientes disponíveis. Para tarefas de várias instâncias, tem de ser 1.

resourceFiles

ResourceFile[]

Uma lista de ficheiros que o serviço Batch irá transferir para o Nó de Computação antes de executar a linha de comandos.
Para tarefas de várias instâncias, os ficheiros de recursos só serão transferidos para o Nó de Computação no qual a Tarefa principal é executada. Existe um tamanho máximo para a lista de ficheiros de recursos. Quando o tamanho máximo for excedido, o pedido falhará e o código de erro de resposta será RequestEntityTooLarge. Se isto ocorrer, a coleção de ResourceFiles tem de ser reduzida em tamanho. Isto pode ser conseguido com .zip ficheiros, Pacotes de Aplicações ou Contentores do Docker.

userIdentity

UserIdentity

A identidade de utilizador na qual a Tarefa é executada.
Se for omitida, a Tarefa é executada como um utilizador não administrativo exclusivo da Tarefa.

TaskConstraints

Restrições de execução a aplicar a uma Tarefa.

Name Tipo Description
maxTaskRetryCount

integer

O número máximo de vezes que a Tarefa pode ser repetida. O serviço Batch repetirá uma Tarefa se o código de saída não forzero.
Tenha em atenção que este valor controla especificamente o número de repetições do executável tarefa devido a um código de saída nãozero. O serviço Batch tentará a Tarefa uma vez e, em seguida, poderá repetir até este limite. Por exemplo, se a contagem máxima de repetições for 3, o Batch tentará a Tarefa até 4 vezes (uma tentativa inicial e três repetições). Se a contagem máxima de repetições for 0, o serviço Batch não repetirá a Tarefa após a primeira tentativa. Se a contagem máxima de repetições for -1, o serviço Batch repetirá a Tarefa sem limite, no entanto não é recomendado para uma tarefa de início ou qualquer tarefa. O valor predefinido é 0 (sem repetições).

maxWallClockTime

string

O tempo máximo decorrido que a Tarefa pode executar, medido a partir do momento em que a Tarefa é iniciada. Se a Tarefa não estiver concluída dentro do limite de tempo, o serviço Batch termina-a.
Se isto não for especificado, não existe um limite de tempo para a execução da Tarefa.

retentionTime

string

O tempo mínimo para manter o diretório tarefa no Nó de Computação onde foi executado, a partir do momento em que conclui a execução. Após esta altura, o serviço Batch poderá eliminar o diretório Tarefa e todos os respetivos conteúdos.
A predefinição é de 7 dias, ou seja, o diretório tarefa será mantido durante 7 dias, a menos que o Nó de Computação seja removido ou a Tarefa seja eliminada.

TaskContainerSettings

As definições de contentor para uma Tarefa.

Name Tipo Description
containerRunOptions

string

Opções adicionais para o comando de criação de contentor.
Estas opções adicionais são fornecidas como argumentos para o comando "docker create", além das que são controladas pelo Serviço Batch.

imageName

string

A Imagem a utilizar para criar o contentor no qual a Tarefa será executada.
Esta é a referência de Imagem completa, tal como seria especificada para "docker pull". Se não for fornecida nenhuma etiqueta como parte do Nome da imagem, a etiqueta ":latest" é utilizada como predefinição.

registry

ContainerRegistry

O registo privado que contém o contentor Imagem.
Esta definição pode ser omitida se já tiver sido fornecida na criação do Conjunto.

workingDirectory

ContainerWorkingDirectory

A localização do diretório de trabalho da Tarefa de contentor.
A predefinição é "taskWorkingDirectory".

TaskDependencies

Especifica quaisquer dependências de uma Tarefa. Qualquer Tarefa especificada explicitamente ou dentro de um intervalo de dependências tem de ser concluída antes de a Tarefa dependente ser agendada.

Name Tipo Description
taskIdRanges

TaskIdRange[]

A lista de intervalos de ID de Tarefa de que esta Tarefa depende. Todas as Tarefas em todos os intervalos têm de ser concluídas com êxito antes de a Tarefa dependente poder ser agendada.

taskIds

string[]

A lista de IDs de Tarefa de que esta Tarefa depende. Todas as Tarefas nesta lista têm de ser concluídas com êxito antes de a Tarefa dependente poder ser agendada.
A coleção taskIds está limitada a um total de 64000 carateres (ou seja, o comprimento combinado de todos os IDs de Tarefa). Se a coleção taskIds exceder o comprimento máximo, o pedido Adicionar Tarefa falhará com o código de erro TaskDependencyListTooLong. Neste caso, considere utilizar intervalos de ID de Tarefa.

TaskIdRange

Um intervalo de IDs de Tarefas de que uma Tarefa pode depender. Todas as Tarefas com IDs no intervalo têm de ser concluídas com êxito antes de a Tarefa dependente poder ser agendada.

Name Tipo Description
end

integer

O último ID da Tarefa no intervalo.

start

integer

O primeiro ID da Tarefa no intervalo.

UserIdentity

A definição da identidade de utilizador na qual a Tarefa é executada.

Name Tipo Description
autoUser

AutoUserSpecification

O utilizador automático no qual a Tarefa é executada.
As propriedades userName e autoUser são mutuamente exclusivas; tem de especificar um, mas não ambos.

username

string

O nome da identidade de utilizador na qual a Tarefa é executada.
As propriedades userName e autoUser são mutuamente exclusivas; tem de especificar um, mas não ambos.