2017年7月11日火曜日

Drupal Console on Windows 10

Drupal Consoleは同じ環境のインストールをいくつも作れたりと便利そう。

今のところ自分の環境でうまく動いていない。
drupal initなどは動く。site:newなどが動かない。
その後、ランチャーをアップデートしたらdrupal initがドキュメントルートで動かなくなった。
drupal consoleのフォーラムを見ていると、同じようなことで困っている人がいるみたいだ。ただ、その人たちや自分が正しいことをしているのかどうかはわからない。
いろいろなもののバージョンの関係もあるだろうし・・・。
自分はdrushがあれば十分なので少しの間Drupal Consoleは保留にする。


ここから下は、Windowsのコマンドプロンプト上でlinuxのコマンドを使える状態(Cygwin+git  自分の場合はたまたまこの環境。gitだけでも大丈夫だと思う。)で、そこにのせてphpのComposerコマンド使える状態になってからのインストール方法。

DrupalConsoleを動かすのに2つインストールする必要がある。
1. The DrupalConsole ランチャー
2. DrupalConsole それ自身

-------------その1---------------
Drupal Console ランチャーのインストール。

D:\drupalconsoleなどで、
php -r "readfile('https://drupalconsole.com/installer');" > drupal.phar

Linux系ではでもいい。
curl https://drupalconsole.com/installer -L -o drupal.phar
mv drupal.phar /usr/local/bin/drupal
chmod +x /usr/local/bin/drupal

drupal.pharがD:\drupalconsoleにできているのを確認して同じフォルダにdrupal.batファイルを作る。
drupal.batファイルに
@php "%~dp0drupal.phar" %*を貼り付ける。

環境変数pathにD:\druaplconsoleを追加してWindowsを再起動させる。

DrupalConsole Launcherのアップデート
drupal self-update

ランチャーを使ってDrupal Console を動かすには。
drupal


-------------その2----------------
Composerを使ってDrupal Consoleをインストール。

まずDrupalのドキュメントルートに移動して、
cd /path/to/drupal8.dev

下のコマンドを実行する。
composer require drupal/console:~1.0 --prefer-dist --optimize-autoloader

DrupalComposer projectのテンプレートをダウンロードする。
(リポジトリdrupal-composer/drupal-project:8.x-devをダウンロードする。
これをダウンロードして、インストール、アップデートをすることでConsoleのコマンドが使えるようになる。)

composer create-project drupal-composer/drupal-project:8.x-dev drupal8.dev --prefer-dist --no-progress --no-interaction

DrupalConsoleのアップデートをする。

composer update drupal/console --with-dependencies

---------その3----------


drupal site:new
drupal init
drupal chain


下でうまくいったとかうまくいかなかったとか書いてあるけど、最終的にはいろいろとやりすぎてどれがうまくいってどれがうまくいかなかったのかわからない状態。
まっさらな状態からやり直さないと検証できなくなってしまった。

drupal consoleを始めるには
composerのコマンドで
composer require drupal/console:~1.0
として、ダウンロード、インストール。
(結構時間がかかる。)

drupal init
として、
ファイル群をコピーする。


drushを入れるために作った環境がWindows上にあれば、

composer global require drupal/console:@stable

だけでインストールできる。
と思ったら、うまくいかない。
drupal.batもどこにも見つからない。(後述:batは自分で作るんじゃないのか?)

で、
Drupal Community
Install Drupal Console on window
を見て、その通りにやったらうまくいった(最初からそこを見るべきだったなぁ)。

Install Drupal Console on window

Posted by huythuan on 21 Apr 2016 at 18:52 UTC
I installed drupalconsole on Window 7 as follow:
1. Install XAMPP, or update XAMPP, make sure that PHP version 5.6 or above
2. add path: C:\xampp\php to window path variable (Right click on Computer, > Advanced system settings > Environment Variables > edit path)
type php --version, make sure the result version is 5.6 or above
3. create folder: c:\drupalconsole, cd to this folder on the command , and run this command:
php -r "readfile('https://drupalconsole.com/installer');" > drupal.phar

Make sure that we have file drupal.phar under folder c:\drupalconsole

4. Create drupal.bat file under this folder: c:\drupalconsole, and paste the following code to this file:

@php "%~dp0drupal.phar" %*

5. add path c:\drupalconsole to window variable path (Right click on Computer, > Advanced system settings > Environment Variables > edit path)

6. restart the window, and on the command line type: drupal list, or drupal --version

上の黄土色のところで、環境変数pathにD:\druaplconsoleを追加してしまったのがうまくいかない原因かもなぁ。

-------------------------------------------------------------------------

うまく動かない。

自分のやりたいことは、drupalのインストールをデータベース、モジュール、テーマ、など、設定をしておけばその通りに一気に作ること。
でも、今のところdrupal init など、一部のコマンドしか動かない。
自分のやり方が間違っているのかもしれない。
例えば、
drupalドキュメントルートでdrupalとすると
Drupal Console (1.0.0-rc23)
===========================

Copy configuration files.
[33m  drupal init [39m

Download, install and serve Drupal 8
[33m  drupal quick:start [39m

Create a new Drupal project
[33m  drupal site:new [39m

Install a Drupal project
[33m  drupal site:install [39m

Lists all available commands
[33m  drupal list [39m

Update project to the latest version.
[33m   drupal self-update [39m

と、でるということはsite:newは使えるってことだよなぁ。
でも、オプションも何もつけずに
drupal site:new
としても
 [ERROR] Command "site:new", is not a valid command name.

drupalコマンドのhelpだと、
drupal help site:new

  [Symfony\Component\Console\Exception\CommandNotFoundException]
  The command "site:new" does not exist.



0 件のコメント:

コメントを投稿