Partilhar via


Criando Scripts de implantação para fluxos de trabalho de teste implantar compilação

Para implantar seu aplicativo com um fluxo de trabalho de construção-implantar- teste, você deve criar scripts de implantação e adicioná-los à sua compilação.Scripts de implantação são arquivos de BASTÃO ou de CMD que copia a sua compilação para computadores em seu ambiente de laboratório.Se sua compilação inclui um pacote de instalação, você também pode usar seus scripts de implantação para executar o pacote de instalação.Quando você cria seu fluxo de trabalho de construção-implantar- teste, você adiciona os comandos para o fluxo de trabalho que executam seus scripts de implantação.Quando você executa o fluxo de trabalho, o controlador de compilação executa os comandos no diretório de trabalho especificados nos computadores em seu ambiente de laboratório.

Consulte Como: criar um fluxo de trabalho de teste implantar compilação para um ambiente do SCVMM ou Como: criar um fluxo de trabalho de teste implantar compilação para um ambiente padrão.Essas seções a seguir abordam como criar e usar scripts de implantação com seu fluxo de trabalho de construção-implantar- teste:

  • Preparando arquivos de compilação para implantação

  • Escrevendo seus scripts de implantação

  • Criando seus scripts de implantação

  • Pastas de trabalho team foundation

  • Adicionando scripts de implantação para o fluxo de trabalho

    1. Variáveis internas

Requisitos

  • Visual Studio Ultimate, Visual Studio Premium, Visual Studio Test Professional

Preparando arquivos de compilação para implantação

A maneira que você escolher para instalar seu aplicativo determinará as tarefas principais que seus scripts de implantação precisam fazer.Instale o aplicativo pode envolver copiar somente EXE em uma máquina cliente, ou pode envolver realizar um pacote de implantação que instalasse arquivos em vários computadores.A tabela a seguir descreve as tarefas para cada tipo de implantação.

Observação importanteImportante

Se seu aplicativo depende de software que não está instalado e não estiver configurado por seus scripts de implantação antes que o aplicativo foi implantado, você deve manualmente instalá-lo quando você prepara os computadores em seu ambiente de laboratório.Se você estiver usando um ambiente de SCVMM que implantar instantâneos de ambiente, você deve garantir que os instantâneos tenham o software de pré-requisito instalado.

Tipo de instalação

Descrição

Pacote de implantação de serviço Web

Observação de cuidadoCuidado
Se você estiver implantando um aplicativo que usa o IIS, o servidor IIS no seu ambiente de laboratório deve ter o serviço do agente de implantação da Web configurado antes de implantar seu aplicativo

Os seus scripts de implantação devem copiar os arquivos de compilação e o pacote de implantação para computadores de destino em seu ambiente de laboratório, e então executar o pacote de implantação.Para fazer isso, você pode precisar passar um nome de domínio, um nome da conta de serviço, e um nome de servidor de TFS ao script de implantação como parâmetros.Esse tipo de instalação geralmente requer que você manualmente instala e configura o software de pré-requisito como um servidor web ou um servidor de banco de dados antes de implantar seu aplicativo.A configuração de software de pré-requisito pode requerer tarefas específicas que permitem implantação de aplicativos no computador de destino.Por exemplo, se seu aplicativo usa o IIS, o servidor IIS no seu ambiente de laboratório deve ter o serviço do agente de implantação da Web configurado antes de implantar seu aplicativo.

Arquivos de compilação sem o pacote de instalação

Os seus scripts de implantação devem copiar seu aplicativo e compilar arquivos para computadores de destino em seu ambiente de laboratório.

Pacote de instalação

Observação de cuidadoCuidado
Se você estiver implantando um pacote de instalação com seu fluxo de trabalho de construção-implantar- teste, seus scripts de implantação devem lidar com qualquer entrada do usuário que é gerada quando executa o pacote de instalação ou a implantação do aplicativo falhará.

Os seus scripts de implantação devem copiar o pacote de instalação para computadores de destino em seu ambiente de laboratório e em seguida, executar o pacote de instalação.Quando seus scripts de implantação executa o pacote de instalação, devem garantir que é uma instalação silenciosa.A entrada do usuário solicitada pela instalação devem ser manipulado por seus scripts de implantação.Isso inclui credenciais.Se seus scripts de implantação não trata qualquer entrada do usuário gerada quando executa o pacote de instalação, a implantação do aplicativo falhará.Se você não estiver implantando um aplicativo web, e você requer um pacote de instalação para sua implantação, é recomendável que você use um pacote de instalação de InstallShield.Para obter informações sobre InstallShield, consulte Windows Installer Deployment.

Escrevendo seus scripts de implantação

Essas são as tarefas mais comuns executadas por scripts de implantação:

  • Obter o caminho de compilação no seu controlador de compilação.Você pode enviar este ao script de implantação como um argumento de linha de comando.

  • Especifique o caminho de implantação.

  • Crie seu diretório de implantação.Você também pode fazer isso manualmente, em vez de no script de implantação.Se você estiver usando um instantâneo do ambiente de pré-compilação implantação com o fluxo de trabalho, você precisa criar o diretório em máquinas virtuais no usuário.

  • Copiar o pacote de implantação do caminho de compilação para o caminho de implantação.

  • Execute o pacote de implantação no diretório de implantação.

