diff --git a/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAppConfig.cs b/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAppConfig.cs index 3f2ef78627..e8238bf0ec 100644 --- a/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAppConfig.cs +++ b/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAppConfig.cs @@ -4,6 +4,7 @@ using System.Configuration; using System.Data.Common; using System.IO; + using System.Linq; using Instances; using NuGet.Versioning; @@ -21,6 +22,9 @@ protected override void UpdateSettings() var settings = Config.AppSettings.Settings; var version = details.Version; + //ServiceControl.Audit.Persistence.RavenDB.RavenPersistenceConfiguration.ConnectionStringKey + var hasOnlyRemoteRavenDbConnection = settings.AllKeys.Contains("RavenDB/ConnectionString") + && !settings.AllKeys.Contains(AuditInstanceSettingsList.DBPath.Name); settings.Set(ServiceControlSettings.InstanceName, details.InstanceName, version); settings.Set(ServiceControlSettings.VirtualDirectory, details.VirtualDirectory); @@ -28,7 +32,10 @@ protected override void UpdateSettings() settings.Set(ServiceControlSettings.DatabaseMaintenancePort, details.DatabaseMaintenancePort.ToString(), version); settings.Set(ServiceControlSettings.HostName, details.HostName); settings.Set(ServiceControlSettings.LogPath, details.LogPath); - settings.Set(ServiceControlSettings.DBPath, details.DBPath); + if (hasOnlyRemoteRavenDbConnection) + { + settings.Set(ServiceControlSettings.DBPath, details.DBPath); + } settings.Set(ServiceControlSettings.ForwardErrorMessages, details.ForwardErrorMessages.ToString(), version); settings.Set(ServiceControlSettings.TransportType, details.TransportPackage.Name, version); settings.Set(ServiceControlSettings.PersistenceType, details.PersistenceManifest.Name); // TODO: Why is it set here AND at ServiceControlInstance.ApplySettingsChanges 🤬 diff --git a/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAuditAppConfig.cs b/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAuditAppConfig.cs index 81386283eb..84851db9a0 100644 --- a/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAuditAppConfig.cs +++ b/src/ServiceControlInstaller.Engine/Configuration/ServiceControl/ServiceControlAuditAppConfig.cs @@ -36,8 +36,18 @@ protected override void UpdateSettings() // Windows via SCMU or PowerShell settings.Set(AuditInstanceSettingsList.ShutdownTimeout, "00:02:00", version); + //ServiceControl.Audit.Persistence.RavenDB.RavenPersistenceConfiguration.ConnectionStringKey + var hasOnlyRemoteRavenDbConnection = settings.AllKeys.Contains("RavenDB/ConnectionString") + && !settings.AllKeys.Contains(AuditInstanceSettingsList.DBPath.Name); + foreach (var manifestSetting in instance.PersistenceManifest.Settings) { + if (manifestSetting.Name == AuditInstanceSettingsList.DBPath.Name + && hasOnlyRemoteRavenDbConnection) + { + continue; + } + if (!settings.AllKeys.Contains(manifestSetting.Name)) { var value = manifestSetting.DefaultValue;