HubSpot-CLI-Befehle

Last updated:

Das HubSpot-CLI verknüpft Ihre Tools für die lokale Entwicklung mit HubSpot und ermöglicht Ihnen die Entwicklung in CMS Hub mit Versionskontrolle, Ihrem bevorzugten Text-Editor und verschiedenen Web-Entwicklungstechnologien.

Wenn Sie neu in der HubSpot-Entwicklung sind, lesen Sie unsere Schnellstartanleitung, die Sie durch die Installation des CLI bis hin zur Veröffentlichung einer Live-Seite führt.

Quick start to CMS Hub development

Verwenden Sie diesen Leitfaden als Referenz für die verfügbaren Befehle und Dateiformatoptionen bei den Tools für die lokale Entwicklung von HubSpot. Eine Anleitung zur Verwendung dieser Tools finden Sie im Tutorial „Erste Schritte mit lokaler Entwicklung“

Wenn Sie es vorziehen, können Sie Yarn verwenden, indem Sie Befehle mit dem yarn-Präfix ausführen. Homebrew ist nicht erforderlich, wird aber für eine einfache Installation empfohlen.

Installieren

Sie können die Tools für die lokale Entwicklung von HubSpot entweder global (empfohlen) oder lokal installieren. Um die HubSpot-Tools global zu installieren, führen Sie in Ihrer Befehlszeile den folgenden Befehl aus.  Erfahren Sie mehr über die globale oder lokale Installation von Paketen.

npm install -g @hubspot/cli

Nur in das aktuelle Verzeichnis installieren

Um die Tools stattdessen nur in Ihrem aktuellen Verzeichnis zu installieren, führen Sie den folgenden Befehl aus. Sie müssen nicht lokal installieren, wenn Sie die CLI bereits global installiert haben.

npm install @hubspot/cli

Erhalten Sie einen EACCES-Fehler bei der Installation?
Siehe Beheben von EACCESS-Berechtigungsfehlern bei der globalen Installation von Paketen.

Upgrade

Das CLI wird regelmäßig aktualisiert. Um ein Upgrade auf die neueste Version der lokalen Tools durchzuführen, führen Sie Folgendes aus:

npm install -g @hubspot/cli@latest

Das CLI wurde von @hubspot/cms-cli in @hubspot/cli geändert. Wenn Sie noch das alte CMS-CLI verwenden, müssen Sie es vor der Installation der neuen Version deinstallieren.

Führen Sie Folgendes aus, um anzuzeigen, welche Version Sie verwenden:

hs --version

Wenn Ihre Versionsnummer kleiner als 3.0.0 ist, verwenden Sie die alte Version.

Führen Sie zum Deinstallieren der alten Version Folgendes aus:

npm uninstall -g @hubspot/cms-cli

Allgemeine Befehle

help

Zeigen Sie alle Befehle an.

hs help

Um mehr über einen bestimmten Befehl zu erfahren, geben Sie den Befehl und --help ein.

init

Erstellt Ihre hubspot.config.yml-Datei im aktuellen Verzeichnis und richtet die Authentifizierung für einen Account ein. Wenn Sie die Authentifizierung für einen neuen Account zu einer bestehenden Konfigurationsdatei hinzufügen möchten, führen Sie den auth–Befehl aus. Wenn Sie aufgefordert werden, einen Namen für den Account einzugeben, darf der Name keine Leerzeichen enthalten.

hs init

auth

Generieren Sie mithilfe eines persönlichen CMS-Zugriffsschlüssels die Authentifizierung für einen HubSpot-Account. Sie können Ihren Zugriffsschlüssel hier generieren. Wenn Sie bereits eine hubspot.config.yml-Datei haben, können Sie diesen Befehl verwenden, um Anmeldeinformationen für zusätzliche Accounts hinzuzufügen. Sie könnten zum Beispiel Ihren Sandbox-Account als Entwicklungsumgebung verwenden. Wenn Sie aufgefordert werden, einen Namen für den Account einzugeben, darf der Name keine Leerzeichen enthalten.

hs auth

accounts list

