2016-08-09 14 views
0

AzureサブスクリプションにアクセスするためにVSTS設定によって設定されたResource Managerサービスプリンシパルがあります。 PowerShell Resource Managerをタスクに組み込んで使用すると、すばらしいことがすべて実行されます。しかし、Xamarinプロジェクトをビルドする必要があるため、Mac上で実行されているビルドエージェントがあります。VSTSリリース定義のAzure CLIでService Principalを使用

Xamarinが.ipaをビルドした後、ブロブストレージにアップロードする必要があります。私たちは自分自身でトークンを保存するのではなく、すべてのリリースでサービスプリンシパルを使用してAzureからストレージアクセストークンを取得したいと思いますが、私たちはMac上で動作しているためPowershellにアクセスできません。 Azure CLIを使用できますが、Powershell Azure RMタスクで使用されているのと同じサービスプリンシパル情報にアクセスする必要があります。

アイデア?

答えて

1

ビルドとアップロードのアクションをビルドとリリースに分けることができます。ビルド定義で、Xamarinビルドを実行し、Macエージェントを使用して.ipaファイルをアーティファクトにパブリッシュし、リリース定義でアーティファクトをWindowsエージェントのAzure Blobにアップロードします。

+0

ええ、それは考えです。残念ながら、私たちはいくつかの環境を持っており、セットアップとメンテナンスが必要なVSTS環境の数を倍増させることができます。各環境のビルドと各環境のリリースです。複雑な部分は、各環境の設定を切り替えて同じビルド成果物を使用できるASP.NETサイトとは異なり、IPAを各設定変更AFAIKで再構築する必要があることです。これが唯一の方法であれば、これを追求しなければならないかもしれませんが、mac側からのサービス接続を使用する方法があるといいでしょう。 – Seafish

関連する問題