6

Visual Studio Team Serviceアカウントを設定してプライベートGitHubリポジトリをクローンし、ビルドをキューに入れるといつでもWindows UWPアプリケーションをビルドします。クローニングは問題なく動作します。すべてのプロジェクト(6)の編集は1つを除いて行われます。 Windows UWPアプリプロジェクト。VisualStudio.comはビルド中に一時的なUWP証明書をロードできません

ビルドサーバーは、アプリケーションをコンパイルしている間、私は次の警告を受ける:

C:\プログラムファイル(x86の)\ MSBuildの\マイクロソフト\ VisualStudioを\ v14.0 \ AppxPackage \ Microsoft.AppXPackage.Targets( 1778,5): 警告APPX0104:証明書ファイル 'myapp_TemporaryKey.pfx'が見つかりません。

2> C:\プログラムファイル(x86の)\ MSBuildの\マイクロソフト\ VisualStudioを\ v14.0 \ AppxPackage \ Microsoft.AppXPackage.Targets(1778,5): 警告APPX0104:証明書ファイル 'myapp_TemporaryKey.pfx' ではありません見つかりました。 [C:¥a¥1¥s¥Source¥Applications¥myapp.WindowsUWP¥myapp.csproj】

C:¥Program Files(x86)¥MSBuild¥Microsoft¥VisualStudio¥v14.0¥AppxPackage¥Microsoft.AppXPackage 。ターゲット(1778,5): 警告APPX0102:プロジェクトで指定された拇印 '58F2EA544193F6FC9F2737135570555B388E58D8'の証明書が証明書ストアに見つかりません。プロジェクトファイルに有効なサムプリントを指定してください。

2> C:\プログラムファイル(x86の)\ MSBuildの\マイクロソフト\ VisualStudioを\ v14.0 \ AppxPackage \ Microsoft.AppXPackage.Targets(1778,5): 警告APPX0102:拇印を持つ証明書の58F2EA544193F6FC9F2737135570555B388E58D8 "証明書ストアでプロジェクトが見つかりません。プロジェクトファイルに有効なサムプリントを指定してください。 [C:¥a¥1¥s¥Source¥Applications¥myapp.WindowsUWP¥myapp.csproj】

C:¥Program Files(x86)¥MSBuild¥Microsoft¥VisualStudio¥v14.0¥AppxPackage¥Microsoft.AppXPackage 。ターゲット(1778,5): 警告APPX0107:指定された証明書が署名に有効ではありません。有効な証明書の詳細については、http://go.microsoft.com/fwlink/?LinkID=241478を参照してください。 2> C:¥Program Files(x86)¥MSBuild¥Microsoft¥VisualStudio¥v14.0¥AppxPackage¥Microsoft.AppXPackage.Targets(1778,5): 警告APPX0107:指定された証明書が署名に有効ではありません。有効な証明書の詳細については、http://go.microsoft.com/fwlink/?LinkID=241478を参照してください。 [C:\ a \ 1 \ s \ソース\アプリケーション\ myapp.WindowsUWP \ myapp.csproj]

これは、6のうち最後のプロジェクトです。警告が表示されたら、すべての出力ファイルを最終的な/ binディレクトリにコピーします。それがすべて完了したら、上記と同じメッセージを報告しますが、今度はエラーとしてビルドに失敗します。

_GenerateAppxPackageFile: C:\プログラムファイル(x86の)\ Windowsのキット\ 10 \ binに\ x64の\ MakeAppx.exeパック/リットル/時間SHA256/F OBJ \ X86 \デバッグ\ package.map.txt /アプリケーション\ MyApp.WindowsUWP \ AppPackages \ MyApp_1.0.0.0_x86_Debug_Test \ MyApp_1.0.0.0_x86_Debug.appx
MyApp - > C:\ a \ 1 \ s \ Source \アプリケーション\ MyApp.WindowsUWP \ AppPackages \ MyApp_1.0.0.0_x86_Debug_Test \ MyApp_1.0.0.0_x86_Debug.appx C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ AppxPackage \ Microsoft.AppXPackage.Targets 2382,5):エラーAPPX0104:証明書ファイル 'MyApp_TemporaryKey.pfx'が見つかりません。2> C:¥Program Files(x86)¥MSBuild¥Microsoft¥VisualStudio¥v14.0¥AppxPackage¥Microsoft.AppXPackage.Targets(2382,5):エラーAPPX0104:証明書ファイル 'MyApp_TemporaryKey.pfx'が見つかりません。 [C:\ a \ 1 \ s \ Source \ Applications \ MyApp.WindowsUWP \ MyApp.csproj] C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ AppxPackage \ Microsoft.AppXPackage。ターゲット(2382,5):エラーAPPX0102:プロジェクトで指定された拇印 '58F2EA544193F6FC9F2737135570555B388E58D8'の証明書が証明書ストアに見つかりません。プロジェクトファイルに有効なサムプリントを指定してください。2> C:¥Program Files(x86)¥MSBuild¥Microsoft¥VisualStudio¥v14.0¥AppxPackage¥Microsoft.AppXPackage.Targets(2382,5):エラーAPPX0102:拇印「58F2EA544193F6FC9F2737135570555B388E58D8」の証明書が、プロジェクトが証明書ストアに見つかりません。プロジェクトファイルに有効なサムプリントを指定してください。 [C:\ a \ 1 \ s \ Source \ Applications \ MyApp.WindowsUWP \ MyApp.csproj] C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v14.0 \ AppxPackage \ Microsoft.AppXPackage.Targets 2382,5):エラーAPPX0107:指定された証明書が署名に有効ではありません。有効な証明書の詳細については、http://go.microsoft.com/fwlink/?LinkID=241478を参照してください。2:C:¥Program Files(x86)¥MSBuild¥Microsoft¥VisualStudio¥v14.0¥AppxPackage¥Microsoft.AppXPackage.Targets(2382,5):エラーAPPX0107:指定された証明書が署名に有効ではありません。有効な証明書の詳細については、http://go.microsoft.com/fwlink/?LinkID=241478を参照してください。 [C:\ a \ 1 \ s \ Source \ Applications \ MyApp.WindowsUWP \ MyApp.csproj] 2>ビルドプロジェクト "C:\ a \ 1 \ Source \ Applications \ MyApp.WindowsUWP \ MyApp.csproj" (デフォルトのターゲット) - FAILED。 1>ビルドプロジェクト "C:\ a \ 1 \ s \ Source \ MyApp.UWP.sln"(デフォルトターゲット) - FAILED。 ビルドに失敗しました。 "C:\ A \ 1 \ sの\ソース\ MyApp.UWP.sln"(デフォルトターゲット)(1) - >