Listet den Namen, die ID und den Authentifizierungstyp für jeden Account in Ihrer Konfigurationsdatei auf. Wenn Sie nicht die Accounts sehen, die Sie erwarten, müssen Sie möglicherweise den auth-Befehl ausführen, um Accounts zu Ihrer Konfigurationsdatei hinzuzufügen.

hs accounts list

accounts use

Legen Sie den Standard-Account in Ihrer Konfigurationsdatei fest.

hs accounts use accountNameOrID
Use this table to describe parameters / fields
ParameterDescription
accountNameOrID

Identifizieren Sie den neuen Standard-Account anhand seines Namens (wie in der Konfigurationsdatei festgelegt) oder der ID

Interaktion mit dem Dateisystem des Entwicklers

Über das CLI können Sie mit dem Entwicklerdateisystem interagieren, das das Dateisystem im Design-Managerist.

list

Listet die im Dateisystem des Entwicklers gespeicherten Dateien nach Pfad oder vom Stammverzeichnis aus auf. Funktioniert ähnlich wie die Verwendung des Standards ls, um das aktuelle Verzeichnis auf Ihrem Computer anzuzeigen.

hs ls [path] hs list [path]
ArgumentDescription
dest
Optional

Pfad zum Verzeichnis des Dateisystems des Remote-Entwicklers, für das Sie Dateien auflisten möchten. Wenn nicht angegeben, wird standardmäßig der Stamm-Account verwendet.

fetch

Rufen Sie eine Datei oder ein Verzeichnis und seine Unterordner und Dateien nach Pfad ab.

Dadurch werden Dateien von Ihrem HubSpot-Account in Ihre lokale Umgebung geholt. Die <src> sollte der Pfad aus Ihren HubSpot-Design-Tools sein. Das <dest> ist das lokale Verzeichnis, in dem Sie diese Dateien hinzufügen möchten.

Als Vorsichtsmaßnahme überschreibt fetching nicht standardmäßig Ihre vorhandenen lokalen Dateien, Sie können --overwrite verwenden, wenn Sie dies wünschen.

hs fetch --account=<name> <src> [dest] hs filemanager fetch --account=<name> <src> [dest]
ArgumentDescription
src
Erforderlich

Pfad in HubSpot-Design-Tools

dest
Optional

Pfad zum lokalen Verzeichnis, in dem die Dateien abgelegt werden sollen, relativ zu Ihrem aktuellen Arbeitsverzeichnis. Wenn Sie dieses Argument weglassen, wird Ihr aktuelles Arbeitsverzeichnis als Standard verwendet.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen, von der oder dem abgerufen werden soll

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

--overwrite

Überschreiben Sie vorhandene Dateien mit abgerufenen Dateien.

--mode

Geben Sie an, ob ein Entwurf oder eine veröffentlichte Version einer Datei von HubSpot abgerufen werden soll. Weitere Informationen dazu erhalten Sie hier

upload

Laden Sie ein neues lokales Element in Ihren HubSpot-Account hoch. Änderungen, die mit diesem Befehl hochgeladen werden, sind sofort aktiv. 

hs upload --account=<name> <src> <dest> hs filemanager upload --account=<name> <src> <dest>
ArgumentDescription
src
Erforderlich

Pfad zur lokalen Datei, relativ zu Ihrem aktuellen Arbeitsverzeichnis.

dest
Erforderlich

Pfad in HubSpot-Design-Tools, kann ein neuer Pfad sein.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen ein, von der oder dem abgerufen werden soll

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

--mode

Geben Sie an, ob hochgeladene Dateien in HubSpot veröffentlicht werden. Siehe „Modi“ für weitere Informationen.

UnterbefehleDescription
filemanager

Lädt das angegebene src-Verzeichnis in den Date-Manager und nicht in das Dateisystem des Entwicklers im Design-Manager hoch.

Hinweis: Hochgeladene Dateien werden auf öffentlich gesetzt, sodass sie von jedem mit der URL angezeigt werden können. Weitere Einzelheiten zu den Einstellungen für die Dateisichtbarkeit finden Sie in unserer Hilfedokumentation.

watch

Überwachen Sie Ihr lokales Verzeichnis und laden Sie Änderungen automatisch in Ihren HubSpot-Account hoch, wenn die Datei gespeichert wird. Alle Änderungen, die Sie beim Speichern vornehmen, werden sofort übernommen.

