diff --git a/MoonlightServers.ApiServer/Database/Migrations/20241205154432_AddedBaseModels.Designer.cs b/MoonlightServers.ApiServer/Database/Migrations/20241205154432_AddedBaseModels.Designer.cs
deleted file mode 100644
index 1eacfe9..0000000
--- a/MoonlightServers.ApiServer/Database/Migrations/20241205154432_AddedBaseModels.Designer.cs
+++ /dev/null
@@ -1,427 +0,0 @@
-//
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Metadata;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-using MoonlightServers.ApiServer.Database;
-
-#nullable disable
-
-namespace MoonlightServers.ApiServer.Database.Migrations
-{
- [DbContext(typeof(ServersDataContext))]
- [Migration("20241205154432_AddedBaseModels")]
- partial class AddedBaseModels
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasDefaultSchema("Servers")
- .HasAnnotation("ProductVersion", "8.0.11")
- .HasAnnotation("Relational:MaxIdentifierLength", 64);
-
- MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Allocation", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("IpAddress")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("NodeId")
- .HasColumnType("int");
-
- b.Property("Port")
- .HasColumnType("int");
-
- b.Property("ServerId")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("NodeId");
-
- b.HasIndex("ServerId");
-
- b.ToTable("Allocations", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Node", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("EnableDynamicFirewall")
- .HasColumnType("tinyint(1)");
-
- b.Property("EnableTransparentMode")
- .HasColumnType("tinyint(1)");
-
- b.Property("Fqdn")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("FtpPort")
- .HasColumnType("int");
-
- b.Property("HttpPort")
- .HasColumnType("int");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Token")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.ToTable("Nodes", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Bandwidth")
- .HasColumnType("int");
-
- b.Property("Cpu")
- .HasColumnType("int");
-
- b.Property("Disk")
- .HasColumnType("int");
-
- b.Property("DockerImageIndex")
- .HasColumnType("int");
-
- b.Property("Memory")
- .HasColumnType("int");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("NodeId")
- .HasColumnType("int");
-
- b.Property("OwnerId")
- .HasColumnType("int");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.Property("StartupOverride")
- .HasColumnType("longtext");
-
- b.Property("UseVirtualDisk")
- .HasColumnType("tinyint(1)");
-
- b.HasKey("Id");
-
- b.HasIndex("NodeId");
-
- b.HasIndex("StarId");
-
- b.ToTable("Servers", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerBackup", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Completed")
- .HasColumnType("tinyint(1)");
-
- b.Property("CompletedAt")
- .HasColumnType("datetime(6)");
-
- b.Property("CreatedAt")
- .HasColumnType("datetime(6)");
-
- b.Property("Size")
- .HasColumnType("bigint");
-
- b.Property("Successful")
- .HasColumnType("tinyint(1)");
-
- b.HasKey("Id");
-
- b.ToTable("ServerBackups", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerVariable", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Key")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("ServerId")
- .HasColumnType("int");
-
- b.Property("Value")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.HasIndex("ServerId");
-
- b.ToTable("ServerVariables", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Star", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AllowDockerImageChange")
- .HasColumnType("tinyint(1)");
-
- b.Property("Author")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("DonateUrl")
- .HasColumnType("longtext");
-
- b.Property("InstallDockerImage")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("InstallScript")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("InstallShell")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("OnlineDetection")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("ParseConfiguration")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("RequiredAllocations")
- .HasColumnType("int");
-
- b.Property("StartupCommand")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("StopCommand")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("UpdateUrl")
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.ToTable("Stars", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarDockerImage", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AutoPulling")
- .HasColumnType("tinyint(1)");
-
- b.Property("DisplayName")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Identifier")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("StarId");
-
- b.ToTable("StarDockerImages", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarVariable", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AllowEditing")
- .HasColumnType("tinyint(1)");
-
- b.Property("AllowViewing")
- .HasColumnType("tinyint(1)");
-
- b.Property("DefaultValue")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Description")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Filter")
- .HasColumnType("longtext");
-
- b.Property("Key")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.Property("Type")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("StarId");
-
- b.ToTable("StarVariables", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Allocation", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Node", "Node")
- .WithMany("Allocations")
- .HasForeignKey("NodeId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Server", "Server")
- .WithMany("Allocations")
- .HasForeignKey("ServerId");
-
- b.Navigation("Node");
-
- b.Navigation("Server");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Node", "Node")
- .WithMany("Servers")
- .HasForeignKey("NodeId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Star", "Star")
- .WithMany()
- .HasForeignKey("StarId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Node");
-
- b.Navigation("Star");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerVariable", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Server", "Server")
- .WithMany()
- .HasForeignKey("ServerId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Server");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarDockerImage", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Star", "Star")
- .WithMany("DockerImages")
- .HasForeignKey("StarId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Star");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarVariable", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Star", "Star")
- .WithMany("Variables")
- .HasForeignKey("StarId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Star");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Node", b =>
- {
- b.Navigation("Allocations");
-
- b.Navigation("Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.Navigation("Allocations");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Star", b =>
- {
- b.Navigation("DockerImages");
-
- b.Navigation("Variables");
- });
-#pragma warning restore 612, 618
- }
- }
-}
diff --git a/MoonlightServers.ApiServer/Database/Migrations/20241205154432_AddedBaseModels.cs b/MoonlightServers.ApiServer/Database/Migrations/20241205154432_AddedBaseModels.cs
deleted file mode 100644
index af09afa..0000000
--- a/MoonlightServers.ApiServer/Database/Migrations/20241205154432_AddedBaseModels.cs
+++ /dev/null
@@ -1,342 +0,0 @@
-using System;
-using Microsoft.EntityFrameworkCore.Metadata;
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace MoonlightServers.ApiServer.Database.Migrations
-{
- ///
- public partial class AddedBaseModels : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.EnsureSchema(
- name: "Servers");
-
- migrationBuilder.AlterDatabase()
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "Nodes",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- Name = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Fqdn = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Token = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- HttpPort = table.Column(type: "int", nullable: false),
- FtpPort = table.Column(type: "int", nullable: false),
- EnableTransparentMode = table.Column(type: "tinyint(1)", nullable: false),
- EnableDynamicFirewall = table.Column(type: "tinyint(1)", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_Nodes", x => x.Id);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "ServerBackups",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- CreatedAt = table.Column(type: "datetime(6)", nullable: false),
- CompletedAt = table.Column(type: "datetime(6)", nullable: false),
- Size = table.Column(type: "bigint", nullable: false),
- Successful = table.Column(type: "tinyint(1)", nullable: false),
- Completed = table.Column(type: "tinyint(1)", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_ServerBackups", x => x.Id);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "Stars",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- Name = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Author = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- UpdateUrl = table.Column(type: "longtext", nullable: true)
- .Annotation("MySql:CharSet", "utf8mb4"),
- DonateUrl = table.Column(type: "longtext", nullable: true)
- .Annotation("MySql:CharSet", "utf8mb4"),
- StartupCommand = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- StopCommand = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- OnlineDetection = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- InstallShell = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- InstallDockerImage = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- InstallScript = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- RequiredAllocations = table.Column(type: "int", nullable: false),
- AllowDockerImageChange = table.Column(type: "tinyint(1)", nullable: false),
- ParseConfiguration = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4")
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_Stars", x => x.Id);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "Servers",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- StarId = table.Column(type: "int", nullable: false),
- NodeId = table.Column(type: "int", nullable: false),
- Name = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- OwnerId = table.Column(type: "int", nullable: false),
- StartupOverride = table.Column(type: "longtext", nullable: true)
- .Annotation("MySql:CharSet", "utf8mb4"),
- DockerImageIndex = table.Column(type: "int", nullable: false),
- Cpu = table.Column(type: "int", nullable: false),
- Memory = table.Column(type: "int", nullable: false),
- Disk = table.Column(type: "int", nullable: false),
- UseVirtualDisk = table.Column(type: "tinyint(1)", nullable: false),
- Bandwidth = table.Column(type: "int", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_Servers", x => x.Id);
- table.ForeignKey(
- name: "FK_Servers_Nodes_NodeId",
- column: x => x.NodeId,
- principalSchema: "Servers",
- principalTable: "Nodes",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- table.ForeignKey(
- name: "FK_Servers_Stars_StarId",
- column: x => x.StarId,
- principalSchema: "Servers",
- principalTable: "Stars",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "StarDockerImages",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- StarId = table.Column(type: "int", nullable: false),
- DisplayName = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Identifier = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- AutoPulling = table.Column(type: "tinyint(1)", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_StarDockerImages", x => x.Id);
- table.ForeignKey(
- name: "FK_StarDockerImages_Stars_StarId",
- column: x => x.StarId,
- principalSchema: "Servers",
- principalTable: "Stars",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "StarVariables",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- StarId = table.Column(type: "int", nullable: false),
- Name = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Description = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Key = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- DefaultValue = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- AllowViewing = table.Column(type: "tinyint(1)", nullable: false),
- AllowEditing = table.Column(type: "tinyint(1)", nullable: false),
- Type = table.Column(type: "int", nullable: false),
- Filter = table.Column(type: "longtext", nullable: true)
- .Annotation("MySql:CharSet", "utf8mb4")
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_StarVariables", x => x.Id);
- table.ForeignKey(
- name: "FK_StarVariables_Stars_StarId",
- column: x => x.StarId,
- principalSchema: "Servers",
- principalTable: "Stars",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "Allocations",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- NodeId = table.Column(type: "int", nullable: false),
- ServerId = table.Column(type: "int", nullable: true),
- IpAddress = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Port = table.Column(type: "int", nullable: false)
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_Allocations", x => x.Id);
- table.ForeignKey(
- name: "FK_Allocations_Nodes_NodeId",
- column: x => x.NodeId,
- principalSchema: "Servers",
- principalTable: "Nodes",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- table.ForeignKey(
- name: "FK_Allocations_Servers_ServerId",
- column: x => x.ServerId,
- principalSchema: "Servers",
- principalTable: "Servers",
- principalColumn: "Id");
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateTable(
- name: "ServerVariables",
- schema: "Servers",
- columns: table => new
- {
- Id = table.Column(type: "int", nullable: false)
- .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn),
- ServerId = table.Column(type: "int", nullable: false),
- Key = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4"),
- Value = table.Column(type: "longtext", nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4")
- },
- constraints: table =>
- {
- table.PrimaryKey("PK_ServerVariables", x => x.Id);
- table.ForeignKey(
- name: "FK_ServerVariables_Servers_ServerId",
- column: x => x.ServerId,
- principalSchema: "Servers",
- principalTable: "Servers",
- principalColumn: "Id",
- onDelete: ReferentialAction.Cascade);
- })
- .Annotation("MySql:CharSet", "utf8mb4");
-
- migrationBuilder.CreateIndex(
- name: "IX_Allocations_NodeId",
- schema: "Servers",
- table: "Allocations",
- column: "NodeId");
-
- migrationBuilder.CreateIndex(
- name: "IX_Allocations_ServerId",
- schema: "Servers",
- table: "Allocations",
- column: "ServerId");
-
- migrationBuilder.CreateIndex(
- name: "IX_Servers_NodeId",
- schema: "Servers",
- table: "Servers",
- column: "NodeId");
-
- migrationBuilder.CreateIndex(
- name: "IX_Servers_StarId",
- schema: "Servers",
- table: "Servers",
- column: "StarId");
-
- migrationBuilder.CreateIndex(
- name: "IX_ServerVariables_ServerId",
- schema: "Servers",
- table: "ServerVariables",
- column: "ServerId");
-
- migrationBuilder.CreateIndex(
- name: "IX_StarDockerImages_StarId",
- schema: "Servers",
- table: "StarDockerImages",
- column: "StarId");
-
- migrationBuilder.CreateIndex(
- name: "IX_StarVariables_StarId",
- schema: "Servers",
- table: "StarVariables",
- column: "StarId");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropTable(
- name: "Allocations",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "ServerBackups",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "ServerVariables",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "StarDockerImages",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "StarVariables",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "Servers",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "Nodes",
- schema: "Servers");
-
- migrationBuilder.DropTable(
- name: "Stars",
- schema: "Servers");
- }
- }
-}
diff --git a/MoonlightServers.ApiServer/Database/Migrations/20241206083153_AddedVersionTagForStar.Designer.cs b/MoonlightServers.ApiServer/Database/Migrations/20241206083153_AddedVersionTagForStar.Designer.cs
deleted file mode 100644
index 1834021..0000000
--- a/MoonlightServers.ApiServer/Database/Migrations/20241206083153_AddedVersionTagForStar.Designer.cs
+++ /dev/null
@@ -1,431 +0,0 @@
-//
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Metadata;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-using MoonlightServers.ApiServer.Database;
-
-#nullable disable
-
-namespace MoonlightServers.ApiServer.Database.Migrations
-{
- [DbContext(typeof(ServersDataContext))]
- [Migration("20241206083153_AddedVersionTagForStar")]
- partial class AddedVersionTagForStar
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasDefaultSchema("Servers")
- .HasAnnotation("ProductVersion", "8.0.11")
- .HasAnnotation("Relational:MaxIdentifierLength", 64);
-
- MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Allocation", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("IpAddress")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("NodeId")
- .HasColumnType("int");
-
- b.Property("Port")
- .HasColumnType("int");
-
- b.Property("ServerId")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("NodeId");
-
- b.HasIndex("ServerId");
-
- b.ToTable("Allocations", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Node", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("EnableDynamicFirewall")
- .HasColumnType("tinyint(1)");
-
- b.Property("EnableTransparentMode")
- .HasColumnType("tinyint(1)");
-
- b.Property("Fqdn")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("FtpPort")
- .HasColumnType("int");
-
- b.Property("HttpPort")
- .HasColumnType("int");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Token")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.ToTable("Nodes", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Bandwidth")
- .HasColumnType("int");
-
- b.Property("Cpu")
- .HasColumnType("int");
-
- b.Property("Disk")
- .HasColumnType("int");
-
- b.Property("DockerImageIndex")
- .HasColumnType("int");
-
- b.Property("Memory")
- .HasColumnType("int");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("NodeId")
- .HasColumnType("int");
-
- b.Property("OwnerId")
- .HasColumnType("int");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.Property("StartupOverride")
- .HasColumnType("longtext");
-
- b.Property("UseVirtualDisk")
- .HasColumnType("tinyint(1)");
-
- b.HasKey("Id");
-
- b.HasIndex("NodeId");
-
- b.HasIndex("StarId");
-
- b.ToTable("Servers", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerBackup", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Completed")
- .HasColumnType("tinyint(1)");
-
- b.Property("CompletedAt")
- .HasColumnType("datetime(6)");
-
- b.Property("CreatedAt")
- .HasColumnType("datetime(6)");
-
- b.Property("Size")
- .HasColumnType("bigint");
-
- b.Property("Successful")
- .HasColumnType("tinyint(1)");
-
- b.HasKey("Id");
-
- b.ToTable("ServerBackups", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerVariable", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Key")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("ServerId")
- .HasColumnType("int");
-
- b.Property("Value")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.HasIndex("ServerId");
-
- b.ToTable("ServerVariables", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Star", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AllowDockerImageChange")
- .HasColumnType("tinyint(1)");
-
- b.Property("Author")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("DonateUrl")
- .HasColumnType("longtext");
-
- b.Property("InstallDockerImage")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("InstallScript")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("InstallShell")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("OnlineDetection")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("ParseConfiguration")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("RequiredAllocations")
- .HasColumnType("int");
-
- b.Property("StartupCommand")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("StopCommand")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("UpdateUrl")
- .HasColumnType("longtext");
-
- b.Property("Version")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.ToTable("Stars", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarDockerImage", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AutoPulling")
- .HasColumnType("tinyint(1)");
-
- b.Property("DisplayName")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Identifier")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("StarId");
-
- b.ToTable("StarDockerImages", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarVariable", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AllowEditing")
- .HasColumnType("tinyint(1)");
-
- b.Property("AllowViewing")
- .HasColumnType("tinyint(1)");
-
- b.Property("DefaultValue")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Description")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Filter")
- .HasColumnType("longtext");
-
- b.Property("Key")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.Property("Type")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("StarId");
-
- b.ToTable("StarVariables", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Allocation", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Node", "Node")
- .WithMany("Allocations")
- .HasForeignKey("NodeId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Server", "Server")
- .WithMany("Allocations")
- .HasForeignKey("ServerId");
-
- b.Navigation("Node");
-
- b.Navigation("Server");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Node", "Node")
- .WithMany("Servers")
- .HasForeignKey("NodeId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Star", "Star")
- .WithMany()
- .HasForeignKey("StarId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Node");
-
- b.Navigation("Star");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerVariable", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Server", "Server")
- .WithMany()
- .HasForeignKey("ServerId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Server");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarDockerImage", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Star", "Star")
- .WithMany("DockerImages")
- .HasForeignKey("StarId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Star");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.StarVariable", b =>
- {
- b.HasOne("MoonlightServers.ApiServer.Database.Entities.Star", "Star")
- .WithMany("Variables")
- .HasForeignKey("StarId")
- .OnDelete(DeleteBehavior.Cascade)
- .IsRequired();
-
- b.Navigation("Star");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Node", b =>
- {
- b.Navigation("Allocations");
-
- b.Navigation("Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.Navigation("Allocations");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Star", b =>
- {
- b.Navigation("DockerImages");
-
- b.Navigation("Variables");
- });
-#pragma warning restore 612, 618
- }
- }
-}
diff --git a/MoonlightServers.ApiServer/Database/Migrations/20241206083153_AddedVersionTagForStar.cs b/MoonlightServers.ApiServer/Database/Migrations/20241206083153_AddedVersionTagForStar.cs
deleted file mode 100644
index 60778f5..0000000
--- a/MoonlightServers.ApiServer/Database/Migrations/20241206083153_AddedVersionTagForStar.cs
+++ /dev/null
@@ -1,31 +0,0 @@
-using Microsoft.EntityFrameworkCore.Migrations;
-
-#nullable disable
-
-namespace MoonlightServers.ApiServer.Database.Migrations
-{
- ///
- public partial class AddedVersionTagForStar : Migration
- {
- ///
- protected override void Up(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.AddColumn(
- name: "Version",
- schema: "Servers",
- table: "Stars",
- type: "longtext",
- nullable: false)
- .Annotation("MySql:CharSet", "utf8mb4");
- }
-
- ///
- protected override void Down(MigrationBuilder migrationBuilder)
- {
- migrationBuilder.DropColumn(
- name: "Version",
- schema: "Servers",
- table: "Stars");
- }
- }
-}
diff --git a/MoonlightServers.ApiServer/Database/Migrations/20241211075318_AddedDefaultDockerImageField.Designer.cs b/MoonlightServers.ApiServer/Database/Migrations/20241211075318_AddedDefaultDockerImageField.Designer.cs
deleted file mode 100644
index 131800f..0000000
--- a/MoonlightServers.ApiServer/Database/Migrations/20241211075318_AddedDefaultDockerImageField.Designer.cs
+++ /dev/null
@@ -1,434 +0,0 @@
-//
-using System;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.Infrastructure;
-using Microsoft.EntityFrameworkCore.Metadata;
-using Microsoft.EntityFrameworkCore.Migrations;
-using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
-using MoonlightServers.ApiServer.Database;
-
-#nullable disable
-
-namespace MoonlightServers.ApiServer.Database.Migrations
-{
- [DbContext(typeof(ServersDataContext))]
- [Migration("20241211075318_AddedDefaultDockerImageField")]
- partial class AddedDefaultDockerImageField
- {
- ///
- protected override void BuildTargetModel(ModelBuilder modelBuilder)
- {
-#pragma warning disable 612, 618
- modelBuilder
- .HasDefaultSchema("Servers")
- .HasAnnotation("ProductVersion", "8.0.11")
- .HasAnnotation("Relational:MaxIdentifierLength", 64);
-
- MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Allocation", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("IpAddress")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("NodeId")
- .HasColumnType("int");
-
- b.Property("Port")
- .HasColumnType("int");
-
- b.Property("ServerId")
- .HasColumnType("int");
-
- b.HasKey("Id");
-
- b.HasIndex("NodeId");
-
- b.HasIndex("ServerId");
-
- b.ToTable("Allocations", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Node", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("EnableDynamicFirewall")
- .HasColumnType("tinyint(1)");
-
- b.Property("EnableTransparentMode")
- .HasColumnType("tinyint(1)");
-
- b.Property("Fqdn")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("FtpPort")
- .HasColumnType("int");
-
- b.Property("HttpPort")
- .HasColumnType("int");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("Token")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.ToTable("Nodes", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Server", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Bandwidth")
- .HasColumnType("int");
-
- b.Property("Cpu")
- .HasColumnType("int");
-
- b.Property("Disk")
- .HasColumnType("int");
-
- b.Property("DockerImageIndex")
- .HasColumnType("int");
-
- b.Property("Memory")
- .HasColumnType("int");
-
- b.Property("Name")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("NodeId")
- .HasColumnType("int");
-
- b.Property("OwnerId")
- .HasColumnType("int");
-
- b.Property("StarId")
- .HasColumnType("int");
-
- b.Property("StartupOverride")
- .HasColumnType("longtext");
-
- b.Property("UseVirtualDisk")
- .HasColumnType("tinyint(1)");
-
- b.HasKey("Id");
-
- b.HasIndex("NodeId");
-
- b.HasIndex("StarId");
-
- b.ToTable("Servers", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerBackup", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Completed")
- .HasColumnType("tinyint(1)");
-
- b.Property("CompletedAt")
- .HasColumnType("datetime(6)");
-
- b.Property("CreatedAt")
- .HasColumnType("datetime(6)");
-
- b.Property("Size")
- .HasColumnType("bigint");
-
- b.Property("Successful")
- .HasColumnType("tinyint(1)");
-
- b.HasKey("Id");
-
- b.ToTable("ServerBackups", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.ServerVariable", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("Key")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property("ServerId")
- .HasColumnType("int");
-
- b.Property("Value")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.HasKey("Id");
-
- b.HasIndex("ServerId");
-
- b.ToTable("ServerVariables", "Servers");
- });
-
- modelBuilder.Entity("MoonlightServers.ApiServer.Database.Entities.Star", b =>
- {
- b.Property("Id")
- .ValueGeneratedOnAdd()
- .HasColumnType("int");
-
- MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property("Id"));
-
- b.Property("AllowDockerImageChange")
- .HasColumnType("tinyint(1)");
-
- b.Property("Author")
- .IsRequired()
- .HasColumnType("longtext");
-
- b.Property