
Tendo trabalhado um pouco com o CI / CD (gitlab ce), recentemente deparei-me com ações no github e decidi tentar que tipo de animal é esse.
Não foi muito interessante montar JS ou outras soluções, por isso decidi testar a montagem do esboço do Arduino para esp8266, para obter um binário compilado como resultado, pronto para ser baixado diretamente no microcontrolador sem a necessidade de instalar um Arduino IDE local.
Ações ou pipelineUma sequência de comandos e ações iniciada após determinados eventos - por exemplo, envie para a ramificação do repositório git, ou seja, será iniciada após a alteração de um arquivo. Você pode modificar o arquivo diretamente com o editor do github, e o projeto será compilado e compilado automaticamente. O pipeline é usado não apenas para compilação, mas também para vários testes de código.
Não comecei a criar uma imagem do docker para tudo isso, isso complicaria o processo de organização do ci / cd e, novamente, não tenho uma imagem para cada biblioteca.
Como isso pode ser útil? Suponha que exista algum tipo de projeto de código aberto, para diferentes versões de controladores com diferentes quantidades de memória e que leve muito tempo para compilar o código para todas as plataformas. Em ações, você pode configurar as plataformas para as quais a montagem é necessária - e com cada alteração no código no repositório para cada versão da plataforma, haverá um firmware pronto.
O código do próprio script de ação:
on: [push] jobs: build: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v1 - name: install arduino cli run: curl -fsSL https:
De fato -
- Em um sistema limpo com o ubuntu 18.04, instalamos o arduino-cli
- Adicionar suporte esp8266
- Compile o código do arduino hospedado no repositório,
- Criamos uma versão na qual adicionamos o binário compilado

As ações no github são gratuitas para projetos de código aberto, agora também estão disponíveis para repositórios fechados, mas parece que elas se tornarão inacessíveis após um tempo.
Eu não finjo devops, algumas coisas poderiam ser feitas mais facilmente, mas, em qualquer caso, funciona.