O que é GitHub Actions?
GitHub Actions é uma plataforma de integração contínua e entrega contínua (CI/CD) que permite automatizar a sua compilação, testar e pipeline de implantação. É possível criar fluxos de trabalho que criam e testam cada pull request no seu repositório, ou implantar pull requests mesclados em produção.
O presente post, explica os procedimentos de deploy com CI/CD no GitHub Actions.
No servidor de produção, execute:
ssh-keygen -m PEM -t rsa -b 4096 -C "seuusuario@github.com"
cat github-actions >> autenticate_keys
cat github-actions
A chave secreta que deve ser copiar na sua conta do GitHub
Criar o arquivo .yml para o CI/CD
$ vim github-action\workflows\ci.yml
NOTA: Se atentar a tabulação do arquivo .yml
name: seudominio.com CI
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout do repositorio
uses: actions/checkout@1
- name: Deploy para meu hosting
uses: easingthemes/ssh-deploy@main
env:
SSH_PRIVATE_KEY: ${{ secrets.SERVER_SSH_KEY }}
ARGS: "-rlgoDzv0 --delete"
SOURCE: "src/"
REMOTE_HOST: ${{ secrets.REMOTE_HOST }}
REMOTE_USER: ${{ secrets.REMOTE_USER }}
REMOTE_PORT: ${{ secrets.REMOTE_PORT }}
TARGET: ${{ secrets.REMOTE_TARGET }}
Agora criar o repositório local e remoto (GitHub, Bitbucket ou GitLab)
Em Settings/Secrets adicione o valor das variáveis definidas no arquivo ci.yml nos respectivos campos, tais como: REMOTE_HOST, REMOTE_USER, REMOTE_PORT.
git add .
git commit -m "First commit"
git remote add origin URL_REPOSITORIO
git push origin main
Verificar no GitHub Actions o processo de deploy
Pronto, é assim que precisa ser o deploy aplicando CI/CD automatizado. Caso você ainda utiliza o deploy via FTP ou conecta o servidor de produção via SSH, esteja ciente que está no modo arcaico.
Referências
https://github.com/features/actions
Feito!
Nenhum comentário:
Postar um comentário