Os seguintes comandos demonstram algumas tarefas comuns executadas por scripts de implantação.

REM set build path
set buildlocation=%1

REM set deployment path
set targetdir="C:\deploy"

REM create deployment directory
if not exist %targetdir% (cmd /c mkdir %targetdir%)

REM copy build to the deployment directory
xcopy /c /y /e %buildlocation%\*.* %targetdir%

REM if you are using a deployment package you can run it here, after you copy it to your deployment directory

Criando seus scripts de implantação

Depois de criar seus scripts de implantação, você deve verifica em controle de versão, e então configurá-los de modo que sejam copiados para sua saída de compilação.Para compilar seus scripts de implantação, primeiro você deve certificar-se que são armazenados em seu projeto Visual Studio, e não apenas em sua solução.Você pode fazer isso no Visual Studio selecionando o script de implantação em Gerenciador de Soluçõese em seguida, em Propriedades, modificando Diretório de saída de impressão a Copiar sempre.

Pastas de trabalho team foundation

Você pode especificar uma pasta de trabalho para cada conjunto de comandos que você adiciona ao fluxo de trabalho de construção-implantar- teste.Quando você especifica uma pasta de trabalho, seu controlador de compilação executar comandos especificados no diretório de trabalho de cada computador que é atribui à função.Se você não especificar um diretório de trabalho quando você adiciona comandos ao fluxo de trabalho de construção-implantar- teste, seu controlador de compilação executar comandos em directory− trabalhandoC:\Windows\System32padrão.

Observação importanteImportante

Não crie pastas de trabalho usando os comandos que você adiciona ao fluxo de trabalho de construção-implantar- teste; se você fizer os diretórios não será criado antes que seus scripts de implantação tente copiar arquivos 2 esses diretórios.

Se você especificar uma pasta de trabalho, você deve garantir que o diretório foi criado antes sua cópia de scripts de implantação todos os arquivos no diretório.Não crie pastas de trabalho com os comandos que você usa para adicionar seus scripts de implantação para o fluxo de trabalho de construção-implantar- teste.Se você fizer isso, os diretórios não será criado antes que seus scripts de implantação tente copiar arquivos para diretórios.Para garantir que um diretório de trabalho foi criado antes dos arquivos de impressão de scripts de implantação para ele, você deve criar manualmente o diretório nos computadores de destino em seu ambiente de laboratório, ou o diretório deve ser criado por seus scripts de implantação antes que qualquer comando para copiar arquivos.

Adicionando scripts de implantação para o fluxo de trabalho

Adicionar comandos do shell do windows ao fluxo de trabalho de construção-implantar- teste implantar seu aplicativo para seu ambiente de laboratório.Se você estiver usando scripts de implantação, os comandos deve copiar seus scripts de implantação de seu controlador de compilação para o diretório de trabalho dos computadores de destino, e então executar scripts de implantação.Em o entanto, para instalações simples de aplicativo que envolvem apenas alguns copiar arquivos para o diretório de trabalho, você pode usar comandos do shell no fluxo de trabalho sem especificar scripts externos de implantação.

Se você deseja adicionar um comando de ser executado do windows solicita que você, como mkdir, ou execute um arquivo em lotes, deve iniciar o comando usando cmd /c.Por exemplo, o comando cmd /c $(BuildLocation)\copyexe $(BuildLocation) onde copyexe é o arquivo em lotes copyexe.bat, copiar um arquivo para um diretório virtual em um computador local.

Variáveis internas: quando você adiciona esses comandos ao fluxo de trabalho de construção-implantar- teste, você pode usar variáveis internas para identificar determinados caminhos e computadores.Você também pode passar essas variáveis para seus scripts de implantação.

  • $ (BuildLocation)
    O caminho completo de compilação onde os arquivos estão localizados, ou o posicionamento de compilação localmente se está configurado em seu fluxo de trabalho de construção-implantar- teste.Use esta variável para acessar os arquivos de compilação.

  • $ (InternalComputerName_<VM Name>)
    O nome do computador de um computador virtual em um ambiente de SCVMM.Use esta variável para acessar um host do virtual quando você não souber o nome do computador host.Se você tiver um script de implantação para configurar um servidor Web que requer o nome do computador, você pode passar este como um argumento para o script.Por exemplo, se o nome da máquina virtual para o servidor Web foi VM1 e o nome do computador foi MyWebServer, você digitaria $(InternalComputerName_VM1) como o argumento para o script e este deve o valor MyWebServer ao script.

  • $ (ComputerName_<VM Name>)

    ObservaçãoObservação

    Isolamento de rede em ambientes de SCVMM: se você estiver usando o isolamento de rede para seu ambiente de SCVMM, o valor de $(InternalComputerName_<VM Name>) é o mesmo para uma instância de uma máquina virtual em cada cópia do seu ambiente, mas o valor de $(ComputerName_<VM Name>) é diferente.

    O Fully Qualified domínio totalmente virtual do computador.Use esse acesso um computador variável fora de um ambiente de SCVMM.Você pode desejar passar essa variável como um argumento para configurar um servidor Web.Por exemplo, se o nome da máquina virtual para o servidor Web é VM1, você pode acessar o Fully Qualified domínio totalmente virtual do passar o argumento de $(ComputerName_VM1) ao script de implantação.

Consulte também

Conceitos

Configuração de fluxos de trabalho de compilação-implantar-teste automatizado