HubSpot CLIコマンド

Last updated:

HubSpot CLIによって、ローカル開発ツールをHubSpotに接続し、HubSpot CMSでの開発時にバージョン管理、テキストエディターなどのさまざまなウェブ開発テクノロジーを利用することが可能です。

HubSpotでの開発をこれから始める場合は、クイック スタート ガイドで、CLIのインストール方法からページの公開方法までの手順をご確認ください。

Quick start to CMS Hub development

このガイドは、HubSpotのローカル開発ツールで使用できるコマンドとファイル形式のオプションのリファレンスとしてご利用ください。ツールの使い方の概要については、ローカル開発のチュートリアルを参照してください。 

必要に応じてyarnから始まるコマンドを実行して、Yarnを使用できます。必須ではありませんがHomebrowがあれば、インストールが簡単になります。

全てのコマンドを表示する

全てのコマンドとそれぞれの定義を表示します。特定のコマンドの詳細を確認するには、そのコマンドの末尾に--helpを追加します。

hs help

CLIをインストールする

HubSpotのローカル開発ツールは、グローバル(推奨)またはローカルにインストールできます。HubSpotツールをグローバルにインストールするには、コマンドラインで以下のコマンドを実行します。ローカルにインストールするには、コマンドから-gを省略します。

npm install -g @hubspot/cli

現在のディレクトリーにのみインストール

ツールを現在のディレクトリーにのみインストールするには、以下のコマンドを実行します。CLIがすでにグローバルにインストールされている場合、ローカルにインストールする必要はありません。

npm install @hubspot/cli

インストール時にEACCESエラーが発生した場合
パッケージをグローバルにインストールする際のNPM Resolving EACCESアクセス許可エラー(英語)を参照してください。

CLIを更新する

CLIは定期的に更新されます。最新バージョンのローカルツールにアップグレードするには、次のコマンドを実行します。

npm install -g @hubspot/cli@latest

CLIは@hubspot/cms-cliから@hubspot/cliに変更されました。古いcms-cliを使用している場合は、アンインストールしてから新しいバージョンをインストールする必要があります。

ご使用のバージョンを確認するには、hs --versionを実行します。

バージョン番号が3.0.0未満の場合は、古いバージョンです。

古いバージョンをアンインストールするには、npm uninstall -g @hubspot/cms-cliを実行します。

認証

以降に記載するコマンドを使用すると、CLIでHubSpotアカウントを認証して、アカウントを利用できるようになります。CLIでのアカウント認証がまだ済んでいない場合は、まず、hs initを実行してhubspot.config.ymlファイルを作成します。このファイルに、接続されている全てのHubSpotアカウントの詳細が含まれます。以下のコマンドは、このファイルを操作するものです。

詳しくは、ローカル開発を開始するためのガイドをご覧ください。

init

現在のディレクトリー内にhubspot.config.ymlファイルを作成し、アカウントの認証を設定します。新しいアカウントの認証を既存の設定ファイルに追加するには、authコマンドを実行します。アカウントに使用する名前の入力が求められた際、この名前にスペースを含めることはできません。

hs init

アカウントを認証する

パーソナル アクセス キーを使用して、HubSpotアカウントに対する認証を生成します。こちらでアクセスキーを生成することができます。既存のhubspot.config.ymlファイルがある場合は、このコマンドを使用して他のアカウントの資格情報を追加できます。例えば、サンドボックスアカウントを開発環境として使用できます。アカウントに使用する名前の入力が求められた際、この名前にスペースを含めることはできません。

hs auth

認証されたアカウントを一覧表示する

設定ファイル内の各アカウントの名前、ID、認証タイプを表示します。期待したアカウントが表示されない場合、authコマンドを実行してアカウントを設定ファイルに追加する必要があります。

hs accounts list

既定のアカウントを設定する

設定ファイル内に既定のアカウントを指定します。

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

新しい既定のアカウントをその名前(設定ファイルに設定されている名前)またはIDで識別します。

アカウントを削除する

設定ファイルからアカウントを削除します。

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

削除するアカウントをその名前(設定ファイルに設定されている名前)またはIDで識別します。

無効なアカウントを削除する

