Um recurso muito importante de integrated installation packages (IIP) é a capacidade de utilizar macros para ajudar a automatizar a instalação de pacotes de instalação incluídos.
Este tópico fornece as seguintes informações sobre macros do IIP:
Você pode utilizar macros predefinidas para tornar o IIP mais flexível e automatizar como algumas contribuições são instaladas sem precisar especificar tudo no assistente de definição de compilação durante a criação do IIP. Por exemplo, você pode instalar dois pacotes de instalação diferentes no mesmo local (ou relativos ao mesmo local) sem precisar especificar manualmente esse local duas vezes no assistente de definição de compilação do IIP. O local da instalação do primeiro pacote pode ser automaticamente designado à opção -installLocation do segundo pacote, fazendo sua padronização para esse local. Observe que o usuário pode alterar este valor durante a instalação, caso você tenha permitido esta ação durante a criação do IIP. Como as macros não são resolvidas até a instalação do IIP, elas poderão ser utilizadas não apenas pelo usuário que cria o IIP, mas também pelo usuário que o chama. O assistente de definição de compilação e o assistente de instalação do IIP fornecerão maneiras convenientes para os usuários alavancarem macros sem precisar editar manualmente as cadeias da opção para criar ou modificar macros diretamente
É possível utilizar as seguintes macros em seu IIP:
Isto utiliza o valor de resultado da chamada especificada e substitui a macro por esse valor, em que <Invocation_ID> especifica qual chamada de contribuição no IIP fornece o valor de resultado denominado. O ID de chamada é necessário para resolver qualquer ambigüidade que possa ocorrer se diferentes contribuições utilizarem os mesmos nomes do valor de resultado ou se houver várias chamadas da contribuição especificada. Por exemplo, se um IIP contiver o pacote de instalação do servidor de processo (Invocation_ID = 6.2.0-WS-WBI_1-1) e o pacote de instalação do Feature Pack para Web Services, provavelmente você desejará que o pacote de recursos seja instalado automaticamente no mesmo local que o servidor de processo. Isto pode ser obtido transmitindo a seguinte opção para o programa de instalação do pacote de recursos na linha de comandos de instalação do IIP:
-OPT installLocation=$RESV{6.2.0-WS-WBI_1-1:installLocation}
Isto utilizará o valor da opção com o nome especificado e substituirá a macro por esse valor, em que <Invocation_ID> especifica qual chamada de contribuição no IIP suporta a opção denominada. Isto é necessário para resolver qualquer ambigüidade que possa ocorrer se diferentes contribuições utilizarem os mesmos nomes do valor de resultado ou se houver várias chamadas da contribuição especificada. Ocorrerá um erro se, durante a instalação do IIP, a opção referida não puder ser resolvida porque não foi realmente especificada na chamada referida. O usuário do IIP deve alterar a chamada referida para incluir a opção ou alterar/remover a macro com a referência. É um erro durante a criação do IIP utilizar esta macro para fazer referência a uma opção que não utiliza um valor, por exemplo, –silent. Neste caso, o assistente de definição de compilação emite um erro e o IIP não pode ser compilado.
Este exemplo é muito semelhante ao exemplo $RESV com uma exceção importante:
-OPT installLocation=$OPTV{6.2.0-WS-WBI_1-1:installLocation}
Isto utilizará qualquer local da instalação transmitido para o servidor de processo na opção -installLocation e o transmitirá para o pacote de recursos para seu local da instalação. Isto funcionará bem se o servidor de processo foi instalado silenciosamente mas, se ele foi instalado em modo da GUI, o usuário poderá ter modificado o local no assistente de instalação para algum outro. Esta macro ainda seria resolvida para o valor original configurado durante a criação do IIP. Neste caso, é melhor utilizar a macro Valor de Resultado ($RESV) e não a macro Valor da Opção ($OPTV).
Isto utiliza a especificação da opção com o nome especificado e substitui a macro por essa especificação ou por string, se tiver sido especificado. O <Invocation_ID> especifica qual chamada de contribuição no IIP suporta a opção denominada. A especificação da opção é uma cadeia que representa exatamente como a opção é especificada na linha de comandos, menos qualquer valor, por exemplo, -OPT installLocation=. Esta macro é utilizada principalmente para opções que não utilizam nenhum valor, como –silent. A parte string da macro permite utilizar um valor de cadeia como a substituição desta macro em vez de utilizar a especificação da opção referida diretamente. Isto suporta casos em que duas contribuições diferentes podem ter diferentes opções para a mesma função, neste caso, a instalação silenciosa. Uma das contribuições pode utilizar a macro para verificar se outra contribuição foi chamada silenciosamente e, neste caso, pode então especificar sua própria opção para chamada silenciosa utilizando string.
Observe que, diferentemente da macro $OPTV, $OPTS se expandirá para a cadeia vazia se a opção referida não tiver sido especificada na chamada referida – esta não é uma situação de erro. Isto é importante para suportar itens como o modo de instalação, no qual a ausência de uma opção como -silent significa que o instalador utilizará o modo da GUI. Utilizar esta macro para fazer a macro a uma opção que não tem uma especificação resultará em um erro.
Opções que não utilizam valores, como –silent, também podem ser resolvidas utilizando macros, por exemplo:
$OPTS{6.2.0-WS-WBI_1-1:silent}
Neste caso, se a opção referida, –silent, tiver sido especificada na chamada da contribuição do servidor de processo 6.2.0-WS-WBI, a macro será substituída pela especificação da opção -silent. Se esta opção não foi especificada, a macro será resolvida para a cadeia vazia. Isto permite instalar um conjunto de contribuições consistentemente em modo silencioso ou em modo da GUI com base no que foi especificado para uma destas contribuições. Será emitido um aviso se a opção não foi especificada na contribuição referida, caso esta referência seja um erro do usuário.
Esta macro será resolvida para o local da chamada do pacote especificada no IIP e o resultado será um caminho absoluto. Quando Contribution_ID e Sub_ID forem especificados, isto será resolvido para o local raiz da contribuição especificada no IIP. Por exemplo, se você tiver uma contribuição para a edição base do produto do servidor de processo para windows, o diretório raiz dessa contribuição será IIP_home/contrib/6.2.0-WS-WBI/1/WinX32. O seguinte exemplo de macro é resolvido para este diretório:
$LOC{6.2.0-WS-WBI_1}
Se apenas IIP estiver especificado, este valor será resolvido para o diretório raiz, ou IIP_home, do IIP:
$LOC{IIP}
Esta macro será substituída pelo valor atual da propriedade Java™ denominada. Esta pode ser qualquer propriedade conhecida no tempo de execução Java. Por exemplo, durante o assistente de definição de compilação do IIP, é solicitado que você especifique o diretório de instalação de destino de suas chamadas de contribuição. Por padrão, o diretório de instalação de destino para um usuário não-root é o seguinte:
$JP{user.home}/IBM/WebSphere/ProcServer
Isto anexa /IBM/WebSphere/ProcServer ao diretório inicial do usuário atual para concluir o caminho do diretório.