Beachten Sie bei der Verwendung von watch Folgendes:

  • Wenn Sie überwachte Dateien lokal löschen, werden sie nicht automatisch aus HubSpot gelöscht. Um Dateien zu löschen, verwenden Sie --remove.
  • Wenn Sie einen Ordner lokal umbenennen, wird ein neuer Ordner mit dem neuen Namen zu HubSpot hochgeladen. Der bestehende Ordner in HubSpot wird nicht automatisch gelöscht. Um den Ordner zu löschen, verwenden Sie --remove.

In der Vergangenheit wurde mit dem watch-Befehl das aktuelle Verzeichnis sofort hochgeladen und dann auf Änderungen überwacht. Dies wurde in v2.0 geändert in einfach überwachen.

hs watch --account=<name> <src> <dest>
ArgumentDescription
src
Erforderlich

Pfad zu dem lokalen Verzeichnis, in dem sich Ihre Dateien befinden, relativ zu Ihrem aktuellen Arbeitsverzeichnis

dest
Erforderlich

Pfad in HubSpot-Design-Tools, kann ein neuer Pfad sein.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen ein, von der oder dem abgerufen werden soll

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

--mode

Legen Sie fest, ob hochgeladene Dateien in HubSpot veröffentlicht oder als Entwürfe gespeichert werden sollen. Erfahren Sie mehr über die Verwendung von Modi.

--initial-upload

Bewirkt, dass ein erster Upload erfolgt, bevor eine Datei gespeichert wurde. Unterstützt einen Alias von -i

--remove

Veranlasst watch, Dateien in Ihrem HubSpot-Account zu löschen, die lokal nicht gefunden werden.

--notify=<path/to/file>

Protokollierung in angegebener Datei, wenn eine Überwachungsaufgabe ausgelöst wird und nachdem Worker inaktiv geworden sind.

move

Dieser Befehl befindet sich derzeit im Beta-Stadium. Lassen Sie uns wissen, wenn Sie Feedback über unser Entwickler-Slack oder über ein Problem im GitHub für das CLI haben.

Verschiebt Dateien innerhalb des Entwickler-Dateisystems von einem Verzeichnis in ein anderes. Lokal gespeicherte Dateien sind davon nicht betroffen.

hs mv --account=<name> <src> <dest>
ArgumentDescription
src
Erforderlich

Pfad zum Verzeichnis des Dateisystems des Remote-Entwicklers, in dem sich Ihre Dateien befinden.

dest
Erforderlich

Pfad zum Verschieben von Elementen im Dateisystem des Entwicklers.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen an, in dem Dateien verschoben werden sollen.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

create

Erstellt die Ordner-/Dateistruktur eines neuen Elements.

hs create <type> <name> [dest]
ArgumentDescription
type
Erforderlich

Typ des Elements. Unterstützte Typen:

name
Erforderlich

Der Name des neuen Elements

dest
Optional

Der Zielordner für das neue Element, relativ zu Ihrem aktuellen Arbeitsverzeichnis. Wenn Sie dies weglassen, wird Ihr aktuelles Arbeitsverzeichnis als Standard verwendet.

remove

Löscht Dateien oder Ordner und deren Dateien aus Ihrem HubSpot-Account. Dadurch werden die lokal gespeicherten Dateien und Ordner nicht gelöscht. Dieser Befehl hat einen Alias von rm.

hs remove --account=<name> <path>
ArgumentDescription
path
Erforderlich

Pfad in HubSpot-Design-Tools

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen an, um eine Datei davon zu entfernen.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

HubDB-Befehle

Die HubDB-Befehle befinden sich derzeit in der Entwicklervorschau. Sie sind jetzt verfügbar, können sich aber noch ändern.  Für Entwicklervorschauen gelten unsere Bedingungen zum Testen von Beta-Versionen für Entwickler.

Mit diesen Befehlen können Sie alle Zeilen einer HubDB-Tabelle erstellen, löschen, abrufen und löschen. Der HubSpot-Account muss Zugriff auf HubDB haben, um diese Befehle verwenden zu können.

HubDB-Tabelle erstellen

Erstellen Sie eine neue HubDB-Tabelle im HubSpot-Account. 