無効化されたHubSpotアカウントを設定ファイルから削除します。

hs accounts clean

デベロッパー ファイル システムとの連携

CLIを使用すると、デベロッパー ファイル システムデザインマネージャーのファイルシステム)とやり取りできます。以降に記載するコマンドを使用すると、ローカルで新しいアセット(モジュール、テーマなど)を作成してアカウントにアップロードしたり、HubSpotアカウント内のファイルを一覧表示したりできます。また、既存のファイルをローカル環境にダウンロードすることもできます。

ファイルを一覧表示する

デベロッパー ファイル システムに保存されているファイルの一覧を、パスに基づいて、またはルートから表示します。コンピューターの現在のディレクトリーを表示する標準のlsと同じように使用できます。

hs ls [path] hs list [path]
引数Description
dest
任意

ファイルの一覧を表示する、リモートのデベロッパー ファイル システム上のディレクトリーを示すパス。省略した場合、既定でアカウントのルートが使用されます。

ファイルをフェッチする

ファイル、またはディレクトリーとその子フォルダーおよびファイルを、パスに基づいてフェッチします。これにより、HubSpotアカウント内のファイルがローカル環境にコピーされます。

既定では、fetchコマンドによって既存のローカルファイルが上書きされることはありません。ローカルファイルを上書きするには、--overwriteフラグを追加します。

hs fetch --account=<name> <src> [dest] hs filemanager fetch --account=<name> <src> [dest]
引数Description
src
必須

HubSpotデザインツールのパス

dest
任意

ファイルを配置するローカルディレクトリーのパス(現在の作業ディレクトリーを基準にした相対パス)。この引数は、省略すると既定で現在の作業ディレクトリーになります。

オプションDescription
--account

取得元のaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

--overwrite

取得したファイルで既存のファイルを上書きします。

--mode

HubSpotからファイルの下書きバージョンと公開バージョンのいずれを取得するかを指定します。詳細はこちらを参照してください。

ファイルをアップロードする

新規ローカルアセットをHubSpotアカウントにアップロードします。このコマンドによってアップロードした変更は、即座に公開されます。 

hs upload --account=<name> <src> <dest> hs filemanager upload --account=<name> <src> <dest>
引数Description
src
必須

ローカルファイルのパス(現在の作業ディレクトリーを基準にした相対パス)。

dest
必須

HubSpotデザインツールのパス。新規のパスも指定できます。

オプションDescription
--account

取得元のaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

--mode

アップロードされたファイルをHubSpotで公開するかどうかを指定します。詳細はモードを参照してください。

--clean

アップロード前に宛先ディレクトリーとその内容を削除するオプションのフラグ。

サブコマンドDescription
filemanager

指定したsrcディレクトリーをファイルマネージャーにアップロードします(デザインマネージャー上のデベロッパー ファイル システムではなく)。

:アップロードされたファイルは「公開」に設定され、URL経由で誰でも表示できるようになります。ファイルの表示に関する設定の詳細は、ヘルプドキュメントを参照してください。

自動アップロード用のwatchを設定する

ローカルディレクトリーを監視し、ディレクトリーでの変更の保存時にその変更内容を自動的にHubSpotアカウントにアップロードします。保存時に行った変更は即座に公開されます。

watchを使用する場合は、次の点に留意してください。

  • 監視対象のファイルをローカル側で削除しても、HubSpotからは自動的に削除されません。ファイルを削除するには、--removeを使用します。
  • ローカル側でフォルダーの名前を変更すると、新しいフォルダーが新しい名前でHubSpotにアップロードされます。HubSpot上にある既存のフォルダーは自動的には削除されません。フォルダーを削除するには、--removeを使用します。
hs watch --account=<name> <src> <dest>
引数Description
src
必須

ファイルが含まれているローカルディレクトリーのパス(現在の作業ディレクトリーを基準にした相対パス)。

dest
必須

HubSpotデザインツールのパス。新規のパスも指定できます。

オプションDescription
--account

取得元のaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

--mode

アップロードされたファイルをHubSpotで公開するか下書きとして保存するかを指定します。モードの使用についての詳細をご確認ください

--initial-upload

