Jenkins Tutorial de Pipeline: Como Criar JenkinsArquivo (Exemplo)
โก Resumo Inteligente
Jenkins Os pipelines vinculam tarefas de compilaรงรฃo, teste e implantaรงรฃo em uma sequรชncia ordenada que รฉ executada como cรณdigo. JenkinsO arquivo enviado ao lado do projeto transforma essa sequรชncia em uma definiรงรฃo de entrega versionada e passรญvel de revisรฃo.
O que รฉ a Jenkins Gasoduto?
Jenkins Pipeline รฉ uma combinaรงรฃo de plugins que suporta a integraรงรฃo e implementaรงรฃo de canais de entrega contรญnuaร um servidor de automaรงรฃo extensรญvel para a criaรงรฃo de pipelines de entrega simples e complexos como cรณdigo, atravรฉs da DSL de pipeline. Um pipeline รฉ um grupo de eventos interligados em uma sequรชncia.
O que sรฃo pipelines de entrega contรญnua? Como funciona?
Em um artigo do Jenkins Em um pipeline, cada tarefa ou evento tem algum tipo de dependรชncia em pelo menos um ou mais eventos, como mostra o diagrama abaixo.

A imagem acima representa um pipeline de entrega contรญnua em Jenkins, composto por estados chamados build, deploy, test e release. Cada estado possui seus prรณprios eventos, que sรฃo executados em sequรชncia.
Um pipeline de entrega contรญnua automatiza esse processo, conduzindo o software do controle de versรฃo ร versรฃo final por meio de uma sequรชncia repetรญvel de compilaรงรตes. ensaio e fases de implantaรงรฃo.
O que รฉ uma JenkinsArquivo?
Jenkins Os pipelines podem ser definidos em um arquivo de texto chamado JenkinsArquivo. Ele expressa o pipeline como cรณdigo em uma linguagem de domรญnio especรญfico (DSL) e contรฉm cada etapa necessรกria para executar o pipeline.
Os benefรญcios do uso JenkinsOs arquivos sรฃo:
- completa JenkinsO File pode criar pipelines para cada branch e executar pull requests.
- Vocรช pode revisar o seu Jenkins cรณdigo no pipeline
- Vocรช pode auditar seu Jenkins oleoduto
- Esta รฉ a fonte รบnica do seu pipeline e pode ser modificada por vรกrios usuรกrios.
Um pipeline pode ser definido em Jenkins interface web ou em um JenkinsArquivo enviado para o controle de versรฃo. Um arquivo declarativo mรญnimo tem um formato fixo โ um bloco de pipeline, um agente e estรกgios, contendo um estรกgio por fase.
pipeline { agent any stages { stage('Build') { steps { echo 'Building' } } stage('Test') { steps { echo 'Testing' } } stage('Deploy') { steps { echo 'Deploying' } } } }
Salvar o arquivo na raiz do repositรณrio atualiza a versรฃo do pipeline com o cรณdigo.
Sintaxe de pipeline declarativa versus sintaxe de pipeline com script
Existem dois tipos de Jenkins Sintaxe de pipeline usada para definir seu JenkinsArquivo.
- Declarativo
- Com script
Declarativo
A sintaxe declarativa de pipeline รฉ o caminho mais fรกcil. Ela segue uma hierarquia predefinida e ainda controla todos os aspectos da execuรงรฃo do pipeline de maneira direta.
Com script
Com script Jenkins O oleoduto funciona no Jenkins controlador por meio de um executor leve, usando poucos recursos para traduzir o pipeline em comandos atรดmicos. Os dois sรฃo escritos de maneiras bem diferentes, entรฃo escolha um por vez. JenkinsArquivo.
โ ๏ธ Observaรงรฃo: Jenkins agora chama o dominar da controlador.
Por que usar Jenkins Gasoduto?
Jenkins รฉ um aberto servidor de integraรงรฃo contรญnua que automatiza processos de desenvolvimento de softwareVocรช pode criar vรกrios empregos de automaรงรฃo A partir dos seus casos de uso, execute-os como um รบnico pipeline.
Aqui estรฃo os motivos pelos quais vocรช deve usar Jenkins encanamento:
- O pipeline รฉ implementado como cรณdigo, permitindo que vรกrios usuรกrios editem e executem o processo.
- Os pipelines sรฃo robustos: se o servidor reiniciar inesperadamente, o pipeline รฉ retomado automaticamente.
- Vocรช pode pausar um pipeline e mantรช-lo em execuรงรฃo atรฉ que o usuรกrio forneรงa uma entrada.
- Os pipelines dรฃo suporte a grandes projetos: execute vรกrias tarefas e atรฉ mesmo use pipelines em um loop.
Jenkins Pipeline Concepts
Quatro termos se repetem em cada Jenkinsarquivo:
| INVERNO | Descriรงรฃo |
|---|---|
| Pipeline | Um conjunto de instruรงรตes escritas em cรณdigo que abrange todo o processo de compilaรงรฃo para entrega contรญnua. Com um pipeline, vocรช pode compilar, testar e entregar a aplicaรงรฃo. |
| Node | A mรกquina na qual Jenkins Uma execuรงรฃo รฉ chamada de nรณ. Um bloco de nรณ รฉ usado principalmente na sintaxe de pipeline com script. |
| Etapa | Um bloco de estรกgio contรฉm uma sรฉrie de etapas. Os processos de construรงรฃo, teste e implantaรงรฃo se unem em um estรกgio, que tambรฉm รฉ o que a visualizaรงรฃo do pipeline exibe. |
| Passo | Uma รบnica tarefa que executa um processo especรญfico em um tempo definido. Um pipeline รฉ uma sรฉrie de etapas. |
Instale o Plugin Build Pipeline em Jenkins
O plugin de pipeline de compilaรงรฃo cria uma visualizaรงรฃo do fluxo de tarefas de entrada e saรญda e adiciona gatilhos de intervenรงรฃo manual.
Instale-o da seguinte forma:
Passo 1) As configuraรงรตes do plugin podem ser encontradas em Gerenciar Jenkins > Gerenciar plugins, mostrado abaixo.
โ ๏ธ Nota de versรฃo: atual Jenkins As versรตes rotulam esta tela. Gerenciar Jenkins โ Plugins; as abas se comportam conforme descrito aqui.
Se vocรช jรก instalou o plugin, ele serรก mostrado na guia instalado.
Passo 2) Se o plugin ainda nรฃo estiver instalado, ele aparecerรก na aba Disponรญvel.
Com o plugin instalado:
Como Criar Jenkins Pipeline
Assim que vocรช estiver conectado ao seu Jenkins painel de instrumentos:
Passo 1) Clique no botรฃo โ+โ no lado esquerdo da sua tela. Jenkins painel para criar um pipeline.
Passo 2) Preencha a nova caixa de diรกlogo de visualizaรงรฃo:
- Dรช um nome ร visualizaรงรฃo do pipeline. Vamos chamรก-la de โGuru99 Pipelineโ para esta demonstraรงรฃo.
- Selecione "Criar uma visualizaรงรฃo de pipeline" em opรงรตes.
- Clique em OK, como mostrado abaixo.
Passo 3) A prรณxima pรกgina solicita mais detalhes de configuraรงรฃo. Aceite as configuraรงรตes padrรฃo e certifique-se de escolher a primeira opรงรฃo nas configuraรงรตes.
Clique em Aplicar e depois em OK.
Em seguida, a visualizaรงรฃo de exemplo do pipeline do seu item รฉ exibida:
Executando uma compilaรงรฃo de pipeline
Passo 1) Primeiro, encadeie suas tarefas: abra sua primeira tarefa e clique em configurar.
Passo 2) Agora, em Gatilhos de Compilaรงรฃo, marque a opรงรฃo Compilar apรณs a compilaรงรฃo de outros projetos.
Agora existe uma rede que reรบne todas as suas necessidades de trabalho.
Passo 3) Instale o plugin de visualizaรงรฃo Build Pipeline, caso ainda nรฃo o tenha instalado.
Passo 4) No Jenkins No painel, crie uma visualizaรงรฃo com o botรฃo โ+โ, selecione a opรงรฃo Visualizaรงรฃo do Pipeline de Construรงรฃo e clique em OK.
Passo 5) Na configuraรงรฃo da visualizaรงรฃo do Pipeline, localize Fluxo do Pipeline.
Em Fluxo do Pipeline, selecione a tarefa inicial a ser executada โ a tarefa encadeada ร s outras nas Etapas 1 e 2.
GuruO Projeto 1 (99) รฉ selecionado aqui como a tarefa inicial, portanto, as tarefas encadeadas sรฃo executadas uma apรณs a outra.
Enquanto o oleoduto estรก em funcionamento, sรญmbolos vermelhos e verdes indicam seu estado: vermelho significa falha, verde significa sucesso.
Neste exemplo, o botรฃo estรก verde, o que significa que o processo foi bem-sucedido.
Corrida Jenkins oleoduto
Clique em Executar para executar o programa. Jenkins pipeline. Vai ficar mais ou menos assim:
O exemplo acima cria um programa simples "helloworld.java". Projetos reais encadeiam fluxos de trabalho muito mais complexos, como mostra a visรฃo completa abaixo.
โ ๏ธ Nota de versรฃo: O plugin de visualizaรงรฃo do Build Pipeline รฉ a maneira tradicional de visualizar jobs freestyle encadeados; a prรกtica atual define o mesmo fluxo em um JenkinsArquivo. Azul Ocean Nรฃo estรก mais aprimorado.
Melhores Prรกticas usando Jenkins Pipeline
Sete hรกbitos mantรชm um pipeline em ordem:
- Use o original Jenkins Pipeline
- Desenvolva seu pipeline como cรณdigo
- Qualquer trabalho que nรฃo seja de configuraรงรฃo no pipeline deve ocorrer dentro de um bloco de estรกgio.
- Qualquer trabalho material em um pipeline deve ser executado dentro de um bloco de nรณs.
- Nรฃo utilize entrada dentro de um bloco de nรณ.
- Nunca defina variรกveis โโde ambiente com variรกvel global env
- Envolva suas entradas em um tempo limite













