私は、ASP.NET Coreアプリケーションのためのかなり標準的なセットアップを行っています - Azureでホストされているライブアプリケーションを使ってGitHubのソースコントロールを行い、VSTS上でCIビルドをトリガーするマスターブランチを変更します。 DB接続文字列はappsettings.jsonにあり、通常はlocaldbインスタンスを指しています。 Azureにデプロイするには、Azure SQL DB(最初の公開時に設定していなかった)を指しておきます。 アプリサービス自体は、Azure上にDBなしでアプリサービスとして設定されていました。つまり、起床した直後に行うべきではありません。ただし、アプリサービスとDBの両方が同じリソースグループにリンクされています。VSTS配備:appsettings.jsonの変数を置き換えることができません
私が直面している問題は、VSTS経由でCIビルドをトリガするたびにビルドは機能しますが、CIビルド変数で定義されている接続文字列に置き換えようとする時点でリリースが失敗するということです。
2017-07-09T08:47:02.7205410Z ##[section]Starting: Deploy Azure App Service 2017-07-09T08:47:02.7415413Z ============================================================================== 2017-07-09T08:47:02.7415413Z Task : Azure App Service Deploy 2017-07-09T08:47:02.7415413Z Description : Update Azure App Service using Web Deploy/Kudu REST APIs 2017-07-09T08:47:02.7415413Z Version : 3.3.9 2017-07-09T08:47:02.7415413Z Author : Microsoft Corporation 2017-07-09T08:47:02.7415413Z Help : 2017-07-09T08:47:02.7415413Z ============================================================================== 2017-07-09T08:47:06.5658468Z Got connection details for Azure App Service:'BlackscarsSheetsSwtor' 2017-07-09T08:47:07.6978989Z ##[error]Error: NO JSON file matched with specific pattern: appsettings,json.
私は**/appsettings.jsonの代わりappsettings.jsonを示すログにかかわらず、まったく同じエラーで会ったことが、解決策hereを試してみました。
これはこれは、それは私が何かをfessedてきたことは完全に可能ですので、ビルドとリリースの定義での作業私の初めてですappsettings.jsonファイル
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=Telvee32.BlackscarsSheetsSwtor.Db;Trusted_Connection=True;MultipleActiveResultSets=true"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning"
}
}
}
です実際の定義はAzureによって自動的に作成され、私がこれをやるまではうまくいきました。アプリケーションがDBに依存していることを考えると、defini適切に動作する必要があります。