Ich habe eine ziemlich Standard-Setup für eine ASP.NET Core-Anwendung - Quellcodeverwaltung auf GitHub mit der Live-Anwendung auf Azure gehostet, mit Stammzweig Änderungen Auslöser CI-Builds auf VSTS. Die DB-Verbindungszeichenfolge befindet sich in appsettings.json und verweist normalerweise auf eine localdb-Instanz. Bei der Bereitstellung in Azure möchte ich auf eine Azure SQL-Datenbank verweisen (die ich während der ersten Veröffentlichung nicht eingerichtet hatte). Der App-Service selbst wurde auf Azure als App-Service ohne DB eingerichtet - mit anderen Worten, ich hätte das nicht gleich nach dem Aufwachen tun sollen. Der App-Dienst und die DB sind jedoch mit derselben Ressourcengruppe verknüpft. Das Problem, dem ich gegenüberstehe, ist, dass, wenn ich ein CI-Build über VSTS triggere, der Build funktioniert, aber das Release fällt an dem Punkt, an dem es versucht, die Verbindungszeichenfolge durch die in den CI-Buildvariablen definierte Zeichenfolge zu ersetzen.VSTS deploy: Kann Variablen in appsettings.json nicht ersetzen
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.
Ich habe versucht, die Lösung here, nur mit genau dem gleichen Fehler erfüllt werden, wenn auch mit dem Protokoll zeigt **/appsettings.json statt appsettings.json.
Dies ist die appsettings.json Datei
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=Telvee32.BlackscarsSheetsSwtor.Db;Trusted_Connection=True;MultipleActiveResultSets=true"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning"
}
}
}
Dies ist mein erstes Mal mit Build arbeiten und Definitionen freizugeben, so ist es durchaus möglich, das ich etwas nach oben fessed habe , aber die tatsächlichen Definitionen wurden automatisch von Azure erstellt und funktionierten gut, bis ich damit anfing, was, da die Anwendung von einer DB abhängig ist, defini Das muss richtig funktionieren.