Programas de Infraestrutura¶
Projetos FLOSS (Free/Libre and Open Source Software) frequentemente dependem de uma infraestrutura robusta para desenvolver, testar, distribuir e operar seu software. No entanto, manter essa infraestrutura pode representar um custo significativo, especialmente para projetos comunitários ou organizações sem fins lucrativos.
Os programas de infraestrutura oferecem acesso gratuito ou subsidiado a serviços, plataformas e recursos tecnológicos essenciais para projetos Open Source. Em vez de fornecer recursos financeiros diretamente, esses programas reduzem os custos operacionais dos projetos ao disponibilizar infraestrutura mantida por empresas e organizações parceiras.
Esse tipo de apoio permite que pessoas mantenedoras concentrem seus esforços no desenvolvimento do projeto, em vez de administrar servidores, serviços em nuvem ou outras ferramentas essenciais.
O que são programas de infraestrutura?¶
São iniciativas criadas por empresas e organizações para disponibilizar infraestrutura tecnológica a projetos Open Source.
Os recursos oferecidos podem incluir:
- hospedagem;
- computação em nuvem;
- armazenamento;
- redes de distribuição de conteúdo (CDN);
- integração e entrega contínua (CI/CD);
- registro e gerenciamento de domínios;
- DNS;
- monitoramento;
- bancos de dados;
- gerenciamento de artefatos;
- ambientes de desenvolvimento.
Dependendo do programa, o acesso pode ser totalmente gratuito ou concedido por meio de créditos de uso.
Como funcionam?¶
Cada programa possui seus próprios critérios de elegibilidade, mas normalmente segue um fluxo semelhante.
- O projeto realiza uma solicitação de participação.
- A organização avalia se o projeto atende aos requisitos.
- Caso aprovado, o projeto recebe acesso aos serviços oferecidos.
- O apoio pode ser renovado periodicamente, conforme as regras do programa.
Em muitos casos, é necessário que o projeto utilize uma licença Open Source reconhecida e possua um repositório público.
Benefícios¶
Os programas de infraestrutura oferecem diversas vantagens para projetos FLOSS.
Entre elas:
- redução de custos operacionais;
- acesso a serviços profissionais;
- maior disponibilidade da infraestrutura;
- melhoria da experiência de pessoas contribuidoras;
- escalabilidade;
- aumento da confiabilidade dos serviços;
- possibilidade de utilizar ferramentas normalmente inacessíveis para pequenos projetos.
Além disso, muitos programas oferecem suporte técnico especializado e integração com outras ferramentas.
Principais tipos de infraestrutura¶
Os programas podem disponibilizar diferentes categorias de serviços.
Computação em nuvem¶
Infraestrutura para executar aplicações, serviços e ambientes de desenvolvimento.
Exemplos:
- máquinas virtuais;
- containers;
- Kubernetes;
- funções serverless.
CI/CD¶
Serviços para automatizar:
- testes;
- builds;
- integração contínua;
- publicação de releases.
Hospedagem¶
Serviços para hospedar:
- aplicações;
- documentação;
- sites;
- APIs;
- ambientes de demonstração.
CDN e DNS¶
Recursos para melhorar desempenho, disponibilidade e segurança de aplicações distribuídas globalmente.
Armazenamento¶
Serviços para armazenamento de:
- backups;
- artefatos;
- imagens;
- releases;
- bancos de dados.
Monitoramento¶
Ferramentas para acompanhar:
- disponibilidade;
- desempenho;
- utilização de recursos;
- métricas;
- logs.
Exemplos de programas ativos¶
GitHub for Open Source¶
O GitHub oferece diversos recursos gratuitos para projetos Open Source, incluindo repositórios públicos ilimitados, GitHub Actions, Pages, Discussions, Dependabot, CodeQL e outras ferramentas voltadas para colaboração e automação.
Embora muitos desses recursos estejam disponíveis para todos os projetos públicos, o GitHub também mantém programas específicos para organizações Open Source elegíveis.
GitLab for Open Source¶
O GitLab oferece acesso gratuito a funcionalidades avançadas para projetos Open Source qualificados.
Entre os recursos disponíveis estão funcionalidades premium de CI/CD, gerenciamento de projetos, segurança e colaboração.
Cloudflare Project Alexandria¶
O Project Alexandria fornece acesso gratuito a diversos serviços da Cloudflare para projetos Open Source.
Dependendo da elegibilidade, podem ser disponibilizados:
- CDN;
- DNS;
- proteção contra DDoS;
- SSL/TLS;
- cache;
- otimizações de desempenho.
Google Open Source Programs¶
O Google apoia diversos projetos Open Source oferecendo infraestrutura, ferramentas e serviços por meio de diferentes iniciativas voltadas ao ecossistema.
Embora nem todos os programas sejam exclusivamente de infraestrutura, diversas iniciativas incluem acesso a recursos tecnológicos e suporte para projetos Open Source.
AWS Open Source Credits¶
A Amazon Web Services disponibiliza programas de créditos em nuvem para determinados projetos Open Source.
Esses créditos podem ser utilizados para infraestrutura, armazenamento e diversos outros serviços da AWS.
Os critérios de elegibilidade variam conforme o programa vigente.
Comparando os programas¶
| Programa | Tipo de apoio | Exemplos de recursos |
|---|---|---|
| GitHub for Open Source | Plataforma de desenvolvimento | Repositórios, CI/CD, Pages, segurança e colaboração |
| GitLab for Open Source | Plataforma DevSecOps | CI/CD, gestão de projetos e funcionalidades premium |
| Cloudflare Project Alexandria | Infraestrutura de rede | CDN, DNS, SSL e proteção contra DDoS |
| Google Open Source Programs | Infraestrutura e ferramentas | Apoio tecnológico para projetos Open Source |
| AWS Open Source Credits | Créditos em nuvem | Computação, armazenamento e serviços AWS |
Como escolher um programa?¶
Antes de solicitar participação, vale considerar:
- quais serviços o projeto realmente necessita;
- requisitos de elegibilidade;
- duração do benefício;
- limitações de uso;
- facilidade de integração;
- dependência de um fornecedor específico.
Também é recomendável avaliar se a infraestrutura oferecida atende às necessidades futuras do projeto.
Programas de infraestrutura e sustentabilidade¶
Ao reduzir custos operacionais, os programas de infraestrutura permitem que projetos direcionem recursos financeiros e humanos para atividades de maior impacto, como desenvolvimento, documentação, segurança e fortalecimento da comunidade.
Além disso, o acesso a serviços profissionais melhora a confiabilidade e a escalabilidade dos projetos, contribuindo diretamente para sua sustentabilidade técnica.