Guia completo: Aprenda a usar o Gitlab e suas funcionalidades DevOps

Guia completo: Aprenda a usar o Gitlab e suas funcionalidades DevOps

O que é o Gitlab?

O Gitlab é uma ferramenta que agrega diversas funcionalidades, mas, primordialmente, é um gerenciador de repositório baseado em Git, assim como o Github. Hoje em dia, além da funcionalidade citada, ele também conecta diversas ferramentas do mundo DevOps, assim como conceitos de CI/CD e até mesmo Kubernetes.

Como usar o CI/CD do Gitlab?

Preferencialmente, devemos ter um arquivo no nosso repositório com o nome “.gitlab-ci.yml”. Esse é o nome padrão do arquivo que será utilizado nas pipelines do Gitlab, mas você pode configurar para ter outro nome.

  • Para que possamos denominar o arquivo de pipeline com outro nome, basta acessar as configurações do seu repositório

  • Selecione a opção CI/CD das configurações
  • Clique em expandir a opção Pipelines Gerais

 

  • Configure o caminho ou nome do seu arquivo yml da pipeline

    Após ter criado seu arquivo com extensão .yml, iremos configurar uma simples pipeline só para entender o processo que o Gitlab utiliza. 😀

Como criar o arquivo para a pipeline

Você pode utilizar seu editor de preferência, mas o Gitlab fornece uma IDE de desenvolvimento web ^^, basta acessar o arquivo que deseja editar e clicar em IDE Web

Agora podemos finalmente criar o código, conforme o exemplo abaixo:

build-job:
    stage: build
    script:
        - echo "Ola, $GITLAB_USER_LOGIN!"

test-job:
    stage: test
    script:
        - echo "Esse é um teste"


deploy-prod:
    stage: deploy
    script:
        - echo "Este deploy esta sendo feito na branch $CI_COMMIT_BRANCH"

Basicamente, este código indica os estágios de desenvolvimento que iremos utilizar. No Gitlab, podemos ter 4 nomes para os estágios, sendo eles:

  1. build
  2. test
  3. deploy
  4. .post

Em cada um dos 3 estágios principais, utilizamos um script, que nada mais é do que um shell rodando por trás. Claro que utilizamos exemplos simples para mostrar a funcionalidade.
Além disto, podemos ver variáveis que não foram declaradas neste arquivo, que são variáveis padrão do Gitlab encontradas na documentação: variaveis sendo as mostradas

  1. $GITLAB_USER_LOGIN = Nome do usuário que esta rodando o job
  2. $CI_COMMIT_BRANCH = Nome da branch que o job esta rodando

Com o código acima, ao clicarmos em Commit, o Gitlab irá automaticamente iniciar a tentativa de rodar este job.

 

Insira a mensagem de Commit e o deploy será iniciado automaticamente

 

Agora, ao retornar ao menu do projeto e clicar em CI/CD pipelines, você será guiado até o histórico das pipelines, onde a pipeline inicial terá seu status de sucesso ou falha

 

Ao acessar os jobs, é possível ver quais passos falharam ou passaram

 

 

Ao clicar em algum dos passos, podemos ver os logs da execução

E com isto finalizamos a utilização da pipeline no Gitlab. 🙂

Líder em Treinamento e serviços de Consultoria, Suporte e Implantação para o mundo open source. Conheça nossas soluções:

CURSOSCONSULTORIA

Anterior Integrando Telegram ao Rocket.Chat
Próxima Rocket.Chat App: Criando seu primeiro aplicativo

About author

Gabriel Nascimento
Gabriel Nascimento 4 posts

Gabriel Nascimento, Formado como Tecnologo em Análise e Desenvolvimento de Sistemas pela UNASP e Técnico em Redes de computadores pela ETEC de Embu , atua como Analista de infraestrutura Linux com ênfase em automação de tarefas bem com as tecnologias Jenkins, Shell Script, Puppet, Chef e Ansible

View all posts by this author →

Você pode gostar também

DevOps

DevSecOps: Como usar o SonarQube para análise de vulnerabilidades

Quando falamos de DevSecOps, estive um termo chamado Shift Left, que consiste em analisar questões de segurança desde o inicio do desenvolvimento de uma aplicação, ao invés do modelo tradicional

Infraestrutura TI

Tutorial: Configurando o Traefik no Docker Swarm com arquivos YAML

Neste tutorial, você aprenderá como configurar o Traefik no Docker Swarm usando arquivos YAML, uma forma fácil e eficiente de gerenciar seus aplicativos de contêineres em larga escala. Ao seguir

DevOps

Guia prático: Como configurar e usar o Minio Server em sua infraestrutura

Minio é um storage de objetos, de alta performance e distribuído. A grande vantagem de usá-lo, reside em sua total compatibilidade com o Amazon S3. Neste artigo explico como subir