StartTask Classe
- java.
lang. Object - com.
microsoft. azure. management. batch. StartTask
- com.
public class StartTask
Uma tarefa que é executada quando um nó de computação ingressa em um pool no serviço Lote do Azure ou quando o nó de computação é reinicializado ou recriado. Em alguns casos, a tarefa inicial pode ser executada novamente, mesmo que o nó não tenha sido reinicializado. Devido a isso, as tarefas iniciais devem ser idempotentes e sair normalmente se a configuração que estão executando já tiver sido feita. Cuidados especiais devem ser tomados para evitar tarefas iniciais que criam o processo de interrupção ou instalação/inicialização de serviços do diretório de trabalho da tarefa inicial, pois isso impedirá que o Lote seja capaz de executar novamente a tarefa inicial.
Resumo do método
Modificador e tipo | Método e descrição |
---|---|
String |
commandLine()
Obter a linha de comando não é executada em um shell e, portanto, não pode aproveitar os recursos do shell, como expansão de variável de ambiente. Se você quiser aproveitar esses recursos, invoque o shell na linha de comando, por exemplo, usando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Obrigatório se outras propriedades do startTask forem especificadas. |
Task |
containerSettings()
Obtenha quando isso for especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz de Lote do Azure diretórios no nó) são mapeados para o contêiner, todas as variáveis de ambiente de tarefa são mapeadas para o contêiner e a linha de comando da tarefa é executada no contêiner. |
List<Environment |
environmentSettings()
Obtenha o valor environmentSettings. |
Integer |
maxTaskRetryCount()
Obter o serviço do Lote tentará novamente uma tarefa se o código de saída for diferente de zero. Observe que esse valor controla especificamente o número de tentativas. O serviço em lotes tentará a tarefa uma vez e, em seguida, pode tentar novamente até esse limite. Por exemplo, se a contagem máxima de repetições for 3, o Lote tentará a tarefa até 4 vezes (uma tentativa inicial e três novas tentativas). Se a contagem máxima de repetições for 0, o serviço do Lote não repetirá a tarefa. Se a contagem máxima de repetição for -1, o serviço do Lote repetirá a tarefa sem limite. |
List<Resource |
resourceFiles()
Obtenha o valor resourceFiles. |
User |
userIdentity()
Se for omitida, a tarefa será executada como um usuário não administrativo exclusivo para a tarefa. |
Boolean |
waitForSuccess()
Se for true e a tarefa inicial falhar em um nó de computação, o serviço do Lote tentará novamente a tarefa inicial até sua contagem máxima de repetição (maxTaskRetryCount). Se a tarefa ainda não tiver sido concluída com êxito após todas as novas tentativas, o serviço do Lote marcará o nó de computação inutilizável e não agendará tarefas para ela. Essa condição pode ser detectada por meio do estado do nó e dos detalhes do erro de agendamento. Se for falso, o serviço do Lote não aguardará a conclusão da tarefa inicial. Nesse caso, outras tarefas podem começar a ser executadas no nó de computação enquanto a tarefa inicial ainda estiver em execução; e mesmo que a tarefa inicial falhe, novas tarefas continuarão a ser agendadas no nó. O padrão é true. |
Start |
withCommandLine(String commandLine)
Definir a linha de comando não é executado em um shell e, portanto, não pode aproveitar os recursos do shell, como a expansão da variável de ambiente. Se você quiser aproveitar esses recursos, invoque o shell na linha de comando, por exemplo, usando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Obrigatório se quaisquer outras propriedades do startTask forem especificadas. |
Start |
withContainerSettings(TaskContainerSettings containerSettings)
Definido quando isso é especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz de Lote do Azure diretórios no nó) são mapeados para o contêiner, todas as variáveis de ambiente de tarefa são mapeadas para o contêiner e a linha de comando da tarefa é executada no contêiner. |
Start |
withEnvironmentSettings(List<EnvironmentSetting> environmentSettings)
Defina o valor environmentSettings. |
Start |
withMaxTaskRetryCount(Integer maxTaskRetryCount)
Defina o serviço do Lote repetirá uma tarefa se o código de saída não for zero. Observe que esse valor controla especificamente o número de tentativas. O serviço em lotes tentará a tarefa uma vez e, em seguida, pode tentar novamente até esse limite. Por exemplo, se a contagem máxima de repetições for 3, o Lote tentará a tarefa até 4 vezes (uma tentativa inicial e três tentativas). Se a contagem máxima de repetição for 0, o serviço do Lote não repetirá a tarefa. Se a contagem máxima de repetição for -1, o serviço do Lote repetirá a tarefa sem limite. |
Start |
withResourceFiles(List<ResourceFile> resourceFiles)
Defina o valor resourceFiles. |
Start |
withUserIdentity(UserIdentity userIdentity)
Definir se omitido, a tarefa será executada como um usuário não administrativo exclusivo para a tarefa. |
Start |
withWaitForSuccess(Boolean waitForSuccess)
Definir se true e a tarefa inicial falhar em um nó de computação, o serviço do Lote tentará novamente a tarefa inicial até sua contagem máxima de repetição (maxTaskRetryCount). Se a tarefa ainda não tiver sido concluída com êxito após todas as novas tentativas, o serviço do Lote marcará o nó de computação inutilizável e não agendará tarefas para ela. Essa condição pode ser detectada por meio do estado do nó e dos detalhes do erro de agendamento. Se for falso, o serviço do Lote não aguardará a conclusão da tarefa inicial. Nesse caso, outras tarefas podem começar a ser executadas no nó de computação enquanto a tarefa inicial ainda estiver em execução; e mesmo que a tarefa inicial falhe, novas tarefas continuarão a ser agendadas no nó. O padrão é true. |
Detalhes do método
commandLine
public String commandLine()
Obter a linha de comando não é executada em um shell e, portanto, não pode aproveitar os recursos do shell, como expansão de variável de ambiente. Se você quiser aproveitar esses recursos, invoque o shell na linha de comando, por exemplo, usando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Obrigatório se outras propriedades do startTask forem especificadas.
Retornos:
containerSettings
public TaskContainerSettings containerSettings()
Obtenha quando isso for especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz de Lote do Azure diretórios no nó) são mapeados para o contêiner, todas as variáveis de ambiente de tarefa são mapeadas para o contêiner e a linha de comando da tarefa é executada no contêiner.
Retornos:
environmentSettings
public List
Obtenha o valor environmentSettings.
Retornos:
maxTaskRetryCount
public Integer maxTaskRetryCount()
Obter o serviço do Lote tentará novamente uma tarefa se o código de saída for diferente de zero. Observe que esse valor controla especificamente o número de tentativas. O serviço em lotes tentará a tarefa uma vez e, em seguida, pode tentar novamente até esse limite. Por exemplo, se a contagem máxima de repetições for 3, o Lote tentará a tarefa até 4 vezes (uma tentativa inicial e três novas tentativas). Se a contagem máxima de repetições for 0, o serviço do Lote não repetirá a tarefa. Se a contagem máxima de repetição for -1, o serviço do Lote repetirá a tarefa sem limite.
Retornos:
resourceFiles
public List
Obtenha o valor resourceFiles.
Retornos:
userIdentity
public UserIdentity userIdentity()
Se for omitida, a tarefa será executada como um usuário não administrativo exclusivo para a tarefa.
Retornos:
waitForSuccess
public Boolean waitForSuccess()
Se for true e a tarefa inicial falhar em um nó de computação, o serviço do Lote tentará novamente a tarefa inicial até sua contagem máxima de repetição (maxTaskRetryCount). Se a tarefa ainda não tiver sido concluída com êxito após todas as novas tentativas, o serviço do Lote marcará o nó de computação inutilizável e não agendará tarefas para ela. Essa condição pode ser detectada por meio do estado do nó e dos detalhes do erro de agendamento. Se for falso, o serviço do Lote não aguardará a conclusão da tarefa inicial. Nesse caso, outras tarefas podem começar a ser executadas no nó de computação enquanto a tarefa inicial ainda estiver em execução; e mesmo que a tarefa inicial falhe, novas tarefas continuarão a ser agendadas no nó. O padrão é true.
Retornos:
withCommandLine
public StartTask withCommandLine(String commandLine)
Definir a linha de comando não é executado em um shell e, portanto, não pode aproveitar os recursos do shell, como a expansão da variável de ambiente. Se você quiser aproveitar esses recursos, invoque o shell na linha de comando, por exemplo, usando "cmd /c MyCommand" no Windows ou "/bin/sh -c MyCommand" no Linux. Obrigatório se quaisquer outras propriedades do startTask forem especificadas.
Parâmetros:
Retornos:
withContainerSettings
public StartTask withContainerSettings(TaskContainerSettings containerSettings)
Definido quando isso é especificado, todos os diretórios recursivamente abaixo do AZ_BATCH_NODE_ROOT_DIR (a raiz de Lote do Azure diretórios no nó) são mapeados para o contêiner, todas as variáveis de ambiente de tarefa são mapeadas para o contêiner e a linha de comando da tarefa é executada no contêiner.
Parâmetros:
Retornos:
withEnvironmentSettings
public StartTask withEnvironmentSettings(List
Defina o valor environmentSettings.
Parâmetros:
Retornos:
withMaxTaskRetryCount
public StartTask withMaxTaskRetryCount(Integer maxTaskRetryCount)
Defina o serviço do Lote repetirá uma tarefa se o código de saída não for zero. Observe que esse valor controla especificamente o número de tentativas. O serviço em lotes tentará a tarefa uma vez e, em seguida, pode tentar novamente até esse limite. Por exemplo, se a contagem máxima de repetições for 3, o Lote tentará a tarefa até 4 vezes (uma tentativa inicial e três tentativas). Se a contagem máxima de repetição for 0, o serviço do Lote não repetirá a tarefa. Se a contagem máxima de repetição for -1, o serviço do Lote repetirá a tarefa sem limite.
Parâmetros:
Retornos:
withResourceFiles
public StartTask withResourceFiles(List
Defina o valor resourceFiles.
Parâmetros:
Retornos:
withUserIdentity
public StartTask withUserIdentity(UserIdentity userIdentity)
Definir se omitido, a tarefa será executada como um usuário não administrativo exclusivo para a tarefa.
Parâmetros:
Retornos:
withWaitForSuccess
public StartTask withWaitForSuccess(Boolean waitForSuccess)
Definir se true e a tarefa inicial falhar em um nó de computação, o serviço do Lote tentará novamente a tarefa inicial até sua contagem máxima de repetição (maxTaskRetryCount). Se a tarefa ainda não tiver sido concluída com êxito após todas as novas tentativas, o serviço do Lote marcará o nó de computação inutilizável e não agendará tarefas para ela. Essa condição pode ser detectada por meio do estado do nó e dos detalhes do erro de agendamento. Se for falso, o serviço do Lote não aguardará a conclusão da tarefa inicial. Nesse caso, outras tarefas podem começar a ser executadas no nó de computação enquanto a tarefa inicial ainda estiver em execução; e mesmo que a tarefa inicial falhe, novas tarefas continuarão a ser agendadas no nó. O padrão é true.
Parâmetros:
Retornos:
Aplica-se a
Azure SDK for Java