Python: GitHub Actions Workflow konfigurieren

Diese Dokumentation ist Teil des Deployment mit GitHub Actions-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie Sie Ihren Python-Code mit GitHub Actions bereitstellen.

👋 Willkommen bei der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Python-Cloud-Lösung, die zahlreiche Vorteile bietet, darunter:

  • Deployen Sie Ihre Anwendung in Sekundenschnelle mit einem einfachen git push.
  • Verwenden Sie Ihren eigenen Domainnamen und profitieren Sie von der automatischen Konfiguration von HTTPS-Zertifikaten für erhöhte Sicherheit.
  • Genießen Sie beruhigende automatische Backups, Ein-Klick-Updates und eine einfache, transparente und vorhersehbare Preisgestaltung.
  • Erhalten Sie optimale Leistung und robuste Sicherheit dank einer privaten und dedizierten VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Python-Cloud-Hosting-Lösung von Stackhero auszuprobieren!

Erstellen Sie in Ihrem Git-Repository ein Verzeichnis namens .github/workflows, falls es noch nicht existiert. Legen Sie darin eine Datei mit dem Namen deploy-to-stackhero.yml an.

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

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

on:
  push:
    # Liste der Branches, die nach einem git push die Deploy-Action auslösen.
    # Vergessen Sie nicht, eine Umgebung mit dem entsprechenden Branch-Namen in GitHub (unter "Settings"/"Environments") anzulegen.
    # Fügen Sie dann das entsprechende Secret "STACKHERO_SSH_PRIVATE_KEY" und die Variable "STACKHERO_ENDPOINT" in dieser Umgebung hinzu.
    branches: [ "production", "staging" ]

jobs:
  Deploy:
    environment: ${{ github.ref_name }}
    runs-on: ubuntu-latest
    steps:
    - uses: stackhero-io/github-actions-deploy-to-stackhero@v1
      with:
        # Das Secret "STACKHERO_SSH_PRIVATE_KEY" und die Variable "STACKHERO_ENDPOINT" müssen in der entsprechenden Branch-Umgebung auf GitHub unter "Settings"/"Environments" definiert sein.
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

Nachdem Sie die Workflow-Datei hinzugefügt haben, können Sie Ihre Änderungen committen:

git add -A .
git commit -m "GitHub Actions für Deployment zu Stackhero hinzufügen"

Sie können einen Production-Branch mit folgendem Befehl erstellen:

git checkout -b production

Und Ihre Änderungen zu GitHub pushen:

git push --set-upstream origin production

Dadurch wird Ihr Code auf den production-Branch bei GitHub gepusht und GitHub Actions ausgelöst, um Ihren Code auf Ihrer Stackhero-Instanz zu deployen.

Um den Status Ihres Deployments zu prüfen, besuchen Sie einfach die GitHub-Projektseite und klicken Sie auf Actions.

GitHub Actions, die nach Production deployed habenGitHub Actions, die nach Production deployed haben

Das war's. Sie haben jetzt automatische Deployments in Produktion mit GitHub Actions eingerichtet.