1
0
mirror of https://github.com/Radarr/Radarr.git synced 2024-09-17 15:02:34 +02:00

Fixed: Ensure default config file on starting app

(cherry picked from commit 5326a102e23eacfc1132eb544a92af737a531df5)
This commit is contained in:
Bogdan 2023-04-09 03:55:30 +03:00 committed by Qstick
parent 621acbef9a
commit d0fcac389c
2 changed files with 5 additions and 2 deletions

View File

@ -26,6 +26,7 @@ public interface IConfigFileProvider : IHandleAsync<ApplicationStartedEvent>,
XDocument LoadConfigFile(); XDocument LoadConfigFile();
Dictionary<string, object> GetConfigDictionary(); Dictionary<string, object> GetConfigDictionary();
void SaveConfigDictionary(Dictionary<string, object> configValues); void SaveConfigDictionary(Dictionary<string, object> configValues);
void EnsureDefaultConfigFile();
string BindAddress { get; } string BindAddress { get; }
int Port { get; } int Port { get; }
@ -253,7 +254,7 @@ public bool GetValueBoolean(string key, bool defaultValue, bool persist = true)
public T GetValueEnum<T>(string key, T defaultValue, bool persist = true) public T GetValueEnum<T>(string key, T defaultValue, bool persist = true)
{ {
return (T)Enum.Parse(typeof(T), GetValue(key, defaultValue), persist); return (T)Enum.Parse(typeof(T), GetValue(key, defaultValue, persist));
} }
public string GetValue(string key, object defaultValue, bool persist = true) public string GetValue(string key, object defaultValue, bool persist = true)
@ -312,7 +313,7 @@ public void SetValue(string key, Enum value)
SetValue(key, value.ToString().ToLower()); SetValue(key, value.ToString().ToLower());
} }
private void EnsureDefaultConfigFile() public void EnsureDefaultConfigFile()
{ {
if (!File.Exists(_configFile)) if (!File.Exists(_configFile))
{ {

View File

@ -224,6 +224,8 @@ public void Configure(IApplicationBuilder app,
appFolderFactory.Register(); appFolderFactory.Register();
pidFileProvider.Write(); pidFileProvider.Write();
configFileProvider.EnsureDefaultConfigFile();
reconfigureLogging.Reconfigure(); reconfigureLogging.Reconfigure();
EnsureSingleInstance(false, startupContext, singleInstancePolicy); EnsureSingleInstance(false, startupContext, singleInstancePolicy);