Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Como obter a lista de arquivos alterados em um Pipeline de CI/CD no Windows

No mundo do desenvolvimento de software, a integração contínua (CI) e a entrega contínua (CD) são práticas essenciais para garantir que o código seja testado e implantado de maneira eficiente. Uma parte crucial desse processo é identificar quais arquivos foram alterados entre diferentes commits ou builds. No ambiente Windows, podemos utilizar scripts em PowerShell e ferramentas de controle de versão como o Git para obter essa lista de arquivos alterados. Este artigo irá guiá-lo através do processo de configuração e execução de um pipeline de CI/CD no Windows para obter essa lista.

Exemplos:

  1. Configurando o Ambiente:

    • Certifique-se de ter o Git instalado no seu sistema Windows. Você pode baixar e instalar o Git a partir do site oficial: https://git-scm.com/download/win
    • Verifique a instalação do Git abrindo o CMD ou PowerShell e digitando:
      git --version
  2. Criando um Script PowerShell para Obter Arquivos Alterados:

    • Crie um arquivo chamado Get-ChangedFiles.ps1 com o seguinte conteúdo:

      param (
       [string]$OldCommit,
       [string]$NewCommit
      )
      
      # Verifica se os parâmetros foram fornecidos
      if (-not $OldCommit -or -not $NewCommit) {
       Write-Host "Uso: .\Get-ChangedFiles.ps1 <OldCommit> <NewCommit>"
       exit 1
      }
      
      # Obtém a lista de arquivos alterados entre os commits
      $changedFiles = git diff --name-only $OldCommit $NewCommit
      
      # Exibe a lista de arquivos alterados
      Write-Host "Arquivos alterados entre $OldCommit e $NewCommit:"
      $changedFiles
  3. Executando o Script:

    • Navegue até o diretório do seu repositório Git no CMD ou PowerShell.
    • Execute o script fornecendo os hashes dos commits antigos e novos:
      .\Get-ChangedFiles.ps1 <OldCommitHash> <NewCommitHash>
  4. Integrando ao Pipeline de CI/CD:

    • Se você estiver usando uma ferramenta de CI/CD como o Azure DevOps, Jenkins ou GitHub Actions, pode integrar o script PowerShell no pipeline.
    • Exemplo de configuração no Azure DevOps:

      trigger:
      - main
      
      pool:
      vmImage: 'windows-latest'
      
      steps:
      - task: UseGitVersion@5
       inputs:
         versionSpec: '>=2.0.0'
         addToPath: true
      
      - script: |
         git fetch --all
         .\Get-ChangedFiles.ps1 $(Build.SourceVersion) $(Build.SourceVersion)
       displayName: 'Obter arquivos alterados'

To share Download PDF

Gostou do artigo? Deixe sua avaliação!
Sua opinião é muito importante para nós. Clique em um dos botões abaixo para nos dizer o que achou deste conteúdo.