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;
|
2020-05-09 03:56:06 +00:00
|
|
|
|
|
2021-10-23 16:51:17 +00:00
|
|
|
|
namespace Wabbajack.BuildServer;
|
|
|
|
|
|
|
|
|
|
public class AppSettings
|
2020-05-09 03:56:06 +00:00
|
|
|
|
{
|
2021-10-23 16:51:17 +00:00
|
|
|
|
public AppSettings(IConfiguration config)
|
2020-05-09 03:56:06 +00:00
|
|
|
|
{
|
2021-10-23 16:51:17 +00:00
|
|
|
|
config.Bind("WabbajackSettings", this);
|
2020-05-09 03:56:06 +00:00
|
|
|
|
}
|
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; }
|
2022-06-08 03:48:13 +00:00
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
2021-12-17 14:20:40 +00:00
|
|
|
|
public string PatchesFilesFolder { get; set; }
|
2021-12-17 23:40:45 +00:00
|
|
|
|
public string MirrorFilesFolder { get; set; }
|
2022-01-17 17:02:52 +00:00
|
|
|
|
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; } = "";
|
2022-06-20 23:21:04 +00:00
|
|
|
|
|
|
|
|
|
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; }
|
2022-06-20 23:21:04 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
}
|