ファイル保存が発生する前に初回のアップロードを実行します。-iのエイリアスがサポートされます。

--remove

ローカル環境にないファイルがHubSpotアカウント上にある場合に削除を実行します。

--notify=<path/to/file>

watchが起動され、作業がアイドル状態になると、指定されたファイルにログを記録します。

ファイルを移動する

デベロッパー ファイル システム内のファイルを特定のディレクトリーから別のディレクトリーに移動します。ローカル環境に保存しているファイルへの影響はありません。

hs mv --account=<name> <src> <dest>
引数Description
src
必須

ファイルが含まれているリモートのデベロッパー ファイル システム上のディレクトリーへのパス。

dest
必須

デベロッパー ファイル システム内の移動先パス。

オプションDescription
--account

ファイル移動先となるaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

新規ファイルを作成する

新規アセットのフォルダー/ファイルを作成します。

hs create <type> <name> [dest]
引数Description
type
必須

アセットのタイプ。サポートされるタイプは次のとおりです。

name
必須

新しいアセットの名前

dest
任意

新規アセットの宛先フォルダー(現在の作業ディレクトリーを基準にした相対パス)。省略すると、既定で現在の作業ディレクトリーになります。

ファイルを削除する

HubSpotアカウントからファイル、またはフォルダーとそこに格納されているファイルを削除します。ローカル環境に保存されているファイルとフォルダーは削除されません。このコマンドにはrmというエイリアスがあります。

hs remove --account=<name> <path>
引数Description
path
必須

HubSpotデザインツールのパス

オプションDescription
--account

ファイルを削除するaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

ファイルを無視する

.hsignoreファイルを組み込むと、このファイル内でCLIの使用時に追跡対象から除外するファイルを指定できます。このファイルは.gitignoreファイルと同様に機能します。.hsignoreファイル内で指定されたパターンに一致するファイルは、uploadコマンドまたはwatchコマンドを実行してもHubSpotにアップロードされません。

既定でHubSpotによって自動適用されるルールがあります。この既定を上書きする方法はありません。

以下は常に無視されます。

  • hubspot.config.yml/hubspot.config.yaml
  • node_modules - 依存関係
  • .* - 非表示のファイル/フォルダー
  • *.log - NPMエラーログ
  • *.swp - vim状態のスワップファイル
  • Icon\\r - Mac OSのカスタムFinderアイコン
  • __MACOSX - Macリソースフォーク
  • ~ Linuxバックアップファイル
  • Thumbs.db - Windows画像ファイルキャッシュ
  • ehthumbs.db - Windowsフォルダー設定ファイル
  • Desktop.ini - Windowsカスタムフォルダー属性情報
  • @eaDir - サーバーによってサムネイルが保存されるWindows Synology DiskStationの「非表示」フォルダー
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

テーマをローカルでプレビューする

テーマを開発するときに、テーマのルートディレクトリーでhs theme previewを実行すると、ファイルをアカウントにアップロードせずに変更内容のライブプレビューをレンダリングできます。プレビューはhttps://hslocal.net:3000/のローカル プロキシ サーバーで実行されます。

このコマンドを実行するとwatchプロセスが実行され、保存済みのすべての変更内容がプレビューでレンダリングされます。 

Please note: to allow the local server to run on https, HubSpot must generate a self-signed SSL certificate and register it with your operating system. This will require entering your sudo password.

hs theme preview <src> <dest>
引数Description
src
必須

ローカルファイルのパス(現在の作業ディレクトリーを基準にした相対パス)。このコマンドは、テーマのルートディレクトリーで実行される必要があります。

dest
必須

プレビューのパス。任意の値を指定できます。これは内部でのみ使用され、プレビューページの表示に使用されます。

https://hslocal.net:3000/のメインページには、テーマのテンプレートとモジュールのリストが表示され、該当するリンクをクリックするとこれらすべてを個別にプレビューできます。また、アカウントに接続されているドメインのリストも表示され、これを使用して特定のドメインでコンテンツをプレビューできます。ドメインは、hslocal.netドメインの前に付加されます。

local-theme-preview-homepage

HubDBコマンド

