Visual Studio Online で YEOMAN の使用を試みましたがどうすることもできず挫折したことを記事にします。結論から言いますと力及ばずでした。このエントリーは「Azure Advent Calendar 2014」12月18日の記事です。
Azure Advent Calendar 2014 - Qiita
Visual Stadio Online とは
Visual Studio Online は Microsoft Azure のインフラの上で提供されるクラウドサービスです。俗にいう「 Visual Studio」とは異なります。ですので画面もコンソール中心になっていて別名「Monaco」と呼ばれています。
このコンソールですが対話型ができないようで、その代わりに「Kudu」というコンソールが存在します。
Monaco で YEOMAN
nodeとnpmは既にインストールされていますのでYEOMANのセットアップを始めます。
> npm install -g yo > npm install -g grunt-cli > npm install -g bower
無事にインストールされます。ジェネレータを何か利用したいと思いますので定番の「generator-webapp」を使っいます。
> npm install -g generator-webapp > mkdir webapp > cd webapp
でインストールします。
> yo webapp ? What more would you like? (Press <space> to select) >(*) Bootstrap ( ) Sass ( ) Modernizr[?25l[?25h _-----_ | | .--------------------------. |--(o)--| | Welcome to Yeoman, | `---------´ | ladies and gentlemen! | ( _´U`_ ) '--------------------------' /___A___\ | ~ | __'.___.'__ ´ ` |° ´ Y ` Out of the box I include HTML5 Boilerplate, jQuery, and a Gruntfile.js to build your app. >
そう。。です。。ね。対話式ができないのでここで終了。
kudu
気を取り直して kudu でも
> npm install -g yo > npm install -g grunt-cli > npm install -g bower > npm install -g generator-webapp > mkdir webapp > cd webapp > yo webapp net.js:156 this._handle.open(options.fd); ^ Error: EINVAL, invalid argument at new Socket (net.js:156:18) at process.stdin (node.js:664:19) at Object.Interface.createInterface (C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\yo\node_modules\yeoman-environment\node_modules\inquirer\node_modules\readline2\index.js:31:43) at PromptUI.UI (C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\yo\node_modules\yeoman-environment\node_modules\inquirer\lib\ui\baseUI.js:23:40) at new PromptUI (C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\yo\node_modules\yeoman-environment\node_modules\inquirer\lib\ui\prompt.js:26:8) at TerminalAdapter.promptModule [as prompt] (C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\yo\node_modules\yeoman-environment\node_modules\inquirer\lib\inquirer.js:27:14) at Base.prompt (C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\generator-webapp\node_modules\yeoman-generator\lib\base.js:194:20) at module.exports.yeoman.generators.Base.extend.askFor (C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\generator-webapp\app\index.js:71:10) at C:\DWASFiles\Sites\#1ashiras\AppData\npm\node_modules\generator-webapp\node_modules\yeoman-generator\lib\base.js:395:14 at processImmediate [as _immediateCallback] (timers.js:336:15)
socketが使えないのかよしよし。このあと未だに手が止まっています・・・
最後に
基本的にYEOMANはVisual Studio Onlineで利用するよりもやはりクライアントで利用すると思います。どのみちlivereloadとかありますので。今回はネタ的にあまり意味のない単純な趣味として試してみましたが Microsoft Azure の websites は好んで利用させて頂いております。基本的にはフロント開発を中心にAzureの様々な面をこれから探求していきたいと考えております。