Zum Hauptinhalt springen

Installieren einer Node.js- oder Python-Anwendung über die API

Voraussetzungen

Um eine Node.js- oder Python-Anwendung zu installieren, benötigst Du Folgendes:

  • Die Projekt-ID eines vorhandenen Projekts
  • Die App- und Versions-ID der generischen benutzerdefinierten Node.js- bzw. Python-Anwendung (siehe nächster Abschnitt)

Bestimmen der Anwendungs- und App-Version-ID

Bevor Du eine Node.js- oder Python-Anwendung installierst, musst Du die App-ID und die Versions-ID der generischen benutzerdefinierten Node.js- bzw. Python-Anwendung bestimmen.

Hierzu rufe die GET/v2/apps/-Endpunkt auf und suche die "Node.js"- oder "Python"-Anwendung. Diese sollten die folgenden (stabilen) IDs haben:

  • Node.js: 3e7f920b-a711-4d2f-9871-661e1b41a2f0
  • Python: be57d166-dae9-4480-bae2-da3f3c6f0a2e

Wähle die entsprechende Anwendungs-ID, je nachdem, ob du eine Node.js- oder Python-Anwendung installieren möchtest. Du kannst dann diese ID verwenden, um die empfohlene Version für diese App abzurufen, indem Du den GET/v2/apps/{appId}/versions/-Endpunkt aufrufst. Du kannst die zurückgegebenen Versionen nach der recommended-Eigenschaft filtern.

Beachte, dass die tatsächliche Version weitgehend unerheblich ist, da sie nur auf die Starter-Vorlage verweist, die zur Erstellung der Anwendung verwendet wird. Die tatsächliche Version der Anwendung wird durch Deinen eigenen Code bestimmt.

Installieren der Anwendung

Um Deine Anwendung bereitzustellen, rufe den POST/v2/projects/{projectId}/app-installations/-Endpunkt auf. Die relevanten Felder sind die folgenden:

  • appVersionId sollte die App-Version-ID sein, die Du im vorherigen Schritt abgerufen hast.
  • userInputs sollte ein Array von Objekten sein, die jeweils eine name- und eine value-Eigenschaft enthalten. Im Fall von Node.js ist der einzige zulässige Wert für name der Wert entrypoint. Der dazugehörige value ist der Befehl, der ausgeführt wird, um Deine Anwendung zu starten.
  • updatePolicy sollte im Fall einer von dir selbst verwalteten Anwendung immer auf none gesetzt sein.

Die vollständige HTTP-Anfrage sollte wie folgt aussehen:

POST /v2/projects/{projectId}/app-installations HTTP/1.1
Host: api.mittwald.de
Content-Type: application/json

{
"appVersionId": "97fb8684-3fe3-4720-86fb-fb0524ae88d1",
"description": "Your Node.js app",
"updatePolicy": "none",
"userInputs": [
{
"name": "entrypoint",
"value": "yarn start"
}
]
}

Die Antwort enthält die Installations-ID, die Du anschließend verwenden kannst, um auf Deine Anwendung zuzugreifen.

Um den Installationsstatus zu überwachen, rufe den GET/v2/app-installations/{appInstallationId}/-Endpunkt auf. Beachte das Feld installationPath, das das Verzeichnis in Deinem Projekt-Dateisystem enthält, in das Du Deine Anwendung bereitstellen solltest.