Sobes.tech
Junior — Middle

Que experiência tem na automação de processos de integração e entrega de software usando CI/CD?

sobes.tech IA

Resposta da IA

Tenho experiência na configuração e utilização de CI/CD para automatizar a construção, teste e implantação de aplicações em Python. Normalmente uso ferramentas como GitHub Actions, GitLab CI ou Jenkins.

Os principais passos que automatizei:

  • Execução automática de testes a cada commit ou pull request.
  • Verificação da qualidade do código com linters (por exemplo, flake8, pylint).
  • Construção e empacotamento da aplicação (por exemplo, criação de imagens Docker).
  • Implantação automática em servidores de teste ou produção após a passagem bem-sucedida de todas as verificações.

Exemplo de um fluxo de trabalho simples no GitHub Actions para um projeto Python:

name: CI Python

on: [push, pull_request]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Configurar Python
      uses: actions/setup-python@v2
      with:
        python-version: '3.9'
    - name: Instalar dependências
      run: |
        python -m pip install --upgrade pip
        pip install -r requirements.txt
    - name: Executar testes
      run: |
        pytest