Configurando Projetos Freestyle Básicos

JenkinsBeginner
Pratique Agora

Introdução

Bem-vindo a este laboratório sobre a configuração de projetos Freestyle básicos no Jenkins. O projeto Freestyle é uma opção altamente flexível e fácil de usar no Jenkins, adequada para qualquer tipo de projeto. Ele permite configurar triggers de build, etapas de build e ações pós-build através de uma interface gráfica baseada na web.

Neste laboratório, você aprenderá a:

  • Adicionar etapas de build com comandos shell a um projeto.
  • Agendar builds para serem executados automaticamente usando triggers.
  • Arquivar artefatos de build para uso posterior.
  • Configurar ações pós-build, como a limpeza do workspace.

Uma instância do Jenkins já está em execução, e um projeto Freestyle básico chamado sample-project foi criado para você. Você pode acessar a interface web do Jenkins abrindo o navegador Firefox na área de trabalho. O navegador abrirá automaticamente em http://localhost:8080, então você não precisa inserir o URL manualmente. Nenhum login é necessário.

Adicionar uma Etapa de Build

Nesta etapa, você adicionará uma etapa de build ao seu projeto Freestyle. As etapas de build são o núcleo de um projeto, definindo as ações que o Jenkins executará, como compilar código, executar testes ou executar scripts shell.

Primeiro, vamos navegar até a página de configuração do projeto.

  1. Abra o navegador Firefox na interface de desktop. O navegador abrirá automaticamente em http://localhost:8080, então você não precisa inserir o URL manualmente. Nenhum login é necessário.
  2. No painel (dashboard) do Jenkins, você verá o sample-project. Clique no nome dele para ir para a página do projeto.
  3. No menu à esquerda, clique em Configure (Configurar).
Jenkins project page

Agora, você está na página de configuração do projeto. Vamos adicionar uma etapa de build.

  1. Role a página para baixo até a seção Build Steps (Etapas de Build).
  2. Clique no botão suspenso Add build step (Adicionar etapa de build) e selecione Execute shell (Executar shell).
Build Steps section
  1. Uma caixa de texto aparecerá. Insira os seguintes comandos na caixa Command (Comando):
echo "Building the project..."
date
echo "Build complete."
  1. Clique no botão Save (Salvar) na parte inferior da página.

Você configurou uma etapa de build. Vamos executar o build para vê-la em ação.

  1. Na página do projeto, clique em Build Now (Construir Agora) no menu à esquerda.
  2. Um novo build aparecerá na seção Build History (Histórico de Builds). Clique no número do build (por exemplo, #1).
  3. No menu à esquerda para aquele build, clique em Console Output (Saída do Console).

Você verá a saída dos comandos shell que adicionou, confirmando que sua etapa de build foi executada com sucesso.

Started by user admin
Running as SYSTEM
Building in workspace /var/jenkins_home/workspace/sample-project
[sample-project] $ /bin/sh -xe /tmp/jenkins12345.sh
+ echo 'Building the project...'
Building the project...
+ date
Tue Jan 1 12:00:00 UTC 2024
+ echo 'Build complete.'
Build complete.
Finished: SUCCESS

Agendar Builds com Gatilhos

Nesta etapa, você aprenderá como agendar builds automaticamente usando gatilhos de build (build triggers). Este é um recurso fundamental para integração contínua, permitindo que você execute builds periodicamente.

  1. Navegue de volta para a página de configuração do sample-project (Página do Projeto > Configure).
  2. Encontre a seção Build Triggers.
  3. Marque a caixa ao lado de Build periodically.
Seção Build Triggers
  1. Uma área de texto Schedule aparecerá. Este campo usa a sintaxe cron para definir o agendamento. A sintaxe consiste em 5 campos separados por espaços: MINUTO HORA DIADOMÊS MÊS DIASEMANA.
  2. Para executar o build aproximadamente a cada minuto, insira o seguinte no campo Schedule:
* * * * *

Esta expressão cron significa "executar a cada minuto". Embora o Jenkins suporte o símbolo H para distribuição de carga, H/1 * * * * na verdade executa uma vez por hora, não a cada minuto. Para executar realmente a cada minuto, use * * * * *.

  1. Clique em Save.

O Jenkins agora acionará automaticamente um novo build para sample-project aproximadamente uma vez por minuto. Você pode observar isso acompanhando o Build History na página do projeto.

Arquivar Artefatos de Build

Nesta etapa, você aprenderá como arquivar artefatos de build. Artefatos são os arquivos de saída produzidos por um build, como binários compilados ou relatórios. Arquivá-los os torna disponíveis para download após a conclusão do build.

Primeiro, precisamos modificar nossa etapa de build para criar um arquivo que possamos arquivar.

  1. Navegue até a página de configuração do sample-project.
  2. Role até a seção Build Steps e encontre sua caixa de comando Execute shell.
  3. Adicione uma nova linha ao script para criar um arquivo chamado build-info.txt. O $BUILD_NUMBER é uma variável de ambiente fornecida pelo Jenkins que contém o número do build atual.
echo "Building the project..."
date
echo "Build complete."
echo "This artifact is from build #$BUILD_NUMBER" > build-info.txt

Em seguida, vamos configurar uma ação pós-build (post-build action) para arquivar este arquivo.

  1. Role para baixo até a seção Post-build Actions.
  2. Clique no menu suspenso Add post-build action e selecione Archive the artifacts.
Menu suspenso Add post-build action
  1. No campo Files to archive, insira o nome do arquivo que você deseja arquivar: build-info.txt. Você também pode usar curingas como **/*.jar para arquivar vários arquivos.
  2. Clique em Save.

Agora, execute um novo build clicando em Build Now. Assim que o build for concluído:

  1. Clique no número do último build no Build History.
  2. Na página de status do build, você verá uma seção chamada Build Artifacts com um link para build-info.txt. Você pode clicar nele para visualizar ou baixar o arquivo.
Página de build concluído

Configurar Limpeza do Workspace

Nesta etapa final de configuração, você adicionará uma ação pós-build (post-build action) para limpar o workspace. Esta é uma boa prática para economizar espaço em disco e garantir que cada build comece em um ambiente limpo, evitando interferências de arquivos gerados em builds anteriores.

  1. Vá para a página de configuração do sample-project.
  2. Role para baixo até a seção Post-build Actions.
  3. Clique no menu suspenso Add post-build action e selecione Delete workspace when build is done.
Menu suspenso Add post-build action
  1. Clique em Save.

Agora, após a conclusão de cada build do sample-project, o Jenkins excluirá todos os arquivos no diretório do workspace. Observe que os artefatos arquivados são armazenados separadamente e não são afetados pela limpeza do workspace. Isso garante que seus artefatos de build permaneçam disponíveis, enquanto mantém o ambiente de build limpo para a próxima execução.

Resumo

Parabéns por completar este laboratório. Você aprendeu com sucesso os fundamentos da configuração de um projeto Jenkins Freestyle.

Neste laboratório, você praticou:

  • Adicionar um comando Execute shell como uma etapa de build.
  • Configurar um Build Trigger para agendar builds periodicamente usando sintaxe cron.
  • Criar e arquivar artefatos de build.
  • Configurar uma Post-build Action para excluir o workspace após um build.

Estas são habilidades essenciais para automatizar seus processos de build, teste e implantação com Jenkins. Agora você pode aplicar esses conceitos para criar e gerenciar seus próprios pipelines de CI/CD.