Este tutorial mostra como usar o TeamCity para executar os scripts de linha de comando que são a base essencial dos seus pipelines de build.
Criamos um repositório do GitHub para fins de demonstração:
github.com/marcobehlerjetbrains/buildpipelines. Sinta-se à vontade para fazer um fork dele e seguir as instruções.
O repositório tem 2 microsserviços: Authorization-Service e Calculator-Service. Você pode copiar a URL, acessar seus serviços do TeamCity e criar um novo projeto a partir da URL do repositório. Como este é um repositório público, você não precisa inserir uma senha ou um token de acesso.
Na próxima etapa, o TeamCity se conectará ao repositório e criará um projeto a partir dele. Ele também mostrará o branch padrão, que é o branch principal que será extraído a cada 60 segundos para quaisquer alterações e acionar builds.
Você também pode especificar quais outros branches monitorar usando curingas.
Uma configuração de build no TeamCity é uma tarefa. Quando você configura um projeto, o TeamCity verifica os arquivos no seu repositório e detecta automaticamente as etapas de build para você.
Neste tutorial, não continuaremos com as etapas de build autodetectadas, porque temos nosso próprio script de linha de comando para executar. No entanto, vale a pena observar que o TeamCity pode verificar o repositório VCS de origem de um projeto e detectar automaticamente etapas de build adequadas em Node.js, Kotlin, Python, Ant, NAnt, Gradle, Maven, MSBuild, arquivos de solução do Visual Studio, PowerShell, arquivos de projeto Xcode, Rake e projetos do IntelliJ IDEA.
Para continuar com a configuração manual de etapas de build, clique neste link:
Como queremos executar um script de linha de comando, vamos escolher Command Line no menu suspenso.
Na próxima etapa, vamos escolher a opção Run Custom Script no menu suspenso e colar nosso script de build no campo apropriado. Vamos executar o comando mvn clean package
. Assim como muitas outras ferramentas, todos os nossos agentes de build têm esse pacote instalado por padrão.
mvn clean package
compilará as fontes Java, executará alguns testes e criará um arquivo .jar
.
Na etapa de implantação, estamos executando a ferramenta de linha de comando da AWS e copiando esse arquivo .jar
para um bucket privado do S3. Depois, só precisamos clicar em Save.
Antes de clicar no botão Run, precisamos especificar as credenciais do nosso bucket AWS S3: um ID de chave de acesso e o segredo da chave de acesso. Uma das maneiras de fazer isso é usando Parameters no TeamCity.
Para fazer isso, clique em Parameters | Add New Parameter. Por enquanto, vamos usar uma variável de ambiente. Insira o nome, que é AWS_ACCESS_KEY_ID
. Você também precisará selecionar o tipo do novo parâmetro – Environment variable (env.) no nosso caso – e inserir o valor, que é o ID da chave de acesso verdadeira.
Observação: a chave de acesso que estamos usando é apenas para fins de demonstração. Portanto, você não poderá reutilizar essa chave exata.
Também queremos editar o parâmetro e definir o tipo como Password. Isso significa que o TeamCity ocultará o valor do parâmetro não só na UI, como também nas mensagens de log e em qualquer outro lugar.
Você verá que o ID da chave de acesso já está mascarado.
Da mesma forma, podemos adicionar outra variável de ambiente: a chave de acesso secreta. Depois disso, seremos capazes de executar o build.
Para fazer isso, clique no botão Run, que redirecionará para a página de visão geral. Enquanto o TeamCity está executando o build, ele exibirá os logs de build, explicando o que está acontecendo com todos os detalhes.
Assim que a execução do build terminar, o TeamCity exibirá o status e os dados do build, como quando o build foi acionado e por quem, quanto tempo levou para ser executado e qual agente de build foi usado.
Como estamos usando scripts de linha de comando, a única saída efetiva que temos é o log de build. Se decidirmos usar um executor do TeamCity específico (por exemplo, o executor Maven), também obteremos um relatório de teste, um relatório de cobertura e muitos outros recursos, como testes paralelos – tudo pronto para uso.
Para acessar o log de builds, clique na guia Build Log na página de resultados de build. O TeamCity facilita a leitura dos logs! Em vez de forçar você a baixar o log de builds completo na sua máquina (o que você ainda pode fazer) e abri-lo com o Notepad++, o TeamCity recolherá o log de builds e o tornará facilmente pesquisável com Ctrl+F.
Isso é tudo por enquanto! Assista a outros tutoriais para saber como usar os recursos específicos do TeamCity, como relatórios de teste ou de cobertura de código.
Bons builds!
Para obter mais informações, consulte a documentação da linha de comando do TeamCity.
Aprenda a tornar uma etapa de build SSH Exec parte das suas configurações de build e a carregar uma chave SSH no TeamCity para transmiti-la a agentes de build.
O TeamCity reúne vários recursos que vão turbinar seus builds. Neste tutorial, exploraremos como usar executores específicos e por que é interessante usá-los.
No TeamCity, você pode facilmente obter dados de seus builds com a ajuda de artefatos. Neste tutorial, veremos mais de perto como trabalhar com artefatos no TeamCity.