drupal-update-deploy について
drupal-update-deployは、Drupalの依存関係更新とAcquia環境へのデプロイを進めるスキルです。アプリケーションと環境の選択から、コードのプッシュ、任意のパイプライン実行、データベース更新、検証までを案内します。
主な機能
- 01依存関係更新とデプロイ手順の案内
- 02Acquiaアプリケーションと環境の一覧表示
- 03コードのプッシュと環境ブランチの切り替え
- 04任意のパイプラインビルド実行
- 05データベース更新の実行と検証
活用シーン
- 01更新したDrupalコードのAcquiaへのデプロイ
- 02リリース先環境の選択
- 03デプロイとデータベース状態の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ acquia/ acquia-skills --skill drupal-update-deployインストール後、Claude Code で/drupal-update-deployを入力して読み込まれたか確認します。
詳細
Drupal の更新とデプロイのワークフロー
次の場合に使用します:
- Drupal の依存関係を更新し、Acquia 環境にデプロイするとき
- 更新パッケージ → コードをプッシュ → デプロイ → パイプラインを実行、という一連のサイクルを実行するとき
前提条件: 次のスキルセットを読み込んでおく必要があります:
drupal-maintenance、acli、pipelines-cli。
ワークフロー
ステップ 1 — 依存関係の更新を適用する
ユーザーに次のように尋ねます:「先に依存関係の更新を適用しますか?それとも、更新はすでに完了していますか?」
ステップ 2 — アプリケーションと環境を取得する
デプロイ先をユーザーに尋ねる前に、必ず以下を実行してください。これにより、正しいアプリケーション ID と環境 ID を使用できます。
# List available applications and note the UUID
acli api:applications:list
出力にはアプリケーション名と UUID が表示されます。ユーザーに 「どのアプリケーションにデプロイしますか?」 と尋ね、UUID を確認します。
# List environments for the selected application
acli api:environments:list <app-uuid>
出力には環境のラベル(dev、stage、prod、CDE)、ID、現在デプロイされているブランチが表示されます。ユーザーに 「どの環境にデプロイしますか?」 と尋ねます。
ステップ 3 — コード変更をコミットする
プッシュする前に、未コミットの変更がないか確認します:
git status
未コミットの変更がある場合、ユーザーに 「デプロイする前に、これらの変更をコミットしますか?」 と尋ねます。
- はいの場合 — コミットメッセージを尋ねてから、コミットします:
git add -A git commit -m "<user-provided message>" - いいえの場合 — 未コミットの変更はデプロイに含まれないことをユーザーに伝え、続行するか確認します。
ステップ 4 — Acquia Cloud にコードをプッシュする
コミットしたコードを選択した環境にプッシュします:
acli push:code
詳細なオプション(環境の選択、競合への対処)については、プルとプッシュ に従ってください。
ステップ 5 — 環境上のコードを切り替える
プッシュ後、ステップ 2 の環境 ID を使って、環境を更新済みのブランチに切り替えます:
acli api:environments:switchCode <environment-id> --branch=<branch-name>
デプロイのオプションについては、環境管理 に従ってください。
ステップ 6 — パイプラインビルドを実行する(任意)
ユーザーに 「デプロイしたブランチのパイプラインビルドを実行しますか?」 と尋ねます。
- はいの場合 → ビルドを開始してログをストリーミングするには、パイプライン操作 に従います:
pipelines start --application-id=<app-id> --vcs-path=<branch> --tail
- いいえの場合 → ワークフローは完了です。
ステップ 7 — データベースを更新する
環境でコードが稼働した後(およびパイプラインが完了した後)、Drush でデータベースを更新し、キャッシュを再構築します:
# SSH into the environment
acli ssh <environment-id>
# Apply pending database updates
drush updb --yes
# Rebuild caches
drush cr
パイプラインを使用している場合: Drush コマンドがパイプライン定義にすでに含まれている可能性があります。ユーザーに 「パイプラインで
drush updbとdrush crを実行しますか?」 と尋ねます。
- はいの場合 → このステップをスキップします。
- いいえの場合 → 上記のコマンドを実行します。
Drush がサイトに接続できることと、データベーススキーマが最新であることを確認します:
drush status
想定される出力には、Drupal bootstrap: Successful と Drupal のバージョンが含まれます。Drush のブートストラップに失敗した場合は、先に進まず、デプロイ完了とする前にエラーを確認してください。
ステップ 8 — デプロイを確認する
パイプラインが完了した後(またはパイプラインをスキップした場合)、環境で想定どおりのコードが稼働していることを確認します:
acli api:environments:list <app-uuid>
対象環境の vcs フィールドを確認し、ブランチが一致していることを確かめます。
クイックリファレンス
| ステップ | ツール | スキル |
|---|---|---|
| パッケージを更新する | composer | drupal-maintenance-security-updates または drupal-maintenance-dependency-updates |
| アプリケーションと環境を取得する | acli | acli-application-management、acli-environment-management |
| コード変更をコミットする | git | — |
| コードをプッシュする | acli | acli-pull-push |
| 環境にデプロイする | acli | acli-environment-management |
| パイプラインを実行する | pipelines-cli | pipelines-cli-pipeline-operations |
| データベースを更新する | drush | drush updb、drush cr |