Node.js: GitHub Actions Workflow konfigurieren

Diese Dokumentation ist Teil des Deployment mit GitHub Actions-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Erfahren Sie, wie Sie Ihren Node.js-Code mit GitHub Actions bereitstellen.

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet Ihnen eine einsatzbereite Node.js Cloud Umgebung, die darauf ausgelegt ist, Ihre Entwicklung zu beschleunigen:

  • Deployment in die Produktion in Sekunden mit einem einfachen git push. Keine zusätzlichen Tools oder manuelle Konfiguration erforderlich.
  • Nutzen Sie Ihre eigene Domain und profitieren Sie von automatischen HTTPS-Zertifikaten, damit Ihre Anwendung ohne zusätzlichen Aufwand sicher bleibt.
  • Automatische Backups, One-Click-Updates und planbare Preise ermöglichen es Ihnen, sich auf die Entwicklung neuer Features zu konzentrieren – Stackhero übernimmt das Infrastrukturmanagement für Sie.
  • Basierend auf privater, dedizierter Infrastruktur für konstante Performance und hohe Sicherheit.

Sparen Sie Zeit und reduzieren Sie Ihren Betriebsaufwand: Ihre Anwendung läuft auf dem Node.js Cloud Hosting von Stackhero in nur wenigen Minuten.

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

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

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

on:
  push:
    # Geben Sie die Branches an, die die Deployment-Action auslösen. Stellen Sie sicher, dass für jeden Branch eine Umgebung in GitHub (unter "Settings" > "Environments") existiert.
    # 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:
        # STACKHERO_SSH_PRIVATE_KEY und STACKHERO_ENDPOINT sollten in der jeweiligen GitHub-Umgebung gesetzt sein.
        ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
        endpoint: ${{ vars.STACKHERO_ENDPOINT }}

Nachdem Sie die Workflow-Datei erstellt haben, können Sie Ihre Änderungen wie folgt committen:

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

Um einen Produktions-Branch zu erstellen, führen Sie aus:

git checkout -b production

Pushen Sie dann Ihre Änderungen zu GitHub:

git push --set-upstream origin production

Mit diesem Push wird Ihr Code in den production-Branch übertragen und GitHub Actions startet das Deployment zu Ihrem Stackhero-Service. Um das Deployment zu überprüfen, öffnen Sie Ihr Projekt auf GitHub und klicken Sie auf Actions.

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

Das war's. Ihr Code ist jetzt für das automatische Deployment in die Produktion via GitHub Actions eingerichtet.