wabbajack/Wabbajack.Server/AppSettings.cs

60 lines
1.8 KiB
C#
Raw Normal View History

2023-10-12 12:04:38 +00:00
using Amazon.S3;
using Microsoft.Extensions.Configuration;
2021-09-27 12:42:46 +00:00
using Wabbajack.Paths;
2021-10-23 16:51:17 +00:00
namespace Wabbajack.BuildServer;
public class AppSettings
{
2021-10-23 16:51:17 +00:00
public AppSettings(IConfiguration config)
{
2021-10-23 16:51:17 +00:00
config.Bind("WabbajackSettings", this);
}
2021-10-23 16:51:17 +00:00
public bool TestMode { get; set; }
2022-06-25 20:22:06 +00:00
public bool RunBackendNexusRoutines { get; set; } = true;
2021-11-27 18:31:35 +00:00
public string AuthorAPIKeyFile { get; set; }
2022-02-09 18:24:31 +00:00
public string TarKeyFile { get; set; }
2021-10-23 16:51:17 +00:00
public string WabbajackBuildServerUri { get; set; } = "https://build.wabbajack.org/";
public string MetricsKeyHeader { get; set; } = "x-metrics-key";
public string TempFolder { get; set; }
public string ProxyFolder { get; set; }
public AbsolutePath ProxyPath => (AbsolutePath) ProxyFolder;
2021-10-23 16:51:17 +00:00
public AbsolutePath TempPath => (AbsolutePath) TempFolder;
2022-10-08 03:43:44 +00:00
public string SpamWebHook { get; set; } = "";
public string HamWebHook { get; set; } = "";
2022-01-18 22:58:54 +00:00
public string DiscordKey { get; set; }
2021-11-27 18:31:35 +00:00
public string PatchesFilesFolder { get; set; }
2021-12-17 23:40:45 +00:00
public string MirrorFilesFolder { get; set; }
public string NexusCacheFolder { get; set; }
2021-11-27 20:18:41 +00:00
public string MetricsFolder { get; set; } = "";
2021-11-27 18:31:35 +00:00
public string TarLogPath { get; set; }
2021-11-27 20:18:41 +00:00
public string GitHubKey { get; set; } = "";
public CouchDBSetting CesiDB { get; set; }
public CouchDBSetting MetricsDB { get; set; }
2023-10-12 12:04:38 +00:00
public S3Settings AuthoredFilesS3 { get; set; }
}
public class S3Settings
{
public string AccessKey { get; set; }
public string SecretKey { get; set; }
public string ServiceURL { get; set; }
public string BucketName { get; set; }
public string BucketCacheFile { get; set; }
}
public class CouchDBSetting
{
public Uri Endpoint { get; set; }
public string Database { get; set; }
public string Username { get; set; }
public string Password { get; set; }
2021-10-23 16:51:17 +00:00
}