HubDBコマンドは、現在開発者プレビューの段階です。現時点でも使用できますが、今後変更が加えられる可能性があります。開発者プレビューには、Developer Beta Terms(開発者向けベータ版利用規約)が適用されます。

これらのコマンドを使用して、HubDBテーブルの全ての行の作成、削除、取得、消去を行うことができます。これらのコマンドを使用するには、HubSpotアカウントにHubDBへのアクセス権が付与されている必要があります。

HubDBテーブルの作成

HubSpotアカウント上に新しいHubDBテーブルを作成します。 

hs hubdb create <src>
引数Description
src
必須

HubDBテーブルの生成に使用するローカルJSONファイル

オプションDescription
--account

HubDBを作成するaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

HubDBテーブルの取得

特定のHubDBテーブルのデータをコンピューターにダウンロードします。

hs hubdb fetch <tableId> <dest>
引数Description
tableId
必須

HubDBダッシュボードで確認可能なHubDBテーブルのid。

dest

hubdb.jsonファイルの格納先にするローカルパス。

HubDBを取得すると、そのデータはtablename.hubdb.jsonとして保存されます。新しいテーブルを作成する際は、ソースJSONファイルを指定する必要があります。以下に、JSON形式のテーブルの例を示します。

// 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" } } ] }

HubDBテーブルの行の消去

特定のHubDBテーブル内の全ての行を消去します。

hs hubdb clear <tableId>
引数Description
tableId
必須

HubDBダッシュボードで確認可能なHubDBテーブルのid。

オプションDescription
--account

HubDBの行を消去するaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

HubDBテーブルの削除

指定したHubDBテーブルをアカウントから削除します。

hs hubdb delete <tableId>
引数Description
tableId
必須

HubDBダッシュボードで確認可能なHubDBテーブルのid。

オプションDescription
--account

HubDBを削除するaccountIdまたは名前を指定します。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

サーバーレス関数のコマンド

サーバーレス関数を作成してデバッグするには、これらのコマンドを使用します(「CMS Hub Enterprise」のみ)。

関数を作成する

Createコマンドを使用してサーバーレス関数を作成します。このコマンドを実行すると、親ファイルと関数ファイルに名前を付けたり、メソッドとエンドポイントのパスを定義したりするなど、関数の作成を順を追ってサポートします。

hs create function

関数を一覧表示する

アカウント上にある全てのデプロイされた関数、エンドポイント、メソッド、使用しているシークレット名、および最終更新日のリストを出力します。

hs functions ls --account=<name> hs functions list --account=<name>
引数Description
--account

hubspot.configからのHubSpotアカウントのニックネーム。defaultAccounthubspot.config内に設定されていない場合、このパラメーターは必須です。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

--json

全ての関数のデータを含むJSONがコマンドラインに出力されます。JSONデータには、ポータルID、関数ID、ルーティング、アセットの未加工パス、メソッド、シークレット、作成日、最終変更日が含まれます。

ログを取得する

サーバーレス関数からのログを出力します。実行後の関数に格納されている全てのconsole.logを表示します。ログには実行時間も記録されています。ログは90日間保存されます。 

hs logs <endpoint-name> --account=<name> --follow
引数Description
endpoint-name
必須

serverless.jsonファイル(関数ファイルへのパスではない)で定義されたエンドポイント名。

--file

function.logにログを出力します。

--follow

サーバーレス関数の実行時に最新の情報を取得するために、ログの末尾を表示します。

--latest

最新のログのみを出力します

--account

hubspot.configからのHubSpotアカウントのニックネーム。defaultPortalがhubspot.config内に設定されていない場合、このパラメーターは必須です。

古いバージョンのCLIとの下位互換性を確保するために、--portalのエイリアスがサポートされます。

--compact

ログの出力/情報を非表示にします。正常終了/エラーと実行時間を返します。

--limit=<number>

ログ出力の量を制限します

A server error occurred: WARNING: The logs for this function have exceeded the 4KB limitというエラーが発生した場合、ログが大きすぎることを意味しています。このエラーの原因は、巨大なオブジェクトが含まれるコンソールログまたは多数のコンソールログを出力しようとしたことにあります。解決するには、ログの出力を抑えるように調整してから、エンドポイントに対しコマンドを実行し直してみてください。

