DEV Community

Thiago Bertuzzi 👨🏻‍💻
Thiago Bertuzzi 👨🏻‍💻

Posted on

GitHub : Dependabot suas dependencias atualizadas e seguras

Bertuzzi invocado

Fala galera,

tudo beleza?

Não é novidade que meu repositorio favorito é o Github, inclusive sempre digo que o mesmo tem diversas funcionalidades muito bacanas para ajudar a melhorar e proteger seu código.

Quando desenvolvemos um software é comum depender de bibliotecas e pacotes de terceiros, porem manter tudo atualizado é geralmente um problema. Existem pacotes que possuem diversas atualizações importantes de segurança, ja outros ao atualizar quebram nosso build com mudanças de assinatura de método ou funcionalidades.

O Github tem uma ferramenta muito legal para nos ajudar nisso o Dependabot! E é dele que vamos falar hoje!

Bertuzzi Robo

Dependabot!

O Dependabot é um serviço de integração contínua oferecido pelo GitHub, projetado especificamente para monitorar e atualizar automaticamente as dependências dos repositórios. Ele analisa regularmente o arquivo de manifesto de dependências (como o package.json no JavaScript ou o csproj do .net) e notifica sobre versões desatualizadas, novas e atualizações criticas de correções de segurança.

Legal, mas como funciona?

O Dependabot funciona integrado ao seu repositorio ou a um fluxo devops do GitHub. Quando ativado em um repositório, o Dependabot verifica regularmente as dependências em busca de atualizações disponíveis. O Mais incrivel é que ele cria solicitações de pull (PRs) com as atualizações propostas, permitindo que você revise e teste as mudanças antes de comita-las em seu código.

Mais incrivel ainda do ponto de vista de segurança, o Dependabot analisa as atualizações em busca de vulnerabilidades conhecidas. Se uma atualização resolver uma vulnerabilidade de segurança, o Dependabot criará uma PR específica para essa atualização, destacando a importância da correção. Isso é incrivel! Principalmente para manter o seu projeto protegido contra possíveis ameaças.

Como configurar o DependaBot?

Existem 2 formas de configurar o DependaBot, uma é com um arquivo dependabot.yml adicionado ao seu repositorio (caso queira ver todas as opções do Arquivo clique aqui), ou no proprio repositorio :

No seu repositorio clique em settings :

Settings

Em Seguida nas opções de segurança :

Seccurity options

Então temos todas as opções do Dependabot :

Dependabot

Caso queira configurações mais especificas pode acessar a documentação oficial clicando aqui.

Um exemplo de como ele se comporta :

Dependabot

O Pull request é bem explicativo e facil de entender antes de dar o merge :

Dependabot

Então recapitulando os beneficios do Dependabot :

Manutenção dependências: Ele automatiza a tarefa de acompanhar e atualizar suas dependências, poupando tempo e esforço. Ele mantém você informado sobre as atualizações disponíveis e cria PRs prontas para serem revisadas e mescladas.

Correção de vulnerabilidades: Isso ajuda a garantir que você esteja ciente das vulnerabilidades conhecidas nas suas dependências. Ao criar PRs específicas para resolver essas vulnerabilidades, ele facilita a aplicação das correções necessárias para manter seu código e sistema seguro.

Ja esta no GitHub: O Dependabot é um serviço nativo do GitHub, o que significa que ele se integra perfeitamente ao ambiente do GitHub. Ele se alinha com os fluxos de trabalho existentes, Actions, repositorio ,notificações e revisões de código, facilitando a adoção e utilização por desenvolvedores.

Caso queira saber mais sobre Desenvolvimento seguro clique aqui

Caso queira saber o que não se deve armazenar no seu código clique aqui

Espero ter ajudado!

Aquele abraço!

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more