(私は、この特定のエラー・ログに行ったように)私は、証明書を削除した場合それが見つからないので失敗します。 VSのマニフェストエディタを使用しての証明書を生成し、それにパスワードを割り当てると、パスワードを知らないためビルドサーバーが失敗します。だから私は一時的なテスト証明書を提供するかどうかを構築することはできません。

Visual Studio Team Servicesビルドシステムを使用してWindows 10 UWPアプリケーションを実行するにはどうすればよいですか?これはマイクロソフトがしばらく進めてきたことなので、これはできることだと思った。私はUWPプロジェクトを実際にビルドすることはできません。

答えて

4

パスワードを割り当てずに証明書を生成できます。

また、ビルド定義にPowerShellのステップを追加して、パスワードで保護された証明書をインポートします。 PowerShellスクリプトを使用すると、使用することができ、次のとおりです。

$pfxpath = 'myapp_TemporaryKey.pfx' 
$password = 'yourpassword' 

Add-Type -AssemblyName System.Security 
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 
$cert.Import($pfxpath, $password, [System.Security.Cryptography.X509Certificates.X509KeyStorageFlags]"PersistKeySet") 
$store = new-object system.security.cryptography.X509Certificates.X509Store -argumentlist "MY", CurrentUser 
$store.Open([System.Security.Cryptography.X509Certificates.OpenFlags]"ReadWrite") 
$store.Add($cert) 
$store.Close() 

があなたのPFXファイルが置かパスに「作業フォルダ」を設定することを忘れないでください。

2

デフォルトでは、.gitignoreはすべて*.pfxファイルを無視します。したがって、gitには追加されません。ビルドマシンには*_StoreKey.pfxファイルがないため、ビルドが成功しなかったという同じ問題がありました。

解決策は、*_StoreKey.pfxをビルドサーバーにインストールすることでした。ビルドサーバーでソリューションをビルドすると成功します。

+0

ストアキーをソースに追加するのはセキュリティ上のリスクですか?つまり、オープンソースのレポであれば確かにそうですが、プライベート/クローズドリポジトリの場合は問題ではありませんか? – Patric

+1

@Patricこのプライベートreproがどこにあるかによって異なります。遠隔のものはセキュリティリスクとみなされるべきです。私は今、TFSOの 'Secure file'機能を使用しています –

関連する問題