シークレットを追加する

サーバーレス関数内で使用できるシークレットをアカウントに追加します。コマンドを実行すると、シークレットの値を求められます。

シークレットを関数に開示する(シークレットを使用する特定のエンドポイントに開示したり、全てのエンドポイントで利用できるようにグローバルに開示したりする)には、serverless.jsonファイルをシークレット名で更新します。

hs secrets add <secret-name>
引数Description
secret-name
必須

名前またはシークレット。

secret-value
必須

シークレットの値(認証の詳細など)。

シークレットを更新する

サーバーレス関数内で使用できるシークレットの値をアカウント内で更新します。次に、シークレットの値を求められます。

注:キャッシュ保存のため、更新されたシークレット値が表示されるまでには、1分ほどかかる場合があります。シークレットを更新したばかりで、まだ古い値が表示されている場合は、1分ほどしてからもう一度ご確認ください。
hs secrets update <secret-name>
引数Description
secret-name
必須

シークレットの名前。後でシークレットを参照するために使用します。任意の固有の値を指定できますが、利便性を考えて、シンプルなものにすることをお勧めします。

シークレットを削除する

シークレットをアカウントから削除して、サーバーレス関数内で使用不可にします。このコマンドを実行した後で、serverless.jsonファイルを編集してシークレットの名前を削除します。

hs secrets delete <secret-name>
引数Description
secret-name
必須

削除するシークレットの名前。

シークレットを一覧表示する

add secretsコマンドを使用して保存済みのシークレットを把握するために、アカウント内のシークレットの一覧を表示します。

hs secrets list

ブラウザーのショートカットを開く

開発者はHubSpotのさまざまな機能を頻繁に利用します。こうした機能はコマンドラインから直接、簡単に開くことができます。defaultAccountまたは--accountの引数を使用して、アカウント上の関連付けられたツールを開くことができます。

open

hs open <shortcut-name or alias>
引数Description
shortcut
必須

ブラウザーで開くショートカットの完全な名前またはショートカットのエイリアスを指定します。

hs open --list
引数Description
--list
必須

全てのショートカット、エイリアス、および参照先のリストを表示します。

コマンドの補完

CLIを頻繁に使用する場合は、Tabでコマンドの入力を補完すると便利です。

hs completion >> ~/.bashrc

Mac OS Xの場合:

hs completion >> ~/.bash_profile

SEOとアクセシビリティーの観点からテーマとテンプレートを評価する

GoogleのLighthouseツールを使用して、テーマとテンプレートが以下のカテゴリーにどの程度準拠しているかを評価します。

  • アクセシビリティー
  • ウェブのベストプラクティス
  • パフォーマンス
  • PWA
  • SEO(検索エンジン最適化)ツール

以下のタイプのテンプレートが評価されます。

  • ランディングページ
  • ウェブサイトページ
  • ブログ記事
  • ブログ リスト ページ

Lighthouseのエラーが原因でスコアを生成できないテンプレートがある場合は、これらのテンプレートのリストが提供されます。  

hs cms lighthouse-score --theme=path
Use this table to describe parameters / fields
ParameterDescription
--theme-path
必須

デザインマネージャーのテーマへのパス。

--verbose
  • このパラメーターを除外すると、返されるスコアは全てのテーマのテンプレートの平均になります(既定)。
  • このパラメーターを含めると、個々のテンプレートスコアが表示されます。また、各テンプレートのLighthouseレポートのリンクも取得できます。
--target

このパラメーターは、それぞれのスコアを表示するために、デスクトップまたはモバイルのいずれにもすることができます。既定では、ターゲットはデスクトップです。 

アプリ内ハイライト表示用のテーマ フィールド セレクターを生成する

テーマを作成する際に次のコマンドを使用することで、CSSセレクターをテーマフィールドにマッピングするeditor-preview.jsonファイルを生成できます。これにより、コンテンツ作成者がフィールドのスタイル設定オプションの更新によってどのテーマ要素が影響を受けるかを確認できるようになります。

