Como fazer com que uma sequência de tarefas do SCCM falhe de propósito?

2

Estou instalando um software bastante complexo usando uma sequência de tarefas no SCCM 1607 (também conhecido como SCCM 2016). Dentro da sequência de tarefas, eu tenho um bloco try / catch para que eu possa restaurar o computador para um estado de trabalho se o TS falhar.

Assim:

O problema aqui é que, quando há uma falha real na sequência de tarefas, a rotina de tratamento de erros executa seu trabalho e a sequência de tarefas sai normalmente. Estou capturando meus próprios logs dentro da sequência para refletir o erro, mas no que diz respeito ao SCCM, a instalação foi um sucesso. O usuário não recebe nenhum tipo de notificação e o aplicativo é exibido no Centro de Software como instalado, embora não seja. Eu tenho que olhar meus próprios logs para obter qualquer tipo de relatório sobre os erros, e o SCCM nunca tentará novamente a instalação por conta própria.

Como posso forçar a sequência de tarefas a falhar como o último passo no meu bloco de tratamento de erros? Quero que o usuário veja um erro e ligue para o suporte técnico. Eu também quero ver a falha no console do SCCM, e eu quero que o TS repita por conta própria (a versão antiga falha em desinstalar se estiver em uso e quase todas as falhas que vi nos testes são porque o usuário logou e o lançou antes que o TS tivesse a chance de removê-lo).

    
por Wes Sayeed 22.02.2017 / 19:31

1 resposta

0

Para que uma sequência de tarefas falhe, você pode usar uma etapa da sequência de tarefas "Executar linha de comando" para executar um comando que retorna um código de saída diferente de zero 1 . Por exemplo:

cmd /c exit 1

(É claro que você também deve garantir que a caixa de seleção "Continue on error" para a etapa da sequência de tarefas esteja desmarcada.)

De fato, você pode substituir o 1 acima por qualquer outro número se quiser usar diferentes códigos de saída para refletir diferentes motivos de falha. Isso permitiria identificar quais instalações falharam por um motivo específico.

Tudo isso dito, uma sequência de tarefas pode não ser o melhor mecanismo para esse caso de uso específico. Considere a implantação deste software com um aplicativo (ou pacote e programa) usando o Powershell App Deployment Toolkit . Ele fornece muitos recursos úteis, incluindo a capacidade de fechar aplicativos e impedir que os usuários o relancem até que a instalação seja concluída.

1 Tecnicamente, o código de saída deve ser um dos números não listados no campo "Códigos de sucesso" na guia Opções da etapa da sequência de tarefas, que por padrão são 0 e 3010 .

    
por 12.03.2017 / 20:31

Tags