Compartilhar via


Usar o Azure DevOps para criar um pipeline de CI/CD para um trabalho do Stream Analytics

Neste artigo, você aprenderá a criar pipelines build e release do Azure DevOps usando as ferramentas de CI/CD do Azure Stream Analytics.

Confirmar seu projeto do Stream Analytics

Antes de começar, confirme seus projetos do Stream Analytics completos como arquivos de origem para um repositório do Azure DevOps. Você pode referenciar este repositório de amostra e o código-fonte do projeto do Stream Analytics no Azure Pipelines.

As etapas neste artigo usam um projeto do Visual Studio Code do Stream Analytics. Se você estiver usando um projeto do Visual Studio, siga as etapas em Automatizar compilações, testes e implantações de um trabalho do Azure Stream Analytics usando as ferramentas de CI/CD.

Criar um pipeline de build

Nesta seção, você aprenderá a criar uma pipeline de build.

  1. Abra um navegador da Web e navegue até o seu projeto no Azure DevOps.

  2. Em Pipelines no menu de navegação à esquerda, selecione Builds. Em seguida, selecione Novo pipeline.

    Criar novo Pipeline do Azure

  3. Selecione Usar o editor clássico para criar um pipeline sem YAML.

  4. Selecione o tipo de origem, o projeto de equipe e o repositório. Em seguida, selecione Continuar.

    Selecionar um projeto do Azure Stream Analytics

  5. Na página Escolher um modelo, selecione Trabalho vazio.

Instalar o pacote do npm

  1. Na página Tarefas, selecione o sinal de adição ao lado do Trabalho do agente 1. Insira npm na pesquisa de tarefa e selecione npn.

    Selecionar tarefa npm

  2. Dê um Nome de exibição à tarefa. Altere a opção de Comando para personalizado e insira o comando a seguir em Comando e argumentos. Mantenha as opções padrão restantes.

    install -g azure-streamanalytics-cicd
    

    Inserir configurações para a tarefa npm

Use as etapas a seguir se precisar usar o agente hospedado do Linux:

  1. Selecione a sua Especificação do agente

    Captura de tela da seleção da especificação do agente.

  2. Na página Tarefas, selecione o sinal de adição ao lado do Trabalho do agente 1. Insira a linha de comando na pesquisa de tarefas e selecione Linha de comando.

    Captura de tela da pesquisa da tarefa de linha de comando.

  3. Dê um Nome de exibição à tarefa. Digite o comando a seguir em Script. Mantenha as opções padrão restantes.

    sudo npm install -g azure-streamanalytics-cicd --unsafe-perm=true --allow-root
    

    Captura de tela da inserção de script para a tarefa cmd.

Adicionar uma tarefa de compilação

  1. Na página Variáveis, selecione + Adicionar em Variáveis de pipeline. Adicione as variáveis a seguir. Defina os valores a seguir de acordo com sua preferência:

    Nome da variável Valor
    projectRootPath [YourProjectName]
    outputPath Saída
    deployPath Implantar
  2. Na página Tarefas, selecione o sinal de adição ao lado do Trabalho do agente 1. Pesquise por Linha de comando.

  3. Dê à tarefa um Nome de exibição e insira o script a seguir. Modifique o script com o nome do seu repositório e o nome do projeto.

    Observação

    É altamente recomendável usar build --v2 para gerar o modelo do ARM para implantação. O novo modelo do ARM tem menos parâmetros, preservando a mesma funcionalidade que a versão anterior.

    Observe que o modelo mais antigo do ARM será preterido em breve, somente os modelos criados usando build --v2 receberão atualizações e correções de bugs.

    azure-streamanalytics-cicd build --v2 -project $(projectRootPath)/asaproj.json -outputpath $(projectRootPath)/$(outputPath)/$(deployPath)
    

    A imagem usa um projeto do Visual Studio Code do Stream Analytics como exemplo.

    Inserir configurações para a tarefa de linha de comando do Visual Studio Code

Adicionar uma tarefa de teste

  1. Na página Variáveis, selecione + Adicionar em Variáveis de pipeline. Adicione as variáveis a seguir. Modifique os valores com o seu caminho de saída e o nome do repositório.

    Nome da variável Valor
    testPath Teste

    Adicionar variáveis de pipeline

  2. Na página Tarefas, selecione o sinal de adição ao lado do Trabalho do agente 1. Pesquise por Linha de comando.

  3. Dê à tarefa um Nome de exibição e insira o script a seguir. Modifique o script com o nome do arquivo de projeto e o caminho para o arquivo de configuração de teste.

    Consulte instruções de teste automatizado para obter detalhes sobre como adicionar e configurar casos de teste.

    azure-streamanalytics-cicd test -project $(projectRootPath)/asaproj.json -outputpath $(projectRootPath)/$(outputPath)/$(testPath) -testConfigPath $(projectRootPath)/test/testConfig.json 
    

    Inserir configurações para tarefa de linha de comando

Adicionar uma tarefa de cópia de arquivos