hs hubdb create <src>
ArgumentDescription
src
Erforderlich

Die lokale JSON-Datei, die für die Erstellung der HubDB-Tabelle verwendet werden soll.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen an, unter dem HubDB erstellt werden soll.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

HubDB-Tabelle abrufen

Laden Sie die Daten einer HubDB-Tabelle auf Ihren Computer herunter.

hs hubdb fetch <tableId> <dest>
ArgumentDescription
tableId
Erforderlich

HubDB-Tabellen-ID im HubDB-Dashboard gefunden.

dest

Das lokale Pfadziel zum Speichern der hubdb.json-Datei.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen ein, von der oder dem HubDB abgerufen werden soll.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

Zeilen in einer HubDB-Tabelle löschen

Löschen Sie alle Zeilen in einer HubDB-Tabelle.

hs hubdb clear <tableId>
ArgumentDescription
tableId
Erforderlich

HubDB-Tabellen-ID im HubDB-Dashboard gefunden.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen an, von der oder dem HubDB-Zeilen gelöscht werden sollen.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

HubDB-Tabelle löschen

Löschen Sie die angegebene HubDB-Tabelle aus dem Account.

hs hubdb delete <tableId>
ArgumentDescription
tableId
Erforderlich

HubDB-Tabellen-ID im HubDB-Dashboard gefunden.

OptionenDescription
--account

Geben Sie eine accountId oder einen Namen ein, von der oder dem HubDB gelöscht werden soll.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

HubDB-Tabellen-JSON

Wenn Sie eine HubDB abrufen, werden die Daten als tablename.hubdb.json gespeichert. Wenn Sie eine neue Tabelle erstellen, müssen Sie eine JSON-Quelldatei angeben. Nachstehend finden Sie ein Beispiel für eine Tabelle im JSON-Format.

// store_locations.hubdb.json { "name": "store_locations", "useForPages": true, "label": "Store locations", "allowChildTables": false, "allowPublicApiAccess": true, "dynamicMetaTags": { "DESCRIPTION": 3, "FEATURED_IMAGE_URL": 7 }, "enableChildTablePages": false, "columns": [ { "name": "name", "label": "Name", "type": "TEXT" }, { "name": "physical_location", "label": "Physical Location", "type": "LOCATION" }, { "name": "street_address", "label": "Street address", "type": "TEXT" }, { "name": "city", "label": "City", "type": "TEXT" }, { "name": "state", "label": "State", "options": [ { "id": 1, "name": "Wisconsin", "type": "option", "order": null }, { "id": 2, "name": "Minnesota", "type": "option", "order": null }, { "id": 3, "name": "Maine", "type": "option", "order": null }, { "id": 4, "name": "New York", "type": "option", "order": null }, { "id": 5, "name": "Massachusetts ", "type": "option", "order": null }, { "id": 6, "name": "Mississippi", "type": "option", "order": null }, { "id": 7, "name": "Arkansas", "type": "option", "order": null }, { "id": 8, "name": "Texas", "type": "option", "order": null }, { "id": 9, "name": "Florida", "type": "option", "order": null }, { "id": 10, "name": "South Dakota", "type": "option", "order": null }, { "id": 11, "name": "North Dakota", "type": "option", "order": null }, { "id": 12, "name": "n/a", "type": "option", "order": null } ], "type": "SELECT", "optionCount": 12 }, { "name": "phone_number", "label": "Phone Number", "type": "TEXT" }, { "name": "photo", "label": "Store Photo", "type": "IMAGE" } ], "rows": [ { "path": "super_store", "name": "Super Store", "isSoftEditable": false, "values": { "name": "Super Store", "physical_location": { "lat": 43.01667, "long": -88.00608, "type": "location" }, "street_address": "1400 75th Greenfield Ave", "city": "West Allis", "state": { "id": 1, "name": "Wisconsin", "type": "option", "order": 0 }, "phone_number": "(123) 456-7890" } }, { "path": "store_123", "name": "Store #123", "isSoftEditable": false, "values": { "name": "Store #123", "physical_location": { "lat": 32.094803, "long": -166.85889, "type": "location" }, "street_address": "Pacific Ocean", "city": "at sea", "state": { "id": 12, "name": "n/a", "type": "option", "order": 11 }, "phone_number": "(123) 456-7891" } } ] }

