🔧

【Shopify.dev和訳】Apps/Dev Tools/Shopify CLI/Troubleshooting

2021/09/04に公開

この記事について

この記事は、Troubleshooting Shopify CLI の記事を和訳したものです。

記事内で使用する画像は、公式ドキュメント内の画像を引用して使用させていただいております。

Shopify アプリのご紹介

Shopify アプリである、「商品ページ発売予告アプリ | リテリア Coming Soon」は、商品ページを買えない状態のまま、発売日時の予告をすることができるアプリです。Shopify で Coming Soon 機能を実現することができます。

https://apps.shopify.com/shopify-application-314?locale=ja&from=daniel

Shopify アプリである、「らくらく日本語フォント設定|リテリア Font Picker」は、ノーコードで日本語フォントを使用できるアプリです。日本語フォントを導入することでブランドを演出することができます。

https://apps.shopify.com/font-picker-1?locale=ja&from=daniel

Shopify アプリのご紹介

Shopify アプリである、「商品ページ発売予告アプリ | リテリア Coming Soon」は、商品ページを買えない状態のまま、発売日時の予告をすることができるアプリです。Shopify で Coming Soon 機能を実現することができます。

https://apps.shopify.com/shopify-application-314?locale=ja&from=daniel

Shopify アプリである、「らくらく日本語フォント設定|リテリア Font Picker」は、ノーコードで日本語フォントを使用できるアプリです。日本語フォントを導入することでブランドを演出することができます。

https://apps.shopify.com/font-picker-1?locale=ja&from=daniel

Shopify CLI のトラブルシューティング

このリファレンスガイドには、アップグレード、レガシーバージョンからの移行、Shopify CLI のアンインストールに関する情報が含まれています。

Shopify CLI のアップグレード

Shopify CLI のアップグレードは、あなたのプラットフォームのパッケージマネージャーで管理できます。Shopify CLI のインストールに最初に使ったのと同じパッケージマネージャーをアップグレードに使わなければなりません。

拡張機能の開発では、最新の機能をすべて使うために、特定のノードモジュールを手動でアップデートする必要があるかもしれません。

Homebrew(macOS)

brew update
brew upgrade shopify-cli

apt (Debian, Ubuntu)

  1. リリースページから Shopify CLI の最新の.debファイルをダウンロードしてください。
  2. ダウンロードしたファイルをインストールし、/path/to/download/shopify-cli-x.y.z.debをあなたのファイルの場所へのパスに置き換えることを確認してください。
sudo apt install /path/to/downloaded/shopify-cli-x.y.z.deb

yum (CentOS 8+, Fedora, Red Hat, SUSE)

  1. Shopify CLI の最新の.rpmファイルを[リリースページ](releases page)からダウンロードします。
  2. ダウンロードしたファイルをインストールし、/path/to/downloaded/shopify-cli-x.y.x.rpmをあなたのファイルの場所へのパスに置き換えることを確認してください。
sudo yum install /path/to/downloaded/shopify-cli-x.y.x.rpm

RubyGems (macOS, Linux, Windows 10)

gem update shopify-cli

拡張機能開発のためのノードモジュールの更新

拡張機能の開発では、最新の機能をすべて使用するために、特定のノードモジュールを手動で更新する必要がある場合もあります。

購入後のチェックアウトエクステンション

  1. クライアントライブラリとコマンドラインツールをアンインストールします。

Yarn(React なし)をインストールします。

yarn remove @shopify/argo-post-purchase @shopify/argo-run

Yarn(React を使用している場合)。

yarn remove @shopify/argo-post-purchase-react @shopify/argo-run

NPM(React を使用しない場合)。

npm uninstall @shopify/argo-post-purchase @shopify/argo-run

NPM(React を使用する場合)。

npm uninstall @shopify/argo-post-purchase-react @shopify/argo-run
  1. 新しいクライアントライブラリをインストールします。

Yarn(React を使用しない場合)。

yarn add @shopify/post-purchase-ui-extensions@latest

Yarn(React を使用する場合):。

yarn add @shopify/post-purchase-ui-extensions-react@latest

