As ações do GitHub devem usar para integração contínua (IC)? – Cloudsavvy Ti

A integração contínua é crucial para qualquer repositório ativo que precise de compilação e teste de rotina. O Github oferece suporte a pipelines de CI na forma de Github Actions: compilações que são executadas na nuvem, automaticamente, com apenas um pouco de configuração.

índice

  1. O que é integração contínua?
  2. O que são ações do Github?
  3. Preços das ações do Github
  4. Você deve usar ações ou seu próprio servidor de compilação?

O que é integração contínua?

Enquanto algumas bases de código, como certos aplicativos da web, podem ser implantadas diretamente de seus arquivos de origem, outras requerem processamento adicional, compilação e, mais importante, teste de unidade. Essas compilações podem ser complicadas e até mesmo intensivas em recursos no caso de linguagens como C++.

A integração contínua é o processo de automatizar testes e criar novos commits para seu código-fonte. Comumente, isso é usado com software como Jenkins que é executado em um "servidor de compilação" que lidará com a compilação real.

A compilação automatizada de código é um serviço tão útil para equipes de software que agora é oferecido por provedores de nuvem, incluindo o Github, onde se integra perfeitamente a outros serviços.

O que são ações do Github?

Github Actions são tarefas baseadas em nuvem que podem ser usadas para automatizar seu repositório. Normalmente, eles são usados ​​para executar compilações automatizadas para novos commits ou lançamentos, que podem ser úteis para testes de software em andamento. No entanto, eles também podem ser usados ​​para automação não relacionada a CI, como trabalhar em problemas e pull requests, executar cron jobs ou acionar comandos baseados em ação em sua conta.

No que diz respeito ao CI, as ações do Github são bastante úteis. A maioria dos pipelines de CI exige que você configure um software complicado como Jenkins ou use um serviço de nuvem específico como o AWS CodePipeline. As ações do Github são muito simples e exigem apenas que você envie um arquivo de configuração para .github/workflows/ para habilitar uma ação.

Além disso, o Github geralmente pode detectar que tipo de projeto você está fazendo e oferecer sugestões para configurações de ação de sua biblioteca de exemplo. Por exemplo, este projeto Java estava funcionando com compilações automatizadas em apenas alguns minutos com alguns pequenos ajustes para

Você pode ter várias ações no mesmo repositório; por exemplo, talvez você queira configurar compilações automatizadas para cada commit na ramificação dev , mas só queira compilações para cada nova versão marcada na ramificação master . Você pode criar dois arquivos YAML separados com critérios diferentes.

Embora as ações sejam muito úteis para compilar e testar, elas também podem executar comandos e se conectar a outros serviços, permitindo automatizar os processos de lançamento e implantação também. Por exemplo, você pode ter uma ação na ramificação de release para pegar cada nova versão marcada e carregá-la em seus servidores para implantação.

Por padrão, as compilações do Github Actions publicarão os artefatos de compilação (o que quer que tenha sido gerado pelo processo de compilação) em um arquivo zip para cada execução. Isso funciona bem se você estiver apenas executando testes, mas se quiser fazer push automatizado, também poderá configurá-los para publicar automaticamente novas versões ou enviar por push para um registro de pacote/contêiner como NPM ou Docker Hub.

A configuração exata do seu repositório irá variar dependendo do seu processo de compilação, mas o Github faz um bom trabalho ao fornecer exemplos sólidos para você começar, e a configuração geral é praticamente a mesma. Se você quiser saber mais sobre como começar a usar o GH Actions, leia nosso guia sobre como configurá-los.

Preços das ações do Github

Felizmente, o Github tem dinheiro para patrocinar software de código aberto, então as ações são totalmente gratuitas para repositórios públicos. Você pode usá-los o quanto quiser ou armazenar quantos artefatos de construção desejar; não há limite rígido, a menos que você esteja sendo abusivo, assim como o resto do Github.

Para repositórios privados, cada conta recebe automaticamente 2.000 minutos de tempo de compilação por mês, o que é muito generoso. Isso é quase um dia e meio de compilação contínua, então você teria que fazer algumas compilações muito longas, ou toneladas de commits, para atingir esse número. É mais provável que você atinja o limite de armazenamento de 500 MB para contas gratuitas. No entanto, se você está construindo em cada commit, com longos tempos de compilação e commits frequentes, você pode esgotar esse número.

Os usuários do Github Pro (US$ 4/mês) obtêm 3.000 minutos e 1 GB de armazenamento, assim como as organizações que usam o plano Github Team, que custa US$ 4 por usuário, por mês.

O Github Enterprise, que custa US$ 21 por usuário, por mês, fornece 50.000 minutos de minutos de compilação, que são 35 dias seguidos de compilações, permitindo que você execute compilações 24 horas por dia, 7 dias por semana e mais alguns. .

Se você exagerar em qualquer plano, simplesmente será cobrado pelos minutos adicionais usados. As taxas são bastante justas, com um adicional de 2.000 minutos custando US $ 16.

Você deve usar ações ou seu próprio servidor de compilação?

CI/CD começa com rastreamento de controle de versão. As compilações automatizadas geralmente são executadas para cada confirmação ou versão principal, e a maioria dos sistemas de servidor de compilação autônomos, como Jenkins ou TeamCity, se integrará ao seu repositório git para fornecer essa funcionalidade.

Isso torna a própria solução de CI do Github bastante útil em comparação: ela é incorporada ao serviço que você já está usando e é extremamente fácil de instalar e executar. Tudo o que você precisa fazer é enviar o arquivo de configuração de compilação para sua pasta .github , e o Github irá buscá-lo e executá-lo. Embora os serviços autônomos possam ser úteis para implantações corporativas, para o usuário médio, a simplicidade de usar o Github Actions é mais fácil do que instalar um servidor de compilação personalizado.

As ações do Github também podem ser usadas para mais do que apenas compilações automatizadas. Eles suportam todos os tipos de automação de repositório, incluindo trabalhar com problemas e solicitações de pull.

Dito isso, as ações do Github não são tão abrangentes quanto executar seu próprio servidor e, se você fizer muitas compilações regulares ou complicadas, considere configurar um servidor Jenkins. Se você fizer muitas compilações com uso intensivo de CPU, o Jenkins também pode ser bom para isso, mas o Github Actions também suporta o uso de seu próprio servidor para executar compilações.

  • Pesquisador recupera completamente o texto dos pixels: como reverter o texto
  • Tudo o que você precisa para atualizar o áudio do seu carro antigo

descubra mais conteúdo

O que é um amplificador integrado?

Google Pixel Watch também tem detecção de queda, mas não até o próximo ano

As melhores xícaras de café aquecidas de 2022

Como automatizar seu iPhone com base na hora, atividade ou localização

"Isso deve ter sido antes do meu tempo"

Por que a NASA enviou Snoopy para a Lua? – Revisão geek

Como integrar Jenkins?

Basta seguir os passos abaixo:

  1. Baixe a ferramenta na página oficial. Observe que você pode baixar o Jenkins como um pacote nativo para seu sistema operacional ou no formato WAR.
  2. Localize o WAR (war) baixado na pasta onde você deseja instalar o Jenkins .
  3. Por fim, resta apenas elevar o servidor.

O que é Jenkins e para que serve?

Jenkins é um servidor de integração contínua automatizado de código aberto capaz de organizar uma cadeia de ações que ajudam a alcançar o processo de integração contínua (e muito mais) de forma automatizada.

Ir arriba