Como as Etapas São Executadas

Em uma definição de etapa, a propriedade de comando contém comandos do sistema operacional, comandos com ponto ou uma combinação de ambos.

Mais de um comando pode ser executado em uma etapa individual. Separe comandos individuais, colocando-os em linhas separadas.
Nota: Quando você utiliza a configuração Código de Saída padrão para a propriedade Resultado da etapa, o êxito ou falha da etapa inteira baseia-se no último comando da etapa. Para detectar falha em algum dos comandos, crie um Filtro de Log e especifique seu uso na propriedade Resultado.

Antes de o sistema executar uma etapa, ele constrói o ambiente da etapa. As variáveis são configuradas usando os valores especificados no ambiente do servidor, ambiente do projeto e ambiente da etapa. Consulte o Herança de Ambiente. Por padrão, as variáveis são analisadas e estão disponíveis para uso em comandos. Consulte o Interpretação de Variáveis em Etapas.

Especificando um Shell

É possível usar a diretiva #! para especificar o shell a ser usado para executar os comandos. Isso funciona nos sistemas Windows® e também no Linux® e UNIX® (o agente Windows controla a transmissão de comandos para o interpretador especificado). Para enviar comandos da etapa para uma cópia de Perl em C:\perl\bin no Windows, use #!C:\perl\bin\perl.exe. Se você utilizar o agente do Windows com o Cygwin, mas precisar direcionar um comando para o shell do Windows cmd.exe, poderá utilizar a seguinte linha, que apresenta a vantagem de caminhos implícitos do Windows:

#!cmd.exe /C

Observe que a opção /C é necessária para cmd.exe, pois caso contrário aguardará os comandos adicionais após o envio dos comandos da etapa. É possível usar o comando #!/bin/perl em um computador UNIX ou Linux.

Nota: Quando você utilizar o comando #! em sistemas Linux ou UNIX, o sistema não altera o diretório padrão (o caminho construído a partir de uma combinação dos campos caminho do servidor, projeto, nome e caminho da etapa), porque não pode prever a sintaxe necessária; é necessário incluir seu próprio comando de alteração do diretório. Utilize variáveis de ambiente especiais criadas pelo sistema, como BF_SERVER_ROOT e BF_PROJECTNAME_PHYS, para fazer isso.

Como o Sistema Divide uma Etapa em Partes

O Rational® Build Forge® divide uma etapa em partes, com cada parte formada por um conjunto de comandos do sistema operacional e um único comando com ponto. Por exemplo, a seguinte etapa tem seis partes.

cmd1        # Part 1
cmd2
.dot_cmd1   # Part 2
cmd3        # Part 3
cmd4
.dot_cmd2   # Part 4
.sleep 30   # Part 5
.dot_cmd3   # Part 6

As partes da etapa são executadas em sequência. O ambiente de cada parte é passado para a próxima parte. Quando ocorre um erro em alguma parte, o processamento para imediatamente.

Liberações anteriores exigiam que cada parte da etapa anterior fosse uma única etapa.

Nota: Não crie referências entre as partes. Não crie saltos entre as partes, como usar GOTO em uma parte e seu rótulo de destino em outra parte.

Feedback