このDevOpsハッカソンが大阪で開催されたので、行ってきました。まだ一日目ですが。参加した目的は普段触っていないツールなどを使ってDevOpsやってみようかなと思ったのと、他の人がどんなことをやっているのか知りたかったからです。AzureとVSTSはちょっとだけ知っているので、まぁお手伝いできればと。
概要
異例の寒波が来ているということで、雪が降ったら即時撤退。残業なし。翌日も無理してこないということを伝えられて、東京ではやっていたように見えた残業もなしw。
最初に牛尾さんと小塚さんからDevOpsに関するセッションが行われ、チーム編成をしてからお昼休憩。東京ではテクノロジーセントリックだったそうですが、大阪ではソリューションを作りたいというチームが多く出て、半分くらいソリューションを実装してみようというチームでした。
開始まで
うちのチームはなんと5人中2人がノートの電源ケーブルを忘れるという失態からのスタートw。Azureのサブスクリプションの登録とか、VSTSの作成、VSTSでどんなことができるのかということがわからない人が多い、というところで色々相談に乗ってました。権限周りは何度も聞かれる話なのですが、確かにわからないと難しいかなー。
VSTSにハマる
ちょっとハマるのが、VSTSのビルド定義。Build Administratorに登録すればビルド定義を作ることはできるのですが、どのビルドキューに入れるかという選択ができない(TBD:後で画像追加)。
これは、Collectionレベルのセキュリティページ(https://(account).visualstudio.com/DefaultCollection/admin/security)からProject Collection Build Administratorに追加すればOKです。確かにエージェントプールはコレクションレベルでの管理になるのですが、ちょっとわかりづらいですね。もう少し調査してみます。
publishsettingsファイルの取得にハマる
VSTSからAzureにデプロイするためには、サービスにAzureサブスクリプションを登録する必要があります。このクレデンシャルの文字列はクラシックポータルからpublishsettingsファイルとして入手する必要があるのですが、これ共同管理者ではクラシックポータルに行けないので、取れないんですね。
ビルド担当者が取ろうとしても、クラッシクポータルにアクセスできず、かなりはまりました。この辺、新ポータルで困るところの一つです。
ビルドステップが追加できない
うちのチームではないのですが、Visual Studio Team Servicesでビルド定義を作ろうとしても、ビルドステップの追加(Add step)がグレイアウトしていて追加できないという現象が起きました。build administratorに追加してもダメ。牛尾さんのアカウントに至っては、自分がテナントオーナーなのにグレイアウトしているという有様。
そのあと色々調べてわかったのですが、どうも特定のアカウントに対して先行リリース機能が有効にされているくさくて、その先行リリース機能が有効にされているアカウントだと起きるようです。先行リリース機能では、ビルド定義を作るところのUIが異なることがわかっています。これはもうどうしようもないですね。特に今日発生した参加者は今回のためにMSアカウント作ったので、悲惨というほかない。
牛尾さんが内部でバグ報告していましたが、回避方法はないので、当たったら運が悪かったと思うしかないようです。
ネットワークにハマる
これは以前から思っていたのですが、MS関西支店のゲスト用ネットワークが1年くらい前から調子悪い。調べてもらったところ、DNSの問題か、2.4GHzのWifiつかんでいるかどちらかのよう。DNSはGoogle public DNS使えばいいのでは?というアドバイスがあったのですが、それでもダメで、ルータなんですかねぇ。モバイルルータ持っていましたが、容量制限があるので、NuGetのリストアなんてやろうものなら、困りますね。
で、結局どうだったの?
うちのチームはARM使って負荷試験、自動スケールアウトした結果をApplication Insightsで収集、Power BIで可視化しよう!みたいなところを目論んだのですが、この辺の問題にことごとく当たって、やっとデプロイができるようになったくらいです。
要は進捗ダメです!