Befehle für serverlose Funktionen

Verwenden Sie diese Befehle, um serverlose Funktionen zu erstellen und zu debuggen (nur CMS Hub Enterprise).

list functions

Druckt eine Liste aller Funktionen des Accounts, ihrer Endpunkte, Methoden, der Namen der von ihnen verwendeten Geheimnisse und des Datums der letzten Aktualisierung.

hs functions ls --account=<name> hs functions list --account=<name>
ArgumentDescription
--account

Der HubSpot-Account-Name aus Ihrer hubspot.config. Dieser Parameter ist erforderlich, wenn Sie nicht über einen defaultAccount in Ihrer hubspot.config verfügen.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

--compact

Zeigt nur Endpunktnamen und Methoden an.

--json

Ausgabe von JSON in die Befehlszeile mit Daten zu allen Funktionen. Die JSON-Daten umfassen Portal-ID, Funktions-ID, Route, Rohelementpfad, Methode, Geheimnisse, Erstellungsdatum und Datum der letzten Änderung.

logs

Druckt ein Protokoll von Ihrer serverlosen Funktion. Zeigt alle in Ihrer Funktion enthaltenen console.logs nach der Ausführung an. Die Protokolle enthalten auch die Ausführungszeit. Die Protokolle werden 90 Tage lang aufbewahrt. 

hs logs <endpoint-name> --account=<name> --follow
ArgumentDescription
endpoint-name
Erforderlich

Der Endpunktname, wie er in Ihrer serverless.json-Datei definiert ist. Es handelt sich nicht um den Pfad zu Ihrer Funktionsdatei.

OptionenDescription
--file

Ausgabe der Protokolle in function.log

--follow

Verfolgen Sie die Protokolle, um ein Live-Update zu erhalten, während Sie Ihre serverlosen Funktionen ausführen.

--latest

Ausgabe nur des aktuellsten Protokolls

--account

Der HubSpot-Account-Name aus Ihrer hubspot.config. Dieser Parameter ist erforderlich, wenn Sie kein defaultPortal in Ihrer hubspot.config haben.

Unterstützt einen Alias von --portal für die Abwärtskompatibilität mit älteren Versionen des CLI.

--compact

Blendet Protokollausgaben/-informationen aus. Gibt Erfolgs-/Fehlermeldung und Ausführungszeit zurück.

--limit=<number>

Begrenzen Sie die Menge der in der Ausgabe angezeigten Protokolle.

Wenn Sie diesen Fehler erhalten: Es ist ein Server-Fehler aufgetreten. WARNUNG: Die Protokolle für diese Funktion haben das Limit von 4 KB überschritten, ist Ihr Protokoll zu groß. Dies kann durch den Versuch verursacht werden, ein sehr großes Objekt über die Konsole zu protokollieren, oder durch viele separate Konsolenprotokolle. Um dieses Problem zu beheben, reduzieren Sie die Menge, die Sie zu protokollieren versuchen, treffen Sie Ihren Endpunkt und führen Sie den Befehl erneut aus.

add secret

Fügen Sie Ihrem Account ein Geheimnis hinzu, das in serverlosen Funktionen verwendet werden kann. Nachdem Sie den Befehl ausgeführt haben, werden Sie aufgefordert, den Wert des Geheimnisses einzugeben.

Um das Geheimnis für Ihre Funktion freizugeben, aktualisieren Sie Ihre serverless.json-Datei mit dem Namen des Geheimnisses, entweder für die spezifischen Endpunkte, in denen Sie es verwenden möchten, oder global, um es für alle verfügbar zu machen.

hs secrets add <secret-name>
ArgumentDescription
secret-name
Erforderlich

Name des Geheimnisses.

secret-value
Erforderlich

Der Wert des Geheimnisses (Authentifizierungsdetail oder anderweitig).

update secret

Aktualisieren Sie den Wert eines Geheimnisses in Ihrem Account, das in serverlosen Funktionen verwendet werden kann. Sie werden dann aufgefordert, den Wert des Geheimnisses einzugeben.

hs secrets update <secret-name>
ArgumentDescription
secret-name
Erforderlich

