Python: Configurar o workflow do GitHub Actions

Esta documentação faz parte do guia Implementar com GitHub Actions. Consulte o guia completo aqui: Como implementar o seu código Python utilizando o GitHub Actions.

👋 Bem-vindo à documentação do Stackhero!

Stackhero oferece uma solução cloud Python pronta a usar que proporciona uma série de benefícios, incluindo:

  • Implemente a sua aplicação em segundos com um simples git push.
  • Utilize o seu próprio nome de domínio e beneficie da configuração automática de certificados HTTPS para uma segurança reforçada.
  • Desfrute de tranquilidade com backups automáticos, atualizações com um clique, e preços simples, transparentes e previsíveis.
  • Obtenha performance ótima e segurança robusta graças a uma VM privada e dedicada.

Poupe tempo e simplifique a sua vida: só leva 5 minutos para experimentar a solução de hospedagem cloud Python do Stackhero!

No seu repositório Git, crie uma pasta chamada .github/workflows caso ainda não exista. Depois, adicione um ficheiro chamado deploy-to-stackhero.yml dentro dessa pasta.

# Ficheiro: .github/workflows/deploy-to-stackhero.yml

name: Deploy to Stackhero
run-name: Deploy branch "${{ github.ref_name }}" to Stackhero

on:
  push:
    # Lista de ramos que irão acionar a ação de deploy após um git push.
    # Não se esqueça de criar um ambiente correspondente ao nome do ramo no GitHub (em "Settings"/"Environments").
    # Depois adicione o segredo correspondente "STACKHERO_SSH_PRIVATE_KEY" e a variável "STACKHERO_ENDPOINT" nesse ambiente.
    branches: [ "production", "staging" ]

jobs:
  Deploy:
    environment: ${{ github.ref_name }}
    runs-on: ubuntu-latest
    steps:
    - uses: stackhero-io/github-actions-deploy-to-stackhero@v1
      with:
        # O segredo "STACKHERO_SSH_PRIVATE_KEY" e a variável "STACKHERO_ENDPOINT" devem ser definidos no ambiente do ramo correspondente no GitHub em "Settings"/"Environments".
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

Depois de adicionar o ficheiro de workflow, pode confirmar as suas alterações:

git add -A .
git commit -m "Adicionar GitHub Actions para deploy no Stackhero"

Pode criar um ramo de produção com:

git checkout -b production

E fazer push das suas alterações para o GitHub:

git push --set-upstream origin production

Isto irá enviar o seu código para o ramo production no GitHub e acionar o GitHub Actions, implementando o seu código na sua instância Stackhero.

Para verificar o estado da sua implementação, basta aceder à página do seu projeto GitHub e clicar em Actions.

GitHub Actions que implementou em produçãoGitHub Actions que implementou em produção

E está feito. Agora tem implementações automáticas em produção utilizando o GitHub Actions.