Você precisa adicionar uma tarefa de cópia de arquivo para copiar o arquivo de resumo do teste e os arquivos de modelo do Azure Resource Manager para a pasta fictícia.

  1. Na página Tarefas, selecione o + ao lado do Trabalho do agente 1. Pesquise por Cópia de arquivos. Em seguida, verifique as configurações a seguir. Ao atribuir ** a Conteúdo, todos os arquivos de resultado do teste são copiados.

    Parâmetro Entrada
    Nome de exibição Copiar arquivos para: $ (build.artifactstagingdirectory)
    Pasta de Origem $(system.defaultworkingdirectory)/$(outputPath)/
    Sumário **
    Pasta de Destino $(build.artifactstagingdirectory)
  2. Expanda as Opções de Controle. Selecione Mesmo que uma tarefa anterior tenha falhado, a menos que o build tenha sido cancelado em Executar esta tarefa.

    Inserir configurações para tarefa de cópia

Adicionar uma tarefa de Publicar artefatos de compilação

  1. Na página Tarefas, selecione o sinal de adição ao lado do Trabalho do agente 1. Pesquise por Publicar artefatos de compilação e selecione a opção com o ícone de seta preta.

  2. Expanda as Opções de Controle. Selecione Mesmo que uma tarefa anterior tenha falhado, a menos que o build tenha sido cancelado em Executar esta tarefa.

    Inserir configurações para a tarefa de publicação

Salvar e Executar

Depois de terminar de adicionar as tarefas de pacote npm, linha de comando, copiar arquivos e publicar artefatos de compilação, selecione Salvar e fila. Quando solicitado, insira um comentário para salvar e selecione Salvar e executar. Você pode baixar os resultados do teste na página Resumo do pipeline.

Verificar os resultados da compilação e do teste

O arquivo de resumo do teste e os arquivos de modelo do Azure Resource Manager podem ser encontrados na pasta Publicado.

Verificar a compilação e o resultado do teste

Verificar os artefatos

Lançamento com Azure Pipelines

Nesta seção, você aprenderá a criar um pipeline de lançamento.

Abra um navegador da Web e navegue até o seu projeto do Visual Studio Code do Azure Stream Analytics.

  1. Em Pipelines no menu de navegação à esquerda, selecione Lançamentos. Em seguida, selecione Novo pipeline.

  2. Selecione começar com um trabalho Vazio.

  3. Na caixa Artefatos, selecione + Adicionar um artefato. Em Origem, selecione o pipeline de build que você criou e selecione Adicionar.

    Inserir artefato de pipeline de build

  4. Altere o nome do Estágio 1 para Implantar trabalho no ambiente de teste.

  5. Adicione um novo estágio e nomeie-o Implantar trabalho no ambiente de produção.

Adicionar tarefas de implantação

Observação

O Override template parameters não é aplicável a builds ARM v2, pois os parâmetros são passados como objetos. Para resolver isso, é recomendável incluir um script do PowerShell em seu pipeline para ler o arquivo de parâmetro como JSON e fazer as modificações de parâmetro necessárias.

Para obter mais diretrizes sobre como adicionar o script do PowerShell, consulte ConvertFrom-Json e Update Object no arquivo JSON.

  1. Na lista suspensa de tarefas, selecione Implantar trabalho no ambiente de teste.

  2. Selecione + ao lado de Trabalho do agente e procure por Implantação de modelo do ARM. Insira os parâmetros s seguir:

    Parâmetro Valor
    Nome de exibição Implantar myASAProject
    Assinatura do Azure Escolha sua assinatura.
    Ação Criar ou atualizar o grupo de recursos
    Resource group Escolha um nome para o grupo de recursos de teste que conterá seu trabalho do Stream Analytics.
    Local Escolha o local do seu grupo de recursos de teste.
    Local do modelo Artefato vinculado
    Modelo $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.json
    Parâmetros de modelo $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.parameters.json
    Substituir parâmetros de modelo -<arm_template_parameter> "your value". Você pode definir os parâmetros usando Variáveis.
    Modo de implantação Incremental
  3. Na lista suspensa de tarefas, selecione Implantar trabalho no ambiente de produção.

  4. Selecione + ao lado de Trabalho do agente e procure por implantação de modelo do ARM. Insira os parâmetros s seguir:

    Parâmetro Valor
    Nome de exibição Implantar myASAProject
    Assinatura do Azure Escolha sua assinatura.
    Ação Criar ou atualizar o grupo de recursos
    Resource group Escolha um nome para o grupo de recursos de produção que conterá seu trabalho do Stream Analytics.
    Local Escolha o local do seu grupo de recursos de produção.
    Local do modelo Artefato vinculado
    Modelo $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.json
    Parâmetros de modelo $(System.DefaultWorkingDirectory)/_azure-streamanalytics-cicd-demo-CI-Deploy/drop/myASAProject.JobTemplate.parameters.json
    Substituir parâmetros de modelo -<arm_template_parameter> "your value"
    Modo de implantação Incremental

Criar uma versão

Para criar um lançamento, selecione Criar lançamento no canto superior direito.

Criar um lançamento usando Azure Pipelines