Name des Geheimnisses.

secret-value
Erforderlich

Der Wert des Geheimnisses (Authentifizierungsdetail oder anderweitig).

remove secret

Entfernen Sie ein Geheimnis aus Ihrem Account, sodass es nicht mehr für serverlose Funktionen verwendet werden kann. Nachdem Sie diesen Befehl ausgeführt haben, bearbeiten Sie Ihre serverless.json-Datei, um den Namen des Geheimnisses zu entfernen.

hs secrets delete <secret-name>
ArgumentDescription
secret-name
Erforderlich

Name des Geheimnisses, das Sie entfernen möchten.

list secrets

Listen Sie die Geheimnisse in Ihrem Account auf, um zu erfahren, was Sie bereits gespeichert haben, indem Sie den add secrets-Befehl verwenden.

hs secrets list

Browser-Shortcuts öffnen

Es gibt so viele Teile der HubSpot-App, auf die Entwickler häufig zugreifen müssen. Um den Zugriff auf diese Tools zu erleichtern, können Sie sie direkt über die Befehlszeile öffnen. Das Argument defaultAccount oder --account wird verwendet, um das zugehörige Tool für diesen Account zu öffnen.

open

hs open <shortcut-name or alias>
ArgumentDescription
shortcut
Erforderlich

Geben Sie den vollständigen Shortcut-Namen oder den Alias des Shortcuts an, den Sie in Ihrem Browser öffnen möchten.

hs open --list
ArgumentDescription
--list
Erforderlich

Listet alle Shortcuts, ihre Aliasnamen und Ziele auf.

Befehlsabschluss

Wenn Sie das CLI häufig verwenden, kann es nützlich sein, Befehle mit der Tabulatortaste automatisch vervollständigen zu können.

hs completion >> ~/.bashrc

Für Mac OS X

hs completion >> ~/.bash_profile

Lokales Vorlagenformat

Um mehr über Annotationen des lokalen Vorlagenformats zu erfahren, lesen Sie die Dokumentation zu den Vorlagen und sehen Sie sich die Vorlagen in der CMS Theme Boilerplate an. 

Lokales Modulformat

Lokale Module sind in einer Reihe von Dateien formatiert, die jeweils verschiedene Komponenten eines Moduls spezifizieren. Um mehr über die lokale Entwicklung von Modulen zu erfahren, lesen Sie die Referenz für lokale Modulentwicklung.

.hsignore

Sie können eine .hsignore-Datei in Ihr Projekt aufnehmen, um Dateien anzugeben, die bei der Verwendung des CLI nicht nachverfolgt werden sollen. Diese Datei funktioniert ähnlich wie die .gitignore-Dateien.  Dateien, die den Mustern entsprechen, die in der .hsignore-Datei angegeben sind, werden nicht zu HubSpot hochgeladen, wenn Sie die upload- oder watch-Befehle verwenden.

Standardmäßig gibt es einige Regeln, die HubSpot automatisch durchsetzt. Es gibt keine Möglichkeit, diese Standardeinstellungen zu überschreiben.

Die folgenden Angaben werden immer ignoriert:

  • hubspot.config.yml/hubspot.config.yaml
  • node_modules – Abhängigkeiten
  • .* – ausgeblendete Dateien/Ordner
  • *.log – NPM-Fehlerprotokoll
  • *.swp – Auslagerungsdatei für Vim-Status
  • Icon\\r – Benutzerdefiniertes Mac OS Finder-Symbol
  • __MACOSX – Mac-Ressourcen-Gabel
  • ~ – Linux-Backup-Datei
  • Thumbs.db – Cache für Windows-Bilddateien
  • ehthumbs.db – Windows-Ordner-Konfigurationsdatei
  • Desktop.ini – Informationen zu benutzerdefinierten Ordnerattributen von Windows
  • @eaDir – „Ausgeblendeter“ Ordner von Windows Synology Diskstation, in dem der Server Thumbnails speichert.
Shell script
# ignore all files within a specific directory
/ignore/ignored
# ignore a specific file
/ignore/ignore.md
# ignore all .txt files
*.txt
# ignore all log files - useful if you commonly output serverless function logs as files.
*.log

Modi

