Visual Studio OnlineとScalaを連携する方法 ビルド環境準備編 #alm #tfsug #scala

visual_studio_online

Visual Studio Online Supports True Cross-Platform Development – Microsoft Application Lifecycle Management – Site Home – MSDN Blogsに関連して手順を調べた。

前提条件

  • ScalaのインストールされたMacを準備していること

Visual Studio OnlineとScalaを連携する方法 ビルド環境準備

Microsoft Cross Platform Build Agentをインストールする

Xcodeの時と同様にMicrosoft Cross Platform Build Agentをインストールする。インストール方法はMicrosoft Cross Platform Build AgentのREADME.mdに記載されているが、以下の通り。

nodeは0.10以上、npmは1.4以上であればよく、以下のコマンドでヴァージョンを確認する。

$ node -v && npm -v

その後、以下を実行し、Microsoft Cross Platform Build Agentをインストールする。

$ sudo npm install vsoagent-installer -g
$ sudo chown -R $USER ~/.npm

インストール後、実行する。

$ mkdir myagent; cd myagent
$ vsoagent-installer

alternate credentialsを設定する

Xcodeの時と同様にMicrosoft Cross Platform Build AgentのREADME.mdに記載されている通り、alternate credentialsを設定する。既に設定している場合はこの手順は不要になる。

Visual Studio Onlineのホーム画面にアクセスし、自分のアカウントをクリックする。

Home

[Security]をクリックする。

Settings

[Alternate authenthication credentials]をクリックする。

Security

[User name]や[Password]を設定し、[Save]をクリックする。

Alternate authenthication credentials

Visual Studio OnlineにAgentを認識させる

Xcodeの時と同様に以下のコマンドを実行する。Could not create an agent session.が表示されたら、Ctrl+Cで止める。

$ node agent/vsoagent
Enter alternate username > [Alternate authenthication credentials]で設定したUser name
Enter alternate password > [Alternate authenthication credentials]で設定したPassword
Enter server url > [あなたのVisual Studio OnlineのURL] e.g. https://sample.visualstudio.com/
Enter agent name (enter sets xxxx)  > 
Enter agent pool name (enter sets default)  > 
successful connect as User namae
Retrieved agent pool: Default (1)
xxxx
Creating work folder ...
Creating env file ...
Saving configuration ...
yyyy-mm-ddThh24:mi:ss.xxxZ: Agent Started.
##[Error] yyyy-mm-ddThh24:mi:ss.xxxZ: Could not create an agent session.  Retrying in 15 sec
##[Error] yyyy-mm-ddThh24:mi:ss.xxxZ: Failed Request: Forbidden(403) - https://sample.visualstudio.com/_apis/distributedtask/pools/1/sessions

Visual Studio Onlineのホーム画面にアクセスし、歯車のマークをクリックする。

Home

[Agent pools]をクリックする。

Settings

[Agent pools]の[Default]の左にある▷をクリックする。

Agent pools

[Agent Pool Administrators]をクリックする。

Agent pools Default

[Add…]をクリックする。

Agent pools Default Agent Pool Administrators

[Alternate authenthication credentials]で設定したUser nameを追加し、[Save changes]をクリックする。

New Agent pools Default Agent Pool Administrators

追加されたことを確認したら、[Agent Pool Service Accounts]にも同様に追加する。

Agent pools Default Agent Pool Administrators

[Agent Pool Service Accounts]にも追加後、再度以下のnode agent/vsoagentを実行すると、セッションの確立に成功する。

$ node agent/vsoagent