O que é Jenkins?

o que é jenkins

O que é Jenkins e por que é importante conhecer e dominar esta tecnologia? Porque ela é muito usada na área de DevOps, além de proporcionar mais rapidez e segurança às aplicações criadas. 

Por essas razões, o termo está no Dicionário Tech da Coodesh, uma seção especial do blog que traz as explicações dos principais conceitos, jargões e tecnologias usados por desenvolvedores e programadores. Confira o conteúdo!

Definição de Jenkins 

Jenkins é um servidor de automação de código aberto. Ele é baseado em Java e sua principal característica é o fornecimento de mais de 1,7 mil plugins que auxiliam na criação, implantação e automação dos projetos. 

Outra característica peculiar é que Jenkins foi desenvolvido para Integração Contínua (Continuous Integration – CI) e Entrega Contínua (Continuous Delivery – CD), conceitos que juntos com uma cultura DevOps aceleram a conclusão de softwares.

Basicamente, podemos dizer que Jenkins atua em toda a pipeline de entrega do software, desde a construção, documentação, teste, implantação e análise, facilitando os trabalhos do desenvolvedor. 

História do Jenkins 

Originalmente, Jenkins era chamado de Hudson. Criado em 2004 pelo desenvolvedor Kohsuke Kawaguchi, ele rapidamente passou a ser usado no mundo todo. 

Kawaguchi trabalhava na Sun Microsystems e buscava uma solução para o seu código que quebrava a compilação. Foi então que ele criou algo que testava o código antes de fazer um commit real no repositório. Assim surgia o Jenkins. Outros desenvolvedores da equipe também passaram a usá-lo e logo ele se tornou conhecido. 

Você pode conhecer melhor a tecnologia acessando a página do Jenkins e a documentação

Principais vantagens de usar Jenkins 

Jenkins possui uma ampla comunidade e oferece suporte para o desenvolvedor que deseja utilizá-lo nos projetos mais importantes. Confira a seguir algumas das principais vantagens de usá-lo.

Plugins   

Foram liberados plugins para o Jenkins que ampliam sua utilização para projetos redigidos em diferentes linguagens além de Java. Eles estão acessíveis para a incorporação do Jenkins com a maioria dos sistemas de versionamento e bases de dados de problemas. Diversas ferramentas de edificação são mantidas por meio de suas respectivas extensões. As extensões também têm a capacidade de alterar a aparência do Jenkins ou inserir novas funcionalidades. Uma coleção de extensões dedicadas para propósitos de testes unitários produz relatórios de testes em múltiplos formatos (por exemplo, JUnit embutido no Jenkins, MSTest, NUnit, etc) e testes automatizados que respaldam testes automatizados. Compilações podem gerar relatórios de teste em diversos formatos aceitos por plugins (o suporte ao JUnit está atualmente incluso), e o Jenkins pode exibir os relatórios, traçar tendências e renderizá-los na interface gráfica.

Código aberto

Trata-se de um servidor de automatização de código aberto e gratuito. Sua função é automatizar as etapas do processo de desenvolvimento de software ligadas à criação, avaliação e implementação, simplificando a prática de integração e implementação ininterruptas. Essencialmente, trata-se de um sistema orientado a servidor que opera por meio de contêineres de servlet, como o Apache Tomcat.

CI/CD 

Como um servidor de automação flexível, o Jenkins tem a capacidade de operar como um servidor de Integração Contínua (CI) básico ou ser convertido em um centro de fornecimento contínuo para qualquer projeto.

Instalação fácil

O Jenkins é uma aplicação independente desenvolvida em Java, pronta para ser executada sem necessidade de configurações complexas, com disponibilidade de pacotes para sistemas operacionais como Windows, Linux, macOS e outras plataformas similares ao Unix.

Fácil configuração

A instalação e configuração do Jenkins são facilitadas por intermédio de sua interface web, que incorpora verificação de erros em tempo real e assistência integrada.

Distribuído

O Jenkins tem a capacidade de distribuir de maneira descomplicada as tarefas entre múltiplas máquinas, contribuindo para a realização de compilações, testes e implementações em diversas plataformas de forma mais ágil.

Conclusão

E, então, já se decidiu por estudar e entender melhor o que é Jenkins? Confira o site oficial e a documentação, que mencionamos logo acima, e pergunte à comunidade sobre as suas principais dúvidas ao ingressar nesta tecnologia. 

Quer conferir mais termos usados pelos desenvolvedores? Veja o feed do nosso Dicionário Tech nas mais diversas áreas. 

Aproveite também para se inscrever na Coodesh, completar seu perfil e participar dos principais processos seletivos.

Marketing de recrutamento: o que é e como implantar

página de carreira

Página de carreira: construindo uma marca atraente para talentos tech