このコマンドを実行した後、editor-preview.jsonファイルを確認し、フィールドとセレクターが適切にマッピングされるように調整する必要があります。このコマンドでは、どのフィールドがどのセレクターに影響するかについて基本的な推測が行われるだけなので、テーマがどのように作成されているかに基づいて修正する必要があります。例えばこのコマンドでは、モジュールがスタイル設定をオーバーライドしていたり、マクロが使用されたりしていても検出できません。テーマ エディター フィールド ハイライト機能について詳細をご確認ください。

hs theme generate-selectors <theme-directory-path>

モード

--modeオプションを指定すると、HubSpotにアップロードされたローカルでの変更を公開するかどうかを指定できます。このオプションは各コマンドに追加することも、hubspot.config.ymlファイル内に既定として設定することもできます。

--modeのオプションは、--mode=draft--mode=publishの2つです。

--modeを指定する場合、次の優先順位が適用されます。

  1. コマンドに--modeを含めると、他の全ての設定よりも優先されます。
  2. hubspot.config.yml内でアカウントごとにdefaultModeを設定すると、コマンドに毎回--modeを含める必要がなくなります。この場合、最上位の設定よりも優先されます。
  3. hubspot.config.yml内で最上位にdefaultModeを設定すると、全てのアカウントに対して既定で--modeが設定されます。これにより既定の動作よりも優先されます。
  4. --modeの既定の動作はpublishです。

Environment variables

HubSpot CLIでは環境変数の使用をサポートしています。これは、GitHubアクションなどの自動化を作成する際に特に便利です。

hubspot.config.ymlの代わりに環境変数を使用するには、コマンドの実行時に--use-envフラグを使用します。

hs upload example-project example-project-remote --use-env
名前Description
HUBSPOT_PORTAL_ID
必須

HubSpotアカウントID。

HUBSPOT_PERSONAL_ACCESS_KEY
推奨

HubSpotアカウント上の特定のユーザーのパーソナル アクセス キー。全ての更新がこのユーザーに関連付けられます。

HUBSPOT_CLIENT_ID

OAuthクライアントID。

HUBSPOT_CLIENT_SECRET

OAuthシークレット。

注:2022年11月30日をもってHubSpot APIキーのサポートは終了しました。HubSpot APIキーの使用を続けると、アカウントやデータに対するセキュリティー上のリスクが生じます。なお、HubSpotによってこの廃止段階中にお客さまのキーが無効となった可能性があります。

認証には、代わりに非公開アプリのアクセストークンまたはOAuthを使用する必要があります。この変更の詳細と、非公開アプリを使用するようにAPIキーを移行する方法をご確認ください。

マーケットプレイスアセットの検証

 CLIには、アセットの提出前にマーケットプレイスの要件を満たすために実行できる自動テストが用意されています。全ての自動テストに合格することで必ず審査プロセスに合格できるという意味ではありません。単純な自動化以上の品質を担保するために、審査が実施されます。

テーマの検証

テーマの検証コマンドを使用すると、テーマの自動テストを素早く実行して、アセットマーケットプレイスへの提出前に修正しておく必要がある問題を特定できます。これはCLIでは、テーマ内のアセットを表すグループに分けられ、エラーと成功のリストとして返されます。

テーマを検証する前に、まずはhs uploadを使用してアカウントにアップロードする必要があります。次に、以下のコマンドを実行して、アップロードされたテーマを検証します。

hs theme marketplace-validate <src>
引数Description
src
必須

デザインマネージャーのテーマフォルダーへのルート相対パス。 

モジュールを検証する

テーマの検証と同様、このコマンドを使用すると、モジュールの自動テストを素早く実行して、アセットマーケットプレイスへの提出前に修正しておく必要がある問題を特定できます。 

モジュールを検証する前に、まずはhs uploadを使用してアカウントにアップロードする必要があります。次に、以下のコマンドを実行して、アップロードされたモジュールを検証します。

hs module marketplace-validate <src>
引数Description
src
必須

デザインマネージャーのモジュールフォルダーへのルート相対パス。 


参考になりましたか?
こちらのフォームではドキュメントに関するご意見をご提供ください。HubSpotがご提供しているヘルプはこちらでご確認ください。