A integração do código e sua disponibilização no ambiente de execução são bastante agilizadas com o uso de ferramentas como o Jenkins.
O sistema de versionamento mais utilizado atualmente é o Git e, neste exemplo, estamos utilizando o GitHub, uma plataforma da Microsoft.
1. Configuração do Jenkins
Antes de prosseguirmos, é necessário realizar algumas configurações no Jenkins.
Essas configurações envolvem a adição de credenciais para obter o código-fonte e realizar a publicação no ambiente de destino.
Para isso, no menu lateral esquerdo, selecione Manage Jenkins e, em seguida, clique na opção Credentials.
Em Credentials, clique em (global).
Em Global credentials (unrestricted), clique no botão + Add Credentials.
Para usar o GitHub, é necessário gerar um Token de Acesso. Com ele, você poderá clonar e enviar código para o repositório.
Acesse: https://github.com/settings/tokens
Ao utilizar o token, informe seu nome de usuário e o token gerado no lugar da senha de acesso ao GitHub.
Na nova tela New credentials é necessário escolher o tipo (Kind) dessa credencial. São eles:
Nome | Nome (Português) | Descrição |
---|---|---|
Username with password | Nome de usuário com senha | Autenticação básica usando nome de usuário e senha. |
GitHub App | Aplicativo GitHub | Integração com GitHub usando um aplicativo registrado. |
SSH Username with private key | Nome de usuário SSH com chave privada | Autenticação SSH usando chave privada. |
Secret file | Arquivo secreto | Arquivo confidencial carregado para uso em jobs. |
Secret text | Texto secreto | Texto sensível, como tokens ou senhas. |
X.509 Client Certificate | Certificado de cliente X.509 | Certificado usado para autenticação mútua. |
Certificate | Certificado | Certificado digital padrão utilizado em diversas autenticações. |
As opções Username with password e SSH Username with private key serão as utilizadas.
Preencha todas as informações necessárias e reserve o que for informado no campo ID, pois será utilizado na execução do Jenkins.
2. Projeto de demonstração
É um projeto simples, feito apenas para este guia e pode ser obtido deste repositório.
Sua estrutura principal é:
jenkins-demo/
├── main.py
├── requirements.txt
├── test_main.py
├── Dockerfile
└── Jenkinsfile
3. Configuração do Projeto no Jenkins
No menu lateral esquerdo escolha o item + New Item.
Forneça o nome do item e selecione o tipo Pipeline.
Clique no botão OK.
Na tela General que nos é apresentada, forneça as seguintes informações:
-
Description:
(Opcional) Insira uma descrição do propósito do job, ex:Build e deploy automatizado do projeto Jenkins-Demo
. -
Do not allow concurrent builds:
✅ Habilitado. Evita que builds concorrentes rodem ao mesmo tempo. -
GitHub project:
✅ Habilitado.- Project URL:
https://github.com/franciscoernestoteixeira/jenkins-demo
- Project URL:
-
This project is parameterized:
✅ Habilitado. Parâmetros definidos:- Git Parameter
- Name:
BRANCH
- Parameter Type:
Branch or Tag
- Default Value:
main
- Advanced:
- Branch Filter:
.*
- Tag Filter:
*
- Sort Mode:
DESCENDING_SMART
- Selected Value:
TOP
- Branch Filter:
- Name:
- Choice Parameter
- Name:
ENVIRONMENT
- Choices:
staging production
- Description:
Environment to run
- Name:
- Git Parameter
Seção: Pipeline
-
Definition:
Pipeline script from SCM
-
SCM:
Git
- Repository URL:
https://github.com/franciscoernestoteixeira/jenkins-demo
- Credentials:
Selecione as credenciais de acesso ao GitHub configuradas previamente.- Advanced:
- Refspec:
+refs/heads/*:refs/remotes/origin/*
- Refspec:
- Advanced:
- Branches to build:
refs/remotes/${BRANCH}
- Script Path:
Jenkinsfile
- Repository URL:
Clique no botão Save para persistir todas as informações fornecidas.
Depois clique na opção Build with Parameters.
Escolha a BRANCH, o ENVIRONMENT e clique no botão Build.
É retornado para a página do com os detalhes da Pipeline e pode acompanhar o andamento da construção do projeto.
Ainda é possível clicar no trabalho em execução para obter detalhes sobre o mesmo.
Na opção Console Output podemos ver os detalhes do andamento da execução.
E caso ocorra tudo bem, é apresentado a mensagem de sucesso.
E acessando a aplicação, podemos ver o mesmo atualizado e funcionando.
Para toda vez que seja preciso atualizar uma aplicação, somente repetir os passos de Build with Parameters.
Deixe um comentário