wils@web ~ $ cat ~/ajuda/como-implementar-ci-cd-com-gitlab-ci-14-5-para-aplicacoes-ruby-on-rails-guia-pratico.md

DevOps

Como implementar CI/CD com GitLab CI 14.5 para aplicações Ruby on Rails: Guia prático

atualizado em 05/09/2026

Implementar CI/CD (Integração Contínua e Entrega Contínua) com GitLab CI para aplicações Ruby on Rails é uma maneira eficaz de garantir que seu código esteja sempre em um estado implantável. Neste guia prático, você aprenderá como configurar um pipeline básico de CI/CD.

Pré-requisitos

  • Conta no GitLab.
  • Projeto Ruby on Rails já criado e hospedado no GitLab.
  • Docker instalado (opcional, mas recomendado para ambientes isolados).

Passo 1: Criar o arquivo .gitlab-ci.yml

No diretório raiz do seu projeto, crie um arquivo chamado .gitlab-ci.yml. Este arquivo conterá a configuração do seu pipeline.

Exemplo de .gitlab-ci.yml

image: ruby:2.7

stages:
  - test
  - deploy

variables:
  DATABASE_URL: "postgres://user:password@postgres:5432/dbname"

before_script:
  - apt-get update -qq && apt-get install -y nodejs
  - gem install bundler
  - bundle install

test:
  stage: test
  services:
    - postgres:latest
  script:
    - bundle exec rake db:create RAILS_ENV=test
    - bundle exec rake db:schema:load RAILS_ENV=test
    - bundle exec rspec

deploy:
  stage: deploy
  script:
    - echo "Deploying to production..."
    - # Adicione seu comando de deploy aqui
  only:
    - master

Passo 2: Configurar variáveis de ambiente

No GitLab, vá para Configurações > CI/CD > Variáveis e adicione as variáveis necessárias, como DATABASE_URL e credenciais do seu banco de dados.

Passo 3: Testar o pipeline

Após adicionar o arquivo .gitlab-ci.yml, faça um commit e push para o repositório. O GitLab iniciará automaticamente o pipeline.

Conclusão

Com o GitLab CI configurado, você pode garantir que seu código Ruby on Rails seja testado e implantado automaticamente. Lembre-se de monitorar os pipelines e ajustar conforme necessário.

Dica: Utilize a integração com ferramentas de notificação, como Slack, para receber atualizações sobre o status do seu pipeline.

Precisa de ajuda com isso no seu servidor? A gente resolve pra você.

falar no WhatsApp

// deu erro ou não funcionou?

Achou algo errado neste manual?

Conta pra gente o que deu errado ou qual erro apareceu — a gente corrige. Se quiser retorno, deixe seu contato.