50 lines
1.5 KiB
C#
50 lines
1.5 KiB
C#
using MoonCore.Helpers;
|
|
|
|
namespace MoonlightServers.Daemon.Configuration;
|
|
|
|
public class AppConfiguration
|
|
{
|
|
public DockerData Docker { get; set; } = new();
|
|
public StorageData Storage { get; set; } = new();
|
|
public SecurityData Security { get; set; } = new();
|
|
public RemoteData Remote { get; set; } = new();
|
|
public FilesData Files { get; set; } = new();
|
|
|
|
public class RemoteData
|
|
{
|
|
public string Url { get; set; }
|
|
}
|
|
|
|
public class DockerData
|
|
{
|
|
public string Uri { get; set; } = "unix:///var/run/docker.sock";
|
|
public DockerCredentialData[] Credentials { get; set; } = [];
|
|
|
|
public class DockerCredentialData
|
|
{
|
|
public string Domain { get; set; }
|
|
public string Username { get; set; }
|
|
public string Password { get; set; }
|
|
public string Email { get; set; }
|
|
}
|
|
}
|
|
|
|
public class SecurityData
|
|
{
|
|
public string Token { get; set; }
|
|
public string TokenId { get; set; }
|
|
}
|
|
|
|
public class StorageData
|
|
{
|
|
public string Volumes { get; set; } = PathBuilder.Dir("volumes");
|
|
public string VirtualDisks { get; set; } = PathBuilder.Dir("virtualDisks");
|
|
public string Backups { get; set; } = PathBuilder.Dir("backups");
|
|
public string Install { get; set; } = PathBuilder.Dir("install");
|
|
}
|
|
|
|
public class FilesData
|
|
{
|
|
public int UploadLimit { get; set; } = 500;
|
|
}
|
|
} |