NPM(React を使用しない場合)。

npm install @shopify/post-purchase-ui-extensions@latest

NPM(React を使用する場合)。

npm install @shopify/post-purchase-ui-extensions-react@latest
  1. 新しいコマンドラインツールをインストールします。

Yarn

yarn add @shopify/checkout-ui-extensions-run@latest --dev

NPM

npm install @shopify/checkout-ui-extensions-run@latest -save-dev
  1. 拡張機能のコードの中で、古いクライアントライブラリへのすべての参照を新しいライブラリで置き換えます。
  • React を使用している場合は、@shopify/argo-post-purchase-react@shopify/post-purchase-ui-extensions-react に置き換えてください。
  • React を使用していない場合は、@shopify/argo-post-purchase@shopify/post-purchase-ui-extensions に置き換えてください。
  1. package.json のスクリプトを更新して、新しい checkout-ui-extensions-run を使用します。

実行前

"scripts": {
  "server": "argo-run serve",
  "build": "argo-run build",
},

実行後

"scripts": {
  "server": "checkout-ui-extensions-run serve",
  "build": "checkout-ui-extensions-run build",
},

製品購読アプリの拡張機能

  1. クライアントライブラリとコマンドラインツールをアンインストールします。

Yarn(React なし)。

yarn remove @shopify/argo-admin @shopify/argo-admin-cli

Yarn(React を使用している場合)。

yarn remove @shopify/argo-admin-react @shopify/argo-admin-cli

NPM(React を使用しない場合)。

npm uninstall @shopify/argo-admin @shopify/argo-admin-cli

NPM(React を使用する場合)。

npm アンインストール @shopify/argo-admin-react @shopify/argo-admin-cli
  1. 新しいクライアントライブラリをインストールします。

Yarn(React を使用しない場合)。

yarn add @shopify/admin-ui-extensions@latest

Yarn(React を使用する場合)。

yarn add @shopify/admin-ui-extensions-react@latest

NPM(React を使用しない場合)。

npm install @shopify/admin-ui-extensions@latest

NPM(React を使用する場合)。

npm install @shopify/admin-ui-extensions-react@latest
  1. 新しいコマンドラインツールをインストールします。

Yarn

yarn add @shopify/admin-ui-extensions-run@latest --dev

NPM

npm install @shopify/admin-ui-extensions-run@latest -save-dev
  1. 拡張機能のコードの中で、古いクライアントライブラリへの参照をすべて新しいライブラリで置き換えます。
  • React を使用している場合は、@shopify/argo-admin-react@shopify/admin-ui-extensions-reactに置き換えてください。
  • React を使用していない場合は、@shopify/argo-admin@shopify/admin-ui-extensionsに置き換えてください。
  1. package.jsonのスクリプトを更新して、新しいcheckout-ui-extensions-runを使用します。

実行前

"scripts": {
  "server": "argo-admin-cli serve --entry=\"index.tsx\" --type=PRODUCT_SUBSCRIPTION",
  "build": "argo-admin-cli build --entry=\"index.tsx\"",
},

実行後

"scripts": {
  "server": " admin-ui-extensions-run server --entry="index.tsx\" --type=PRODUCT_SUBSCRIPTION",
  "build": "admin-ui-extensions-run build --entry="index.tsx\""
},

レガシーバージョンからの移行

バージョン 0.9.0 以降、Shopify CLI は Git リポジトリとしてではなく、ソフトウェアパッケージとしてインストール・管理されています。0.9.0 より前のバージョンを使用している場合は、CLI を使い続けるために 1 回だけの移行を行う必要があります。

以下の手順でレガシーバージョンを削除し、Shopify CLI をパッケージとして再インストールしてください。

  1. レガシーバージョンを使用しているかどうかを確認する。
  2. レガシー版の Shopify CLI をアンインストールする。
  3. 新しいバージョンをインストールする。
  4. CLI を再認証する。

レガシーバージョンを使用しているかどうかの確認

レガシーバージョンを使用しているかどうかは、以下のコマンドを実行することで確認できます。command not found というエラーが出た場合は、レガシーバージョンを使用していることになります。

