『Visual Studio Online Monaco』の開発環境が素晴らしい。
まずは、Azure Web Siteの管理画面でVisual Studio Onlineを有効にする。
「Edit in Visual Studio Online」というメニューが有効になるのでそれをクリック。
1. ブラウザ内でソースコードの編集が出来る。
サクサク動くし、もちろんコード補完も
2. ブラウザ内でコンソールを開いて各種コマンドが使える。
gitコマンドで色々出来る。node が入っているので npm も使えるし gulp や bower も使える。まだそんなに使い込んでないですが、とりあえず色々出来そうな予感。
3. gitの差分はGUIで見やすく表示してくれる。
4. コンソール内で「msbuild」と打ち込めばクラウド上でソリューションをビルドしてくれる。
5. 一つのWebサイト内に複数のアプリケーションを配置出来る。
メインのサイトと管理用サイトを分けたり、WebAPIだけ別アプリケーションにしたり出来る。
6. DB接続文字列やアプリケーション設定はAzureの管理画面から上書き出来る。
ソース上のWeb.configファイルにはとりあえず仮の値を入れておいて、別途Azure Web Siteの管理画面から設定すれば実行時にはそちらの値で上書きされる。これは便利。
正直、特に4番のビルドについては「Visual Studio Online (MonacoではないTFSのオンライン版)」のCI機能を使わないと出来ないとさっきまで誤解していました。
この動画を見て初めて知りました。
Getting started with ASP.NET | Visual Studio Online "Monaco" | Channel 9
ブラウザ内のコンソールで「msbuild」と打てばクラウド上でビルドが出来るなんて!
衝撃でした。笑)
ソリューション内に複数のアプリケーションがある場合はAzure Web Siteの管理画面で仮想アプリケーションとしてそれぞれのフォルダを指定してやるだけでOK。
ローカル環境にVisual Studioを入れなくてもブラウザだけでここまで出来るんなら、もうPC無しでいいんじゃない? という気がしてくる。
Visual Studio Online Monaco、すごい!
* 4/16/2015 追記:
もう少し「Monaco」を使ってみて気付いた点です。
- コード補完はまあまあだけどやっぱりローカルのVisual Studioの方が快適。
- Monacoではソリューションファイル(*.sln)やプロジェクトファイル(*.csproj)の作成・変更が難しい。
例えばC#のソースファイルを新規作成してプロジェクトに追加したいと思っても、ローカルのVisual Studioの様に右クリックして「プロジェクトに含める」を選ぶ様な事は出来ません。プロジェクトファイルを手動で編集すればなんとかならない事はないですがかなり面倒です。
この辺りが今後改善されればさらに便利になりそうですね。
(と言っても次期のASP.NETではプロジェクトファイル自体が必要無くなるらしいので、別に気にしなくてもいいのかも。)
.