Mit der Option --mode können Sie festlegen, ob lokale Änderungen beim Hochladen in HubSpot veröffentlicht werden. Diese Option kann in jedem Befehl verwendet oder als Standard in Ihrer hubspot.config.yml-Datei festgelegt werden.

Die beiden Optionen für --mode sind --mode=draft und --mode=publish.

Nachfolgend ist die Rangfolge für das Festlegen von --mode aufgeführt:

  1. Die Verwendung von --mode in einem Befehl setzt alle anderen Einstellungen außer Kraft.
  2. Wenn Sie in Ihrer hubspot.config.yml-Datei für jeden Account einen defaultMode festlegen, müssen Sie nicht mehr --mode in jedem Befehl verwenden. Damit wird die Einstellung der obersten Ebene außer Kraft gesetzt.
  3. Wenn Sie in Ihrer hubspot.config.yml-Datei einen defaultMode auf oberster Ebene festlegen, müssen Sie nicht mehr --mode in jedem Befehl verwenden. Damit wird das Standardverhalten außer Kraft gesetzt.
  4. Das Standardverhalten für --mode ist publish.

Authentifizierung

Die hubspot.config.yml-Datei enthält die Anmeldeinformationen für Ihre HubSpot-Accounts. Siehe Erste Schritte mit lokaler Entwicklung für den Einstieg oder führen Sie den auth-Befehl aus, um eine vorhandene Konfigurationsdatei zu aktualisieren.

Wenn Sie hs init ausgeführt haben, während Sie Version v1.0.10 (veröffentlicht am 10. März 2020) bis v1.0.11 des CLI verwenden, befindet sich Ihre Konfigurationsdatei unter /Users//hubspot<username>.config.yml.

Wir sind wieder dazu übergegangen, die Konfigurationsdatei in dem Ordner abzulegen, in dem Sie den Befehl ausgeführt haben, damit es offensichtlich ist, wo sich die Datei befindet. Sie müssen Ihre Konfigurationsdatei nicht verschieben, sie funktioniert auch weiterhin. Wenn Sie Ihre Datei lieber zusammen mit Ihren Projektdateien aufbewahren möchten, können Sie die Datei aus diesem Verzeichnis in Ihren Projektordner verschieben. Übertragen Sie diese Datei nicht in die Versionskontrolle, da sie Ihre Anmeldedaten enthält.

Wenn Sie den Befehl mit einer anderen Version des CMS-CLI ausgeführt haben, wird Ihre Konfigurationsdatei in dem Ordner abgelegt, in dem Sie den Befehl ausgeführt haben.

defaultPortal: DEV portals: # Sample apikey entry, manually entered - name: DEV portalId: 123 defaultMode: 'publish' authType: apikey apiKey: xxxxxx-xxxxx-xxxxx-xxxxx-xxxxx # Sample personal access key entry, generated from running hs auth personalaccesskey or hs init - name: PROD portalId: 456 authType: personalaccesskey personalAccessKey: >- xxxxx-xxxxxx-xxxxxxx-xxxxxx-xxxxx-xxxxxxx-xxxxxxxx auth: tokenInfo: accessToken: >- xxxxx-xxxxxx-xxxxxxx-xxxxxx-xxxxx-xxxxxxx-xxxxxxxx expiresAt: '2020-01-01T00:00:00.000Z'

Konfigurationsparameter der obersten Ebene

NameDescription
defaultPortal
optional

Ersetzt die Notwendigkeit der Ausführung von Befehlen mit --account=, um anzugeben, mit welchem Account Sie interagieren. Wenn --account= bei der Ausführung eines Befehls nicht angegeben wird, wird das defaultPortal verwendet.

defaultMode
optional

Welcher Modus für einen Account verwendet werden soll, „Entwurf“ oder „Veröffentlichen“. 

allowUsageTracking
optional

Gibt an, ob HubSpot die Berechtigung hat, die Nutzung der Tools für die lokale Entwicklung nachzuverfolgen. Die Standardeinstellung ist true. Legen Sie false fest, um sämtliches Tracking zu deaktivieren.

Account-Konfigurationsparameter

NameDescription
portalId
erforderlich

Die Account-ID des Accounts, für den Sie die Authentifizierung einrichten möchten.

authType
erforderlich

