Python: Configurer le workflow GitHub Actions

Cette documentation fait partie du guide Déployer avec GitHub Actions. Consultez le guide complet ici : Comment déployer votre code Python avec GitHub Actions.

👋 Bienvenue sur la documentation de Stackhero !

Stackhero propose une solution Python cloud prête à l'emploi, conçue pour simplifier vos déploiements :

  • Déployez votre application en production en quelques secondes avec un simple git push.
  • Utilisez votre propre nom de domaine, avec une configuration automatique du certificat HTTPS pour des connexions sécurisées gérées pour vous.
  • Profitez de sauvegardes automatiques, de mises à jour en un clic et d'une tarification prévisible, afin que vous puissiez vous concentrer sur votre code, pas sur la gestion de l'infrastructure.
  • Bénéficiez d'une performance et d'une sécurité élevées sur une infrastructure privée et dédiée. Votre environnement est isolé et protégé.

Gagnez du temps et simplifiez votre workflow : votre code peut être opérationnel avec l'hébergement Python cloud de Stackhero en seulement 5 minutes.

Dans votre repository Git, créez un dossier nommé .github/workflows s'il n'existe pas déjà. Ajoutez ensuite un fichier nommé deploy-to-stackhero.yml à l'intérieur.

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

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

on:
  push:
    # Liste des branches qui déclencheront l'action de déploiement lors d'un git push.
    # N'oubliez pas de créer un environnement correspondant au nom de la branche sur GitHub (dans "Settings"/"Environments").
    # Ajoutez ensuite le secret "STACKHERO_SSH_PRIVATE_KEY" et la variable "STACKHERO_ENDPOINT" dans cet environnement.
    branches: [ "production", "staging" ]

jobs:
  Deploy:
    environment: ${{ github.ref_name }}
    runs-on: ubuntu-latest
    steps:
    - uses: stackhero-io/github-actions-deploy-to-stackhero@v1
      with:
        # Le secret "STACKHERO_SSH_PRIVATE_KEY" et la variable "STACKHERO_ENDPOINT" doivent être définis dans l'environnement de branche correspondant sur GitHub dans "Settings"/"Environments".
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

Une fois le fichier workflow ajouté, vous pouvez valider vos modifications :

git add -A .
git commit -m "Ajout de GitHub Actions pour déployer sur Stackhero"

Vous pouvez créer une branche production avec :

git checkout -b production

Et pousser vos modifications sur GitHub :

git push --set-upstream origin production

Cela va pousser votre code sur la branche production sur GitHub et déclencher GitHub Actions, qui déploiera votre code sur votre instance Stackhero.

Pour vérifier le statut de votre déploiement, rendez-vous simplement sur la page de votre projet GitHub et cliquez sur Actions.

GitHub Actions ayant déployé en productionGitHub Actions ayant déployé en production

C'est tout. Vous avez maintenant des déploiements automatiques en production grâce à GitHub Actions.