shopify version

レガシー版 Shopify App CLI をアンインストールする

レガシーバージョンの Shopify CLI をアンインストールするには、以下の手順を行ってください。

  1. レガシー CLI ファイルを削除する。
  2. あなたのシェルプロファイルからレガシーの shopify コマンドを削除する。
  3. ターミナルをリロードする。

レガシー CLI ファイルの削除

デフォルトでは、Shopify CLI はあなたのホームディレクトリにインストールされています。すべてのファイルは.shopify-app-cliという隠しディレクトリに含まれています。以下のコマンドを実行して、そのディレクトリを削除してください。

rm -rf ~/.shopify-app-cli/

シェルプロファイルから従来の shopify コマンドを削除する

インストールの過程で、Shopify CLI はあなたのシェル構成に行を追加しました。この行は、あなたのホームディレクトリにある以下のファイルのいずれかにあります。

  • ~/.bash_profile
  • ~/.zshrc
  • ~/.bash_login
  • ~/.profile
  • ~/.config/fish/config.fish

以下の例のように表示されます。正確な構文は、お使いのシステムによって異なります。シェルプロファイルの該当行を削除またはコメントアウトすると、コマンドとしてのshopifyが削除されます。

# この行は正確には以下のようにはなりません。HOME_DIR "は、あなたのホームディレクトリへの絶対パスになります。
if [[ -f /HOME_DIR/.shopify-cli/shopify.sh ]]; then source /HOME_DIR/.shopify-cli/shopify.sh; fi

# その行は、`if`文で包まれていないかもしれません。例
[ -f "/HOME_DIR/.shopify-app-cli/shopify.sh" ] && source "/HOME_DIR/.shopify-app-cli/shopify.sh"

ターミナルのリロード

シェルプロファイルの変更を有効にするには、ターミナルを終了して、新しいターミナルを起動してください。

  • shopifyを実行しようとすると、command not found(コマンドが見つからない)というエラーが出るはずです。
  • shopify_api gem がインストールされている場合は、以下のようなレスポンスが表示されるかもしれません。
shopifyコマンドはもはやshopify_apiにバンドルされていません。
これらのツールが必要な場合は、shopify_cli gemをインストールしてください。

もしそうなら、shopify_api gem を v9.2.0 以上にアップグレードして、その gem に含まれている非推奨のshopifyコマンドを削除する必要があります。

shopify_api gem に依存しているshopify_app gem も持っている場合は、まずshopify_apiをインストールまたはアップデートしてから、古いバージョンをアンインストールする必要があります。

現在インストールされているshopify_apiのバージョンのリストを取得するには、以下のコマンドを実行してください。

gem list shopify_api

最新バージョンをインストールするには、次のコマンドを実行します。

gem install shopify_api

古いバージョンをアンインストールするには、次のコマンドを実行します。x.y.z は、gem list コマンドで表示されたバージョン番号に置き換えてください。必要に応じて繰り返します。

gem uninstall shopify_api -v x.y.z

新バージョンのインストール

レガシーバージョンのアンインストールが終わったら、Shopify CLI の最新バージョンをインストールします。お使いのプラットフォームのインストール手順に従ってください。

CLI の再認証

再認証するには、Shopify CLI で、shopify loginと入力します。

Shopify CLI をアンインストールする

Shopify CLI は、インストール時に使用したのと同じパッケージマネージャーを使ってシステムから削除することができます。

ホームブリュー(macOS)

brew uninstall shopify-cli

apt (Debian, Ubuntu)

sudo apt remove shopify-cli

yum (CentOS 8+, Fedora, Red Hat, SUSE)

sudo yum remove shopify-cli

RubyGems (macOS, Linux, Windows 10)

gem uninstall shopify-cli

レガシーバージョンをアンインストールする

Shopify CLI のレガシーバージョン(0.9.0以下)を使用している場合は、手動でアンインストールする必要があります。

次のステップ

Shopify CLI で様々なタイプのプロジェクトを作成、管理する方法を学んでください。
Shopify CLI のコアコマンドに慣れてください。

Discussion

ログインするとコメントできます