web-dev-qa-db-ja.com

Drushを使用して、モジュールがマルチサイトアーキテクチャで使用されているかどうかを判断するにはどうすればよいですか?

30サイトを超えるマルチサイトアーキテクチャがあります。

1つの特定のサイトにsearch_api_solrバージョン7.x-1.0RC5がインストールされており、それが有効になっており、モジュールリストで使用されていることがわかります。

Common sites/all/modulesフォルダーにsearch_api_solr 7.x-1.0-rc2があります。私がする時 drush pm-list | grep search表示されているのに「インストールされていません」と表示されます。

これは、30以上のサイトのいずれもこのモジュールを使用しておらず、削除しても安全であることを意味しますか?それとも、そのコマンドは単にデフォルトのインストールでは使用されていないことを私に伝えているだけですか?

後者の場合、Drushを使用して、common sites/all/modulesディレクトリのモジュールを使用している特定のサイトを教えてください。

編集:

@ greg_1_anderson

私はあなたの解決策を試しました:

drush @sites pm-info search_api_solr --field=status

Yを押した後の出力の各行で、次のようになります。

.appdrupal#mysite.example.com >> blahblah : some.description

上記の出力は3列のように見えます。その「blahblah」列の可能な値は多数あるようです(必須、タイプ、タイトル、説明、バージョン、日付、パッケージ、「グループ」、ファイルなど。)有効になっているかどうかを示すものはありません)

「ステータス」で数回確認できますが、特定されていません。最終的に、これにより数千行の出力が作成されます。追加しようとしました| grepステータスですが、ハングしました(120秒与えました)。

Drupalは7.26、Drushのバージョンは5.9です。

2
blue928

これはDrush 6.x以降で機能します。

$ cd /path/to/drupalroot
$ drush @sites pm-info MODULENAME --fields=status
You are about to execute 'pm-info devel' non-interactively (--yes forced) on all of the following targets:
  /path/to/drupalroot#default
  /path/to/drupalroot#other
Continue?  (y/n): y
.path.to.drupalroot#other   >>  Status   :  enabled
.path.to.drupalroot#default >>  Status   :  enabled
4
greg_1_anderson

Drupalインストールディレクトリ内から:

drush @sites pml --status=enabled -y | grep module_name
0
alec