A primeira
etapa ao usar as ferramentas de planejamento de implementação para automatizar tarefas
é criar assinaturas de automação reutilizáveis. Cada assinatura de automação
e sua definição de automação correspondente representam uma tarefa
a ser executada em um sistema de TI, como instalação, desinstalação ou
configuração de um componente de software.
Neste exemplo,
cada assinatura de automação corresponde a um ou mais comandos Ant.
Estes comandos podem ser comandos Ant principais ou comandos Ant de terceiro,
tais como os comandos Tomcat.
Procedimento
Neste exemplo, a primeira assinatura de automação instala
o Tomcat no sistema de destino. Esta tarefa pode parecer complicada mas,
neste contexto, instalar o Tomcat é tão simples quanto extrair um arquivo
compactado no sistema de destino. Para criar esta assinatura de instalação,
siga estas etapas:
- Crie uma topologia de assinatura de automação:
- Na perspectiva Implementação,
clique em .
- Na janela Nova Topologia, em Categorias,
clique em Implementação Básica e em Modelos,
clique em Topologia de Assinatura de Automação em Branco.
- Dê à nova topologia de assinatura de automação um nome, namespace
e pasta de origem. Por exemplo, chame esta topologia de AntInstallTomcatSignature.
Em geral, as topologias de assinatura de automação
vão para a pasta de origem operations
e o namespace padrão (vazio).
- Clique em Concluir.
- Na topologia de assinatura de automação, modele o sistema de TI
no qual a tarefa automatizada é executada. Neste exemplo, uma unidade de sistema operacional
representa o sistema de TI. A topologia ainda não inclui
qualquer outra unidade porque topologias de assinatura de automação contêm
apenas os detalhes que são necessários para descrever a tarefa.
- Configure o estado de instalação das unidades como Instalada. Como esta topologia representa o estado do sistema de TI
antes de a tarefa automatizada ser executada, a unidade do sistema operacional já está
instalada.
- Inclua unidades que representam as unidades que a tarefa instala,
desinstala ou modifica. Neste exemplo, inclua unidades que
representam o sistema Tomcat, incluindo uma unidade de instalação do Tomcat,
uma unidade do servidor Tomcat, uma unidade de registro do usuário Tomcat e uma unidade
do grupo de usuários Tomcat.
- Configure o estado da instalação destas novas unidades como A
ser instalada ou A ser desinstalada,
conforme apropriado. Em geral, use as regras a seguir para
configurar os estados da instalação das unidades:
- Configure unidades não afetadas pela tarefa ou que são consideradas
como instaladas antes do início da tarefa como Instaladas.
- Configure unidades que a tarefa instala ou modifica como A
serem instaladas.
- Configure unidades que a tarefa desinstala ou remove como A
serem desinstaladas.
Neste exemplo, todas as novas unidades do Tomcat possuem estados da instalação
iguais a A ser instalada. Estas unidades possuem erros
nelas porque a assinatura de automação ainda não especifica como a
tarefa afeta essas unidades. Estes erros se resolverão quando a assinatura de
automação for concluída.
- Inclua uma unidade de operação Ant na topologia. Esta
unidade está disponível na gaveta Ferramentas Comuns
da Paleta, no grupo Operação de modelos.
Esta unidade representa a definição de automação, a qual neste caso
é um ou mais comandos Ant.
- Clique em uma área em branco na topologia e, em seguida, abra a visualização Propriedades
na guia Assinatura.
- Na guia Assinatura, no campo Nome,
especifique um nome para a tarefa automatizada. Este nome não pode
conter espaços. Neste exemplo, é possível especificar um nome tal como AntInstallTomcat.
- No campo Comando, especifique o
código Ant para a tarefa, substituindo parâmetros por cifrões e
chaves, tal como ${parameterName}. Neste
exemplo, o código a seguir extrai o archive Tomcat e chama
o comando para iniciar o servidor. Ele inclui parâmetros para o local
do archive e o local da instalação do Tomcat.
<unzip src="${tomcatInstallFile}"
dest="${tomcatInstallLocation}">
<cutdirsmapper dirs="1"/>
</unzip>
<java jar="${installationLocation}\bin\bootstrap.jar"
fork="true" spawn="true">
<jvmarg value="-Dcatalina.home=${tomcatInstallLocation}"/>
<arg line="start"/>
</java>
Se este comando usar somente comandos Ant padrão,
como neste exemplo, não será necessário especificar informações sobre onde
localizar os comandos Ant. Se estiver usando comandos em uma biblioteca
Ant de terceiro, você deverá especificar onde localizar o comando Ant especificando
os parâmetros classname, classpathHome
e javaArchive na guia Assinatura.
- Na guia Assinatura, na seção Parâmetros,
inclua parâmetros para corresponder aos parâmetros no código Ant:
- Clique em Incluir Parâmetro.
- Na janela Parâmetro de Assinatura de Automação,
especifique o nome do parâmetro.
- Em Valor de Parâmetro, especifique
um valor para o parâmetro ligando o parâmetro a um atributo
na topologia ou especificando um valor literal. Também é possível
deixar o parâmetro em branco para que possa preenchê-lo quando incluir
esta assinatura de automação em um fluxo de trabalho.
Neste exemplo, ligue
o parâmetro installationLocation ao atributo installedLocation
no recurso de instalação do Tomcat. Não especifique um valor para
este atributo na topologia da assinatura de automação. Ao criar
um fluxo de trabalho, o fluxo de trabalho usa valores de uma topologia que representa
uma instância de implementação específica.
- De modo semelhante, crie um parâmetro denominado tomcatInstallFile para
corresponder ao parâmetro no código Ant. Deixe o valor para
este parâmetro em branco, porque o arquivo de instalação Tomcat não é
modelado nesta topologia.
- Na parte inferior da guia Assinatura,
inclua todas as unidades com estados da instalação iguais a A ser instalada ou A
ser desinstalada na lista Para publicar. Agora a assinatura de automação especifica as unidades que são afetadas
pela tarefa e os erros nas unidades desaparecem. As unidades na lista Para
publicar também são incluídas como membros da unidade de Operação
de Ant. A topologia da assinatura de automação é semelhante à topologia a seguir:
- Salve a topologia da assinatura de automação.
Resultados
Agora é possível usar esta assinatura de automação em fluxos de trabalho. Para
este exemplo, são necessárias duas outras assinaturas de automação:
- Uma assinatura de automação que inclui um usuário no grupo de usuários e no
registro do usuário Tomcat. A topologia de assinatura de automação relacionada inclui
unidades do servidor Tomcat com estados da instalação iguais a Instalada e
uma unidade de usuário com um estado da instalação igual a A ser instalada.
A topologia de assinatura de automação é semelhante à topologia a seguir:O código Ant para esta assinatura de automação para o servidor, atualiza o registro do usuário do Tomcat e reinicia o servidor:
<java jar="${tomcatInstallLocation}\bin\bootstrap.jar"
fork="true" spawn="true">
<jvmarg value="-Dcatalina.home=${tomcatInstallLocation}"/>
<arg line="stop"/>
</java>
<replace file="${userRegistryLocation}"
token="</tomcat-users>"
value="<user name="${username}"
password="${password}"
roles="${roles}"/></tomcat-users>" />
<java jar="${tomcatInstallLocation}\bin\bootstrap.jar"
fork="true" spawn="true">
<jvmarg value="-Dcatalina.home=${tomcatInstallLocation}"/>
<arg line="start"/>
</java>
Os parâmetros neste código são limitados a valores
da topologia, incluindo o nome de usuário e a senha do usuário
e o local da instalação do Tomcat.
- Uma assinatura de automação que implementa um aplicativo da web no
servidor Tomcat. A topologia de assinatura de automação relacionada inclui
o aplicativo da web e a instalação do Tomcat existente:O código Ant para esta assinatura de automação usa um comando Ant na biblioteca Tomcat Ant denominada deploy:
<deploy path="${path}"
url="http://${hostname}:${port}/manager"
war="${war}" username="${username}"
password="${password}" />
Neste caso, a assinatura de
automação deve especificar o classname, classpathHome
e javaArchive com as informações para a
biblioteca Ant de terceiro.