Welche Form der Authentifizierung ein bestimmter Eintrag verwendet; personalaccesskey oder apikey. HINWEIS: Sie müssen zusätzlich einen Konfigurationsparameter für den Wert Ihrer Authentifizierungsmethoden festlegen. In der obigen Beispielkonfigurationsdatei wird beschrieben, wie Sie zusätzlich zur Angabe des authType Ihren personalAccessKey oder apiKey festlegen.

name
optional

Ein Mittel zur Angabe eines Account-Namens, der verwendet werden kann, um zu kennzeichnen, mit welchem Account ein Befehl interagieren soll. Beispiel: --account=123 und --account=DEV interagieren beide mit der Account-ID 123, basierend auf dem obigen Beispiel. Dieser Name darf keine Leerzeichen enthalten.

defaultMode
optional

Welcher Modus für einen Account verwendet werden soll, „Entwurf“ oder „Veröffentlichen“. 

Environment variables

Das HubSpot-CLI unterstützt die Verwendung von Umgebungsvariablen, was besonders bei der Erstellung von Automatisierungen wie einer GitHub-Aktion nützlich sein kann.

Führen Sie einen beliebigen Befehl mithilfe des --use-env-Flags aus, um die Umgebungsvariablen anstelle der hubspot.config.yml zu verwenden.

hs upload example-project example-project-remote --use-env
NameDescription
HUBSPOT_PORTAL_ID
Erforderlich

Die HubSpot-Account-ID.

HUBSPOT_PERSONAL_ACCESS_KEY
Empfohlen

Der persönliche Zugriffsschlüssel eines Benutzers im HubSpot-Account. Alle vorgenommenen Aktualisierungen werden mit diesem Benutzer verknüpft.

HUBSPOT_API_KEY

Der HubSpot-API-Schlüssel, der mit dem HubSpot-Account verknüpft ist.

HUBSPOT_CLIENT_ID

Die OAuth-Client-ID.

HUBSPOT_CLIENT_SECRET

Das OAuth-Geheimnis.

Bitte beachten: Ab dem 30. November 2022 können HubSpot-API-Schlüssel nicht mehr als Authentifizierungsmethode für den Zugriff auf HubSpot-APIs verwendet werden. Darüber hinaus können ab dem 15. Juli 2022 Accounts ohne bereits generierten HubSpot-API-Schlüssel keinen API-Schlüssel mehr erstellen.

Stattdessen müssen Sie das Zugriffstoken einer privaten App oder OAuth verwenden, um API-Aufrufe zu authentifizieren. Erfahren Sie mehr über diese Änderung und wie Sie eine API-Schlüssel-Integration migrieren, um stattdessen eine private App zu verwenden.

Validierung von Marketplace-Vorlagen

 Das CLI bietet eine Reihe von automatisierten Tests, die Sie für Ihre Elemente durchführen können, um sie vor dem Einreichen mit den Anforderungen des Marketplace in Einklang zu bringen. Das Bestehen aller automatisierten Tests bedeutet nicht, dass Sie den Überprüfungsprozess mit Sicherheit bestehen werden. Es werden weitere Überprüfungen durchgeführt, um eine Qualität zu gewährleisten, die über das hinausgeht, was leicht automatisiert werden kann.

Design validieren

Mit dem Befehl zur Designvalidierung können Sie schnell automatisierte Tests für Ihr Design durchführen, um Probleme zu identifizieren, die vor der Einreichung auf dem Marketplace für Vorlagen behoben werden müssen. Diese werden in Ihrem CLI als eine Liste von [Fehler]- und [Erfolgs]-Meldungen zurückgegeben, die in Gruppen unterteilt sind, welche die Typen von Elements innerhalb eines Designs darstellen.

hs theme marketplace-validate <src>
ArgumentDescription
src
Erforderlich

Pfad zum lokalen Designordner, relativ zu Ihrem aktuellen Arbeitsverzeichnis.


War dieser Artikel hilfreich?
Dieses Formular dient dazu, Feedback zu unserer Entwicklerdokumentation zu sammeln. Wenn Sie uns Ihre Meinung zu HubSpot-Produkten mitteilen möchten, teilen Sie diese bitte im Ideenforum der Community.