From 24cdec0fdfe64f9a67828b61dcd8cdd03e5bd76a Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Wed, 25 Mar 2020 13:49:40 -0400 Subject: [PATCH] Fix a bunch of namespace/doc issues --- .../20180906135553_MSInitialCreate.cs | 10 +- .../20180906143029_MYInitialCreate.cs | 10 +- .../20180918020726_MYAddMinimumSecurity.cs | 10 +- .../20180918021228_MSAddMinimumSecurity.cs | 10 +- ...18204520_MYNullableAndForeignKeyCleanup.cs | 10 +- ...18205224_MSNullableAndForeignKeyCleanup.cs | 10 +- ...0926033145_MSReattachCompileJobRequired.cs | 10 +- ...0926034014_MYReattachCompileJobRequired.cs | 10 +- ...0181124231534_MSToggleTestmergeComments.cs | 10 +- ...0181124231549_MYToggleTestmergeComments.cs | 10 +- .../20190219041825_MSFixRevInfoIndex.cs | 10 +- .../20190219042440_MYFixRevInfoIndex.cs | 10 +- ...AddChatBotReconnectionInterval.Designer.cs | 680 +++++++++++++++++ ...170252_MSAddChatBotReconnectionInterval.cs | 12 +- ...AddChatBotReconnectionInterval.Designer.cs | 654 +++++++++++++++++ ...171159_MYAddChatBotReconnectionInterval.cs | 12 +- ...AddChatBotReconnectionInterval.Designer.cs | 684 ------------------ ...AddChatBotReconnectionInterval.Designer.cs | 658 ----------------- 18 files changed, 1364 insertions(+), 1456 deletions(-) create mode 100644 src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs rename src/Tgstation.Server.Host/{Models => Database}/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs (70%) create mode 100644 src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs rename src/Tgstation.Server.Host/{Models => Database}/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs (70%) delete mode 100644 src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs delete mode 100644 src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180906135553_MSInitialCreate.cs b/src/Tgstation.Server.Host/Database/Migrations/20180906135553_MSInitialCreate.cs index 59917ec1f9..4b379f424d 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180906135553_MSInitialCreate.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180906135553_MSInitialCreate.cs @@ -10,10 +10,7 @@ namespace Tgstation.Server.Host.Database.Migrations #pragma warning disable CA1506 public partial class MSInitialCreate : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -593,10 +590,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Restrict); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180906143029_MYInitialCreate.cs b/src/Tgstation.Server.Host/Database/Migrations/20180906143029_MYInitialCreate.cs index 70372d9875..0ad0bf0c33 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180906143029_MYInitialCreate.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180906143029_MYInitialCreate.cs @@ -10,10 +10,7 @@ namespace Tgstation.Server.Host.Database.Migrations #pragma warning disable CA1506 public partial class MYInitialCreate : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -590,10 +587,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Restrict); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180918020726_MYAddMinimumSecurity.cs b/src/Tgstation.Server.Host/Database/Migrations/20180918020726_MYAddMinimumSecurity.cs index 638da950cd..398697723b 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180918020726_MYAddMinimumSecurity.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180918020726_MYAddMinimumSecurity.cs @@ -9,10 +9,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MYAddMinimumSecurity : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -31,10 +28,7 @@ namespace Tgstation.Server.Host.Database.Migrations defaultValue: (int)DreamDaemonSecurity.Safe); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180918021228_MSAddMinimumSecurity.cs b/src/Tgstation.Server.Host/Database/Migrations/20180918021228_MSAddMinimumSecurity.cs index dbf9ebf569..02274a85c1 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180918021228_MSAddMinimumSecurity.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180918021228_MSAddMinimumSecurity.cs @@ -9,10 +9,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MSAddMinimumSecurity : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -31,10 +28,7 @@ namespace Tgstation.Server.Host.Database.Migrations defaultValue: (int)DreamDaemonSecurity.Safe); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180918204520_MYNullableAndForeignKeyCleanup.cs b/src/Tgstation.Server.Host/Database/Migrations/20180918204520_MYNullableAndForeignKeyCleanup.cs index b112f3e8f4..02db35bd3f 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180918204520_MYNullableAndForeignKeyCleanup.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180918204520_MYNullableAndForeignKeyCleanup.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MYNullableAndForeignKeyCleanup : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -119,10 +116,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Cascade); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180918205224_MSNullableAndForeignKeyCleanup.cs b/src/Tgstation.Server.Host/Database/Migrations/20180918205224_MSNullableAndForeignKeyCleanup.cs index b479d8d1a0..00b73953e6 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180918205224_MSNullableAndForeignKeyCleanup.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180918205224_MSNullableAndForeignKeyCleanup.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MSNullableAndForeignKeyCleanup : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -117,10 +114,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Cascade); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180926033145_MSReattachCompileJobRequired.cs b/src/Tgstation.Server.Host/Database/Migrations/20180926033145_MSReattachCompileJobRequired.cs index ca56d5d418..205ffd2e10 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180926033145_MSReattachCompileJobRequired.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180926033145_MSReattachCompileJobRequired.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MSReattachCompileJobRequired : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -37,10 +34,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Cascade); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20180926034014_MYReattachCompileJobRequired.cs b/src/Tgstation.Server.Host/Database/Migrations/20180926034014_MYReattachCompileJobRequired.cs index d13c3e7424..ae4de6c9a7 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20180926034014_MYReattachCompileJobRequired.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20180926034014_MYReattachCompileJobRequired.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MYReattachCompileJobRequired : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -37,10 +34,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Cascade); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20181124231534_MSToggleTestmergeComments.cs b/src/Tgstation.Server.Host/Database/Migrations/20181124231534_MSToggleTestmergeComments.cs index acf6794a78..6d7f7d1b63 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20181124231534_MSToggleTestmergeComments.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20181124231534_MSToggleTestmergeComments.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MSToggleTestmergeComments : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -24,10 +21,7 @@ namespace Tgstation.Server.Host.Database.Migrations defaultValue: true); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20181124231549_MYToggleTestmergeComments.cs b/src/Tgstation.Server.Host/Database/Migrations/20181124231549_MYToggleTestmergeComments.cs index f4b64ac8ba..5084606961 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20181124231549_MYToggleTestmergeComments.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20181124231549_MYToggleTestmergeComments.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MYToggleTestmergeComments : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -24,10 +21,7 @@ namespace Tgstation.Server.Host.Database.Migrations defaultValue: true); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20190219041825_MSFixRevInfoIndex.cs b/src/Tgstation.Server.Host/Database/Migrations/20190219041825_MSFixRevInfoIndex.cs index 04ef31f946..9fae2c0721 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20190219041825_MSFixRevInfoIndex.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20190219041825_MSFixRevInfoIndex.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MSFixRevInfoIndex : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -32,10 +29,7 @@ namespace Tgstation.Server.Host.Database.Migrations unique: true); } - /// - /// Unpplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20190219042440_MYFixRevInfoIndex.cs b/src/Tgstation.Server.Host/Database/Migrations/20190219042440_MYFixRevInfoIndex.cs index 00368eda58..df1c0e9e1e 100644 --- a/src/Tgstation.Server.Host/Database/Migrations/20190219042440_MYFixRevInfoIndex.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20190219042440_MYFixRevInfoIndex.cs @@ -8,10 +8,7 @@ namespace Tgstation.Server.Host.Database.Migrations /// public partial class MYFixRevInfoIndex : Migration { - /// - /// Applies the migration - /// - /// The to use + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -44,10 +41,7 @@ namespace Tgstation.Server.Host.Database.Migrations onDelete: ReferentialAction.Cascade); } - /// - /// Unapplies the migration - /// - /// The to use + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs b/src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs new file mode 100644 index 0000000000..b524f63317 --- /dev/null +++ b/src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs @@ -0,0 +1,680 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +namespace Tgstation.Server.Host.Database.Migrations +{ + [DbContext(typeof(SqlServerDatabaseContext))] + [Migration("20200121170252_MSAddChatBotReconnectionInterval")] + partial class MSAddChatBotReconnectionInterval + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "2.2.6-servicing-10079") + .HasAnnotation("Relational:MaxIdentifierLength", 128) + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("ConnectionString") + .IsRequired(); + + b.Property("Enabled"); + + b.Property("InstanceId"); + + b.Property("Name") + .IsRequired(); + + b.Property("Provider"); + + b.Property("ReconnectionInterval"); + + b.HasKey("Id"); + + b.HasIndex("InstanceId"); + + b.HasIndex("Name") + .IsUnique(); + + b.ToTable("ChatBots"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("ChatSettingsId"); + + b.Property("DiscordChannelId") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("IrcChannel"); + + b.Property("IsAdminChannel") + .IsRequired(); + + b.Property("IsUpdatesChannel") + .IsRequired(); + + b.Property("IsWatchdogChannel") + .IsRequired(); + + b.Property("Tag"); + + b.HasKey("Id"); + + b.HasIndex("ChatSettingsId", "DiscordChannelId") + .IsUnique() + .HasFilter("[DiscordChannelId] IS NOT NULL"); + + b.HasIndex("ChatSettingsId", "IrcChannel") + .IsUnique() + .HasFilter("[IrcChannel] IS NOT NULL"); + + b.ToTable("ChatChannels"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("ByondVersion") + .IsRequired(); + + b.Property("DirectoryName") + .IsRequired(); + + b.Property("DmeName") + .IsRequired(); + + b.Property("JobId"); + + b.Property("MinimumSecurityLevel"); + + b.Property("Output") + .IsRequired(); + + b.Property("RevisionInformationId"); + + b.HasKey("Id"); + + b.HasIndex("DirectoryName"); + + b.HasIndex("JobId") + .IsUnique(); + + b.HasIndex("RevisionInformationId"); + + b.ToTable("CompileJobs"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("AccessToken"); + + b.Property("AllowWebClient") + .IsRequired(); + + b.Property("AutoStart") + .IsRequired(); + + b.Property("InstanceId"); + + b.Property("PrimaryPort"); + + b.Property("ProcessId"); + + b.Property("SecondaryPort"); + + b.Property("SecurityLevel"); + + b.Property("SoftRestart") + .IsRequired(); + + b.Property("SoftShutdown") + .IsRequired(); + + b.Property("StartupTimeout"); + + b.HasKey("Id"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("DreamDaemonSettings"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("ApiValidationPort"); + + b.Property("ApiValidationSecurityLevel"); + + b.Property("InstanceId"); + + b.Property("ProjectName"); + + b.HasKey("Id"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("DreamMakerSettings"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.Instance", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("AutoUpdateInterval"); + + b.Property("ConfigurationType"); + + b.Property("Name") + .IsRequired(); + + b.Property("Online") + .IsRequired(); + + b.Property("Path") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("Path") + .IsUnique(); + + b.ToTable("Instances"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("ByondRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("ChatBotRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("ConfigurationRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("DreamDaemonRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("DreamMakerRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("InstanceId"); + + b.Property("InstanceUserRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("RepositoryRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("UserId") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("InstanceId"); + + b.HasIndex("UserId", "InstanceId") + .IsUnique(); + + b.ToTable("InstanceUsers"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("CancelRight") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("CancelRightsType") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("Cancelled") + .IsRequired(); + + b.Property("CancelledById"); + + b.Property("Description") + .IsRequired(); + + b.Property("ExceptionDetails"); + + b.Property("InstanceId"); + + b.Property("StartedAt") + .IsRequired(); + + b.Property("StartedById"); + + b.Property("StoppedAt"); + + b.HasKey("Id"); + + b.HasIndex("CancelledById"); + + b.HasIndex("InstanceId"); + + b.HasIndex("StartedById"); + + b.ToTable("Jobs"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("AccessIdentifier") + .IsRequired(); + + b.Property("ChatChannelsJson") + .IsRequired(); + + b.Property("ChatCommandsJson") + .IsRequired(); + + b.Property("CompileJobId"); + + b.Property("IsPrimary"); + + b.Property("Port"); + + b.Property("ProcessId"); + + b.Property("RebootState"); + + b.Property("ServerCommandsJson") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("CompileJobId"); + + b.ToTable("ReattachInformations"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("AccessToken"); + + b.Property("AccessUser"); + + b.Property("AutoUpdatesKeepTestMerges") + .IsRequired(); + + b.Property("AutoUpdatesSynchronize") + .IsRequired(); + + b.Property("CommitterEmail") + .IsRequired(); + + b.Property("CommitterName") + .IsRequired(); + + b.Property("InstanceId"); + + b.Property("PostTestMergeComment") + .IsRequired(); + + b.Property("PushTestMergeCommits") + .IsRequired(); + + b.Property("ShowTestMergeCommitters") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("RepositorySettings"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("RevisionInformationId"); + + b.Property("TestMergeId"); + + b.HasKey("Id"); + + b.HasIndex("RevisionInformationId"); + + b.HasIndex("TestMergeId"); + + b.ToTable("RevInfoTestMerges"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("CommitSha") + .IsRequired() + .HasMaxLength(40); + + b.Property("InstanceId"); + + b.Property("OriginCommitSha") + .IsRequired() + .HasMaxLength(40); + + b.HasKey("Id"); + + b.HasIndex("InstanceId", "CommitSha") + .IsUnique(); + + b.ToTable("RevisionInformations"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("Author") + .IsRequired(); + + b.Property("BodyAtMerge") + .IsRequired(); + + b.Property("Comment"); + + b.Property("MergedAt"); + + b.Property("MergedById"); + + b.Property("Number") + .IsRequired(); + + b.Property("PrimaryRevisionInformationId") + .IsRequired(); + + b.Property("PullRequestRevision") + .IsRequired(); + + b.Property("TitleAtMerge") + .IsRequired(); + + b.Property("Url") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("MergedById"); + + b.HasIndex("PrimaryRevisionInformationId") + .IsUnique(); + + b.ToTable("TestMerges"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("AdministrationRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("CanonicalName") + .IsRequired(); + + b.Property("CreatedAt") + .IsRequired(); + + b.Property("CreatedById"); + + b.Property("Enabled") + .IsRequired(); + + b.Property("InstanceManagerRights") + .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); + + b.Property("LastPasswordUpdate"); + + b.Property("Name") + .IsRequired(); + + b.Property("PasswordHash"); + + b.Property("SystemIdentifier"); + + b.HasKey("Id"); + + b.HasIndex("CanonicalName") + .IsUnique(); + + b.HasIndex("CreatedById"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); + + b.Property("AlphaId"); + + b.Property("AlphaIsActive"); + + b.Property("BravoId"); + + b.Property("InstanceId"); + + b.HasKey("Id"); + + b.HasIndex("AlphaId"); + + b.HasIndex("BravoId"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("WatchdogReattachInformations"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("ChatSettings") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => + { + b.HasOne("Tgstation.Server.Host.Models.ChatBot", "ChatSettings") + .WithMany("Channels") + .HasForeignKey("ChatSettingsId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => + { + b.HasOne("Tgstation.Server.Host.Models.Job", "Job") + .WithOne() + .HasForeignKey("Tgstation.Server.Host.Models.CompileJob", "JobId") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") + .WithMany("CompileJobs") + .HasForeignKey("RevisionInformationId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithOne("DreamDaemonSettings") + .HasForeignKey("Tgstation.Server.Host.Models.DreamDaemonSettings", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithOne("DreamMakerSettings") + .HasForeignKey("Tgstation.Server.Host.Models.DreamMakerSettings", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("InstanceUsers") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Tgstation.Server.Host.Models.User") + .WithMany("InstanceUsers") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => + { + b.HasOne("Tgstation.Server.Host.Models.User", "CancelledBy") + .WithMany() + .HasForeignKey("CancelledById"); + + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("Jobs") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Tgstation.Server.Host.Models.User", "StartedBy") + .WithMany() + .HasForeignKey("StartedById") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => + { + b.HasOne("Tgstation.Server.Host.Models.CompileJob", "CompileJob") + .WithMany() + .HasForeignKey("CompileJobId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithOne("RepositorySettings") + .HasForeignKey("Tgstation.Server.Host.Models.RepositorySettings", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => + { + b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") + .WithMany("ActiveTestMerges") + .HasForeignKey("RevisionInformationId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Tgstation.Server.Host.Models.TestMerge", "TestMerge") + .WithMany("RevisonInformations") + .HasForeignKey("TestMergeId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("RevisionInformations") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => + { + b.HasOne("Tgstation.Server.Host.Models.User", "MergedBy") + .WithMany("TestMerges") + .HasForeignKey("MergedById") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "PrimaryRevisionInformation") + .WithOne("PrimaryTestMerge") + .HasForeignKey("Tgstation.Server.Host.Models.TestMerge", "PrimaryRevisionInformationId") + .OnDelete(DeleteBehavior.Restrict); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => + { + b.HasOne("Tgstation.Server.Host.Models.User", "CreatedBy") + .WithMany("CreatedUsers") + .HasForeignKey("CreatedById"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => + { + b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Alpha") + .WithMany() + .HasForeignKey("AlphaId"); + + b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Bravo") + .WithMany() + .HasForeignKey("BravoId"); + + b.HasOne("Tgstation.Server.Host.Models.Instance") + .WithOne("WatchdogReattachInformation") + .HasForeignKey("Tgstation.Server.Host.Models.WatchdogReattachInformation", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs b/src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs similarity index 70% rename from src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs rename to src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs index 240fd1002b..67a32a559b 100644 --- a/src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20200121170252_MSAddChatBotReconnectionInterval.cs @@ -1,17 +1,14 @@ using Microsoft.EntityFrameworkCore.Migrations; using System; -namespace Tgstation.Server.Host.Models.Migrations +namespace Tgstation.Server.Host.Database.Migrations { /// /// Adds the property for MSSQL. /// public partial class MSAddChatBotReconnectionInterval : Migration { - /// - /// Applies the migration. - /// - /// The to use. + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -24,10 +21,7 @@ namespace Tgstation.Server.Host.Models.Migrations defaultValue: 5L); } - /// - /// Unapplies the migration. - /// - /// The to use. + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs b/src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs new file mode 100644 index 0000000000..5cc461abec --- /dev/null +++ b/src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs @@ -0,0 +1,654 @@ +// +using System; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; + +namespace Tgstation.Server.Host.Database.Migrations +{ + [DbContext(typeof(MySqlDatabaseContext))] + [Migration("20200121171159_MYAddChatBotReconnectionInterval")] + partial class MYAddChatBotReconnectionInterval + { + /// + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "2.2.6-servicing-10079") + .HasAnnotation("Relational:MaxIdentifierLength", 64); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ConnectionString") + .IsRequired(); + + b.Property("Enabled"); + + b.Property("InstanceId"); + + b.Property("Name") + .IsRequired(); + + b.Property("Provider"); + + b.Property("ReconnectionInterval") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("InstanceId"); + + b.HasIndex("Name") + .IsUnique(); + + b.ToTable("ChatBots"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ChatSettingsId"); + + b.Property("DiscordChannelId"); + + b.Property("IrcChannel"); + + b.Property("IsAdminChannel") + .IsRequired(); + + b.Property("IsUpdatesChannel") + .IsRequired(); + + b.Property("IsWatchdogChannel") + .IsRequired(); + + b.Property("Tag"); + + b.HasKey("Id"); + + b.HasIndex("ChatSettingsId", "DiscordChannelId") + .IsUnique(); + + b.HasIndex("ChatSettingsId", "IrcChannel") + .IsUnique(); + + b.ToTable("ChatChannels"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ByondVersion") + .IsRequired(); + + b.Property("DirectoryName") + .IsRequired(); + + b.Property("DmeName") + .IsRequired(); + + b.Property("JobId"); + + b.Property("MinimumSecurityLevel"); + + b.Property("Output") + .IsRequired(); + + b.Property("RevisionInformationId"); + + b.HasKey("Id"); + + b.HasIndex("DirectoryName"); + + b.HasIndex("JobId") + .IsUnique(); + + b.HasIndex("RevisionInformationId"); + + b.ToTable("CompileJobs"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AccessToken"); + + b.Property("AllowWebClient") + .IsRequired(); + + b.Property("AutoStart") + .IsRequired(); + + b.Property("InstanceId"); + + b.Property("PrimaryPort") + .IsRequired(); + + b.Property("ProcessId"); + + b.Property("SecondaryPort") + .IsRequired(); + + b.Property("SecurityLevel"); + + b.Property("SoftRestart") + .IsRequired(); + + b.Property("SoftShutdown") + .IsRequired(); + + b.Property("StartupTimeout") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("DreamDaemonSettings"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ApiValidationPort") + .IsRequired(); + + b.Property("ApiValidationSecurityLevel"); + + b.Property("InstanceId"); + + b.Property("ProjectName"); + + b.HasKey("Id"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("DreamMakerSettings"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.Instance", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AutoUpdateInterval") + .IsRequired(); + + b.Property("ConfigurationType"); + + b.Property("Name") + .IsRequired(); + + b.Property("Online") + .IsRequired(); + + b.Property("Path") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("Path") + .IsUnique(); + + b.ToTable("Instances"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("ByondRights"); + + b.Property("ChatBotRights"); + + b.Property("ConfigurationRights"); + + b.Property("DreamDaemonRights"); + + b.Property("DreamMakerRights"); + + b.Property("InstanceId"); + + b.Property("InstanceUserRights"); + + b.Property("RepositoryRights"); + + b.Property("UserId") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("InstanceId"); + + b.HasIndex("UserId", "InstanceId") + .IsUnique(); + + b.ToTable("InstanceUsers"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("CancelRight"); + + b.Property("CancelRightsType"); + + b.Property("Cancelled") + .IsRequired(); + + b.Property("CancelledById"); + + b.Property("Description") + .IsRequired(); + + b.Property("ExceptionDetails"); + + b.Property("InstanceId"); + + b.Property("StartedAt") + .IsRequired(); + + b.Property("StartedById"); + + b.Property("StoppedAt"); + + b.HasKey("Id"); + + b.HasIndex("CancelledById"); + + b.HasIndex("InstanceId"); + + b.HasIndex("StartedById"); + + b.ToTable("Jobs"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AccessIdentifier") + .IsRequired(); + + b.Property("ChatChannelsJson") + .IsRequired(); + + b.Property("ChatCommandsJson") + .IsRequired(); + + b.Property("CompileJobId"); + + b.Property("IsPrimary"); + + b.Property("Port"); + + b.Property("ProcessId"); + + b.Property("RebootState"); + + b.Property("ServerCommandsJson") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("CompileJobId"); + + b.ToTable("ReattachInformations"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AccessToken"); + + b.Property("AccessUser"); + + b.Property("AutoUpdatesKeepTestMerges") + .IsRequired(); + + b.Property("AutoUpdatesSynchronize") + .IsRequired(); + + b.Property("CommitterEmail") + .IsRequired(); + + b.Property("CommitterName") + .IsRequired(); + + b.Property("InstanceId"); + + b.Property("PostTestMergeComment") + .IsRequired(); + + b.Property("PushTestMergeCommits") + .IsRequired(); + + b.Property("ShowTestMergeCommitters") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("RepositorySettings"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("RevisionInformationId"); + + b.Property("TestMergeId"); + + b.HasKey("Id"); + + b.HasIndex("RevisionInformationId"); + + b.HasIndex("TestMergeId"); + + b.ToTable("RevInfoTestMerges"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("CommitSha") + .IsRequired() + .HasMaxLength(40); + + b.Property("InstanceId"); + + b.Property("OriginCommitSha") + .IsRequired() + .HasMaxLength(40); + + b.HasKey("Id"); + + b.HasIndex("InstanceId", "CommitSha") + .IsUnique(); + + b.ToTable("RevisionInformations"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("Author") + .IsRequired(); + + b.Property("BodyAtMerge") + .IsRequired(); + + b.Property("Comment"); + + b.Property("MergedAt"); + + b.Property("MergedById"); + + b.Property("Number") + .IsRequired(); + + b.Property("PrimaryRevisionInformationId") + .IsRequired(); + + b.Property("PullRequestRevision") + .IsRequired(); + + b.Property("TitleAtMerge") + .IsRequired(); + + b.Property("Url") + .IsRequired(); + + b.HasKey("Id"); + + b.HasIndex("MergedById"); + + b.HasIndex("PrimaryRevisionInformationId") + .IsUnique(); + + b.ToTable("TestMerges"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AdministrationRights"); + + b.Property("CanonicalName") + .IsRequired(); + + b.Property("CreatedAt") + .IsRequired(); + + b.Property("CreatedById"); + + b.Property("Enabled") + .IsRequired(); + + b.Property("InstanceManagerRights"); + + b.Property("LastPasswordUpdate"); + + b.Property("Name") + .IsRequired(); + + b.Property("PasswordHash"); + + b.Property("SystemIdentifier"); + + b.HasKey("Id"); + + b.HasIndex("CanonicalName") + .IsUnique(); + + b.HasIndex("CreatedById"); + + b.ToTable("Users"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => + { + b.Property("Id") + .ValueGeneratedOnAdd(); + + b.Property("AlphaId"); + + b.Property("AlphaIsActive"); + + b.Property("BravoId"); + + b.Property("InstanceId"); + + b.HasKey("Id"); + + b.HasIndex("AlphaId"); + + b.HasIndex("BravoId"); + + b.HasIndex("InstanceId") + .IsUnique(); + + b.ToTable("WatchdogReattachInformations"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("ChatSettings") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => + { + b.HasOne("Tgstation.Server.Host.Models.ChatBot", "ChatSettings") + .WithMany("Channels") + .HasForeignKey("ChatSettingsId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => + { + b.HasOne("Tgstation.Server.Host.Models.Job", "Job") + .WithOne() + .HasForeignKey("Tgstation.Server.Host.Models.CompileJob", "JobId") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") + .WithMany("CompileJobs") + .HasForeignKey("RevisionInformationId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithOne("DreamDaemonSettings") + .HasForeignKey("Tgstation.Server.Host.Models.DreamDaemonSettings", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithOne("DreamMakerSettings") + .HasForeignKey("Tgstation.Server.Host.Models.DreamMakerSettings", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("InstanceUsers") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Tgstation.Server.Host.Models.User") + .WithMany("InstanceUsers") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => + { + b.HasOne("Tgstation.Server.Host.Models.User", "CancelledBy") + .WithMany() + .HasForeignKey("CancelledById"); + + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("Jobs") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Tgstation.Server.Host.Models.User", "StartedBy") + .WithMany() + .HasForeignKey("StartedById") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => + { + b.HasOne("Tgstation.Server.Host.Models.CompileJob", "CompileJob") + .WithMany() + .HasForeignKey("CompileJobId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithOne("RepositorySettings") + .HasForeignKey("Tgstation.Server.Host.Models.RepositorySettings", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => + { + b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") + .WithMany("ActiveTestMerges") + .HasForeignKey("RevisionInformationId") + .OnDelete(DeleteBehavior.Cascade); + + b.HasOne("Tgstation.Server.Host.Models.TestMerge", "TestMerge") + .WithMany("RevisonInformations") + .HasForeignKey("TestMergeId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => + { + b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") + .WithMany("RevisionInformations") + .HasForeignKey("InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => + { + b.HasOne("Tgstation.Server.Host.Models.User", "MergedBy") + .WithMany("TestMerges") + .HasForeignKey("MergedById") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "PrimaryRevisionInformation") + .WithOne("PrimaryTestMerge") + .HasForeignKey("Tgstation.Server.Host.Models.TestMerge", "PrimaryRevisionInformationId") + .OnDelete(DeleteBehavior.Restrict); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => + { + b.HasOne("Tgstation.Server.Host.Models.User", "CreatedBy") + .WithMany("CreatedUsers") + .HasForeignKey("CreatedById"); + }); + + modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => + { + b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Alpha") + .WithMany() + .HasForeignKey("AlphaId"); + + b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Bravo") + .WithMany() + .HasForeignKey("BravoId"); + + b.HasOne("Tgstation.Server.Host.Models.Instance") + .WithOne("WatchdogReattachInformation") + .HasForeignKey("Tgstation.Server.Host.Models.WatchdogReattachInformation", "InstanceId") + .OnDelete(DeleteBehavior.Cascade); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs b/src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs similarity index 70% rename from src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs rename to src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs index 1fa2a52191..2e5f749922 100644 --- a/src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs +++ b/src/Tgstation.Server.Host/Database/Migrations/20200121171159_MYAddChatBotReconnectionInterval.cs @@ -1,17 +1,14 @@ using Microsoft.EntityFrameworkCore.Migrations; using System; -namespace Tgstation.Server.Host.Models.Migrations +namespace Tgstation.Server.Host.Database.Migrations { /// /// Adds the property for MySQL/MariaDB. /// public partial class MYAddChatBotReconnectionInterval : Migration { - /// - /// Applies the migration. - /// - /// The to use. + /// protected override void Up(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) @@ -24,10 +21,7 @@ namespace Tgstation.Server.Host.Models.Migrations defaultValue: 5L); } - /// - /// Unapplies the migration. - /// - /// The to use. + /// protected override void Down(MigrationBuilder migrationBuilder) { if (migrationBuilder == null) diff --git a/src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs b/src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs deleted file mode 100644 index 7e65856480..0000000000 --- a/src/Tgstation.Server.Host/Models/Migrations/20200121170252_MSAddChatBotReconnectionInterval.Designer.cs +++ /dev/null @@ -1,684 +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 Tgstation.Server.Host.Database; - -namespace Tgstation.Server.Host.Models.Migrations -{ - [DbContext(typeof(SqlServerDatabaseContext))] - [Migration("20200121170252_MSAddChatBotReconnectionInterval")] - partial class MSAddChatBotReconnectionInterval - { - /// - /// Builds the target model - /// - /// The to use. - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "2.2.6-servicing-10079") - .HasAnnotation("Relational:MaxIdentifierLength", 128) - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("ConnectionString") - .IsRequired(); - - b.Property("Enabled"); - - b.Property("InstanceId"); - - b.Property("Name") - .IsRequired(); - - b.Property("Provider"); - - b.Property("ReconnectionInterval"); - - b.HasKey("Id"); - - b.HasIndex("InstanceId"); - - b.HasIndex("Name") - .IsUnique(); - - b.ToTable("ChatBots"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("ChatSettingsId"); - - b.Property("DiscordChannelId") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("IrcChannel"); - - b.Property("IsAdminChannel") - .IsRequired(); - - b.Property("IsUpdatesChannel") - .IsRequired(); - - b.Property("IsWatchdogChannel") - .IsRequired(); - - b.Property("Tag"); - - b.HasKey("Id"); - - b.HasIndex("ChatSettingsId", "DiscordChannelId") - .IsUnique() - .HasFilter("[DiscordChannelId] IS NOT NULL"); - - b.HasIndex("ChatSettingsId", "IrcChannel") - .IsUnique() - .HasFilter("[IrcChannel] IS NOT NULL"); - - b.ToTable("ChatChannels"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("ByondVersion") - .IsRequired(); - - b.Property("DirectoryName") - .IsRequired(); - - b.Property("DmeName") - .IsRequired(); - - b.Property("JobId"); - - b.Property("MinimumSecurityLevel"); - - b.Property("Output") - .IsRequired(); - - b.Property("RevisionInformationId"); - - b.HasKey("Id"); - - b.HasIndex("DirectoryName"); - - b.HasIndex("JobId") - .IsUnique(); - - b.HasIndex("RevisionInformationId"); - - b.ToTable("CompileJobs"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("AccessToken"); - - b.Property("AllowWebClient") - .IsRequired(); - - b.Property("AutoStart") - .IsRequired(); - - b.Property("InstanceId"); - - b.Property("PrimaryPort"); - - b.Property("ProcessId"); - - b.Property("SecondaryPort"); - - b.Property("SecurityLevel"); - - b.Property("SoftRestart") - .IsRequired(); - - b.Property("SoftShutdown") - .IsRequired(); - - b.Property("StartupTimeout"); - - b.HasKey("Id"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("DreamDaemonSettings"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("ApiValidationPort"); - - b.Property("ApiValidationSecurityLevel"); - - b.Property("InstanceId"); - - b.Property("ProjectName"); - - b.HasKey("Id"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("DreamMakerSettings"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.Instance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("AutoUpdateInterval"); - - b.Property("ConfigurationType"); - - b.Property("Name") - .IsRequired(); - - b.Property("Online") - .IsRequired(); - - b.Property("Path") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("Path") - .IsUnique(); - - b.ToTable("Instances"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("ByondRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("ChatBotRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("ConfigurationRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("DreamDaemonRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("DreamMakerRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("InstanceId"); - - b.Property("InstanceUserRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("RepositoryRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("UserId") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("InstanceId"); - - b.HasIndex("UserId", "InstanceId") - .IsUnique(); - - b.ToTable("InstanceUsers"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("CancelRight") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("CancelRightsType") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("Cancelled") - .IsRequired(); - - b.Property("CancelledById"); - - b.Property("Description") - .IsRequired(); - - b.Property("ExceptionDetails"); - - b.Property("InstanceId"); - - b.Property("StartedAt") - .IsRequired(); - - b.Property("StartedById"); - - b.Property("StoppedAt"); - - b.HasKey("Id"); - - b.HasIndex("CancelledById"); - - b.HasIndex("InstanceId"); - - b.HasIndex("StartedById"); - - b.ToTable("Jobs"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("AccessIdentifier") - .IsRequired(); - - b.Property("ChatChannelsJson") - .IsRequired(); - - b.Property("ChatCommandsJson") - .IsRequired(); - - b.Property("CompileJobId"); - - b.Property("IsPrimary"); - - b.Property("Port"); - - b.Property("ProcessId"); - - b.Property("RebootState"); - - b.Property("ServerCommandsJson") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("CompileJobId"); - - b.ToTable("ReattachInformations"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("AccessToken"); - - b.Property("AccessUser"); - - b.Property("AutoUpdatesKeepTestMerges") - .IsRequired(); - - b.Property("AutoUpdatesSynchronize") - .IsRequired(); - - b.Property("CommitterEmail") - .IsRequired(); - - b.Property("CommitterName") - .IsRequired(); - - b.Property("InstanceId"); - - b.Property("PostTestMergeComment") - .IsRequired(); - - b.Property("PushTestMergeCommits") - .IsRequired(); - - b.Property("ShowTestMergeCommitters") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("RepositorySettings"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("RevisionInformationId"); - - b.Property("TestMergeId"); - - b.HasKey("Id"); - - b.HasIndex("RevisionInformationId"); - - b.HasIndex("TestMergeId"); - - b.ToTable("RevInfoTestMerges"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("CommitSha") - .IsRequired() - .HasMaxLength(40); - - b.Property("InstanceId"); - - b.Property("OriginCommitSha") - .IsRequired() - .HasMaxLength(40); - - b.HasKey("Id"); - - b.HasIndex("InstanceId", "CommitSha") - .IsUnique(); - - b.ToTable("RevisionInformations"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("Author") - .IsRequired(); - - b.Property("BodyAtMerge") - .IsRequired(); - - b.Property("Comment"); - - b.Property("MergedAt"); - - b.Property("MergedById"); - - b.Property("Number") - .IsRequired(); - - b.Property("PrimaryRevisionInformationId") - .IsRequired(); - - b.Property("PullRequestRevision") - .IsRequired(); - - b.Property("TitleAtMerge") - .IsRequired(); - - b.Property("Url") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("MergedById"); - - b.HasIndex("PrimaryRevisionInformationId") - .IsUnique(); - - b.ToTable("TestMerges"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("AdministrationRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("CanonicalName") - .IsRequired(); - - b.Property("CreatedAt") - .IsRequired(); - - b.Property("CreatedById"); - - b.Property("Enabled") - .IsRequired(); - - b.Property("InstanceManagerRights") - .HasConversion(new ValueConverter(v => default(decimal), v => default(decimal), new ConverterMappingHints(precision: 20, scale: 0))); - - b.Property("LastPasswordUpdate"); - - b.Property("Name") - .IsRequired(); - - b.Property("PasswordHash"); - - b.Property("SystemIdentifier"); - - b.HasKey("Id"); - - b.HasIndex("CanonicalName") - .IsUnique(); - - b.HasIndex("CreatedById"); - - b.ToTable("Users"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); - - b.Property("AlphaId"); - - b.Property("AlphaIsActive"); - - b.Property("BravoId"); - - b.Property("InstanceId"); - - b.HasKey("Id"); - - b.HasIndex("AlphaId"); - - b.HasIndex("BravoId"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("WatchdogReattachInformations"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("ChatSettings") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => - { - b.HasOne("Tgstation.Server.Host.Models.ChatBot", "ChatSettings") - .WithMany("Channels") - .HasForeignKey("ChatSettingsId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => - { - b.HasOne("Tgstation.Server.Host.Models.Job", "Job") - .WithOne() - .HasForeignKey("Tgstation.Server.Host.Models.CompileJob", "JobId") - .OnDelete(DeleteBehavior.Restrict); - - b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") - .WithMany("CompileJobs") - .HasForeignKey("RevisionInformationId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithOne("DreamDaemonSettings") - .HasForeignKey("Tgstation.Server.Host.Models.DreamDaemonSettings", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithOne("DreamMakerSettings") - .HasForeignKey("Tgstation.Server.Host.Models.DreamMakerSettings", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("InstanceUsers") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - - b.HasOne("Tgstation.Server.Host.Models.User") - .WithMany("InstanceUsers") - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => - { - b.HasOne("Tgstation.Server.Host.Models.User", "CancelledBy") - .WithMany() - .HasForeignKey("CancelledById"); - - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("Jobs") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - - b.HasOne("Tgstation.Server.Host.Models.User", "StartedBy") - .WithMany() - .HasForeignKey("StartedById") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => - { - b.HasOne("Tgstation.Server.Host.Models.CompileJob", "CompileJob") - .WithMany() - .HasForeignKey("CompileJobId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithOne("RepositorySettings") - .HasForeignKey("Tgstation.Server.Host.Models.RepositorySettings", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => - { - b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") - .WithMany("ActiveTestMerges") - .HasForeignKey("RevisionInformationId") - .OnDelete(DeleteBehavior.Cascade); - - b.HasOne("Tgstation.Server.Host.Models.TestMerge", "TestMerge") - .WithMany("RevisonInformations") - .HasForeignKey("TestMergeId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("RevisionInformations") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => - { - b.HasOne("Tgstation.Server.Host.Models.User", "MergedBy") - .WithMany("TestMerges") - .HasForeignKey("MergedById") - .OnDelete(DeleteBehavior.Restrict); - - b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "PrimaryRevisionInformation") - .WithOne("PrimaryTestMerge") - .HasForeignKey("Tgstation.Server.Host.Models.TestMerge", "PrimaryRevisionInformationId") - .OnDelete(DeleteBehavior.Restrict); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => - { - b.HasOne("Tgstation.Server.Host.Models.User", "CreatedBy") - .WithMany("CreatedUsers") - .HasForeignKey("CreatedById"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => - { - b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Alpha") - .WithMany() - .HasForeignKey("AlphaId"); - - b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Bravo") - .WithMany() - .HasForeignKey("BravoId"); - - b.HasOne("Tgstation.Server.Host.Models.Instance") - .WithOne("WatchdogReattachInformation") - .HasForeignKey("Tgstation.Server.Host.Models.WatchdogReattachInformation", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs b/src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs deleted file mode 100644 index fcd1ef9deb..0000000000 --- a/src/Tgstation.Server.Host/Models/Migrations/20200121171159_MYAddChatBotReconnectionInterval.Designer.cs +++ /dev/null @@ -1,658 +0,0 @@ -// -using System; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Tgstation.Server.Host.Database; - -namespace Tgstation.Server.Host.Models.Migrations -{ - [DbContext(typeof(MySqlDatabaseContext))] - [Migration("20200121171159_MYAddChatBotReconnectionInterval")] - partial class MYAddChatBotReconnectionInterval - { - /// - /// Builds the target model - /// - /// The to use. - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "2.2.6-servicing-10079") - .HasAnnotation("Relational:MaxIdentifierLength", 64); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("ConnectionString") - .IsRequired(); - - b.Property("Enabled"); - - b.Property("InstanceId"); - - b.Property("Name") - .IsRequired(); - - b.Property("Provider"); - - b.Property("ReconnectionInterval") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("InstanceId"); - - b.HasIndex("Name") - .IsUnique(); - - b.ToTable("ChatBots"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("ChatSettingsId"); - - b.Property("DiscordChannelId"); - - b.Property("IrcChannel"); - - b.Property("IsAdminChannel") - .IsRequired(); - - b.Property("IsUpdatesChannel") - .IsRequired(); - - b.Property("IsWatchdogChannel") - .IsRequired(); - - b.Property("Tag"); - - b.HasKey("Id"); - - b.HasIndex("ChatSettingsId", "DiscordChannelId") - .IsUnique(); - - b.HasIndex("ChatSettingsId", "IrcChannel") - .IsUnique(); - - b.ToTable("ChatChannels"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("ByondVersion") - .IsRequired(); - - b.Property("DirectoryName") - .IsRequired(); - - b.Property("DmeName") - .IsRequired(); - - b.Property("JobId"); - - b.Property("MinimumSecurityLevel"); - - b.Property("Output") - .IsRequired(); - - b.Property("RevisionInformationId"); - - b.HasKey("Id"); - - b.HasIndex("DirectoryName"); - - b.HasIndex("JobId") - .IsUnique(); - - b.HasIndex("RevisionInformationId"); - - b.ToTable("CompileJobs"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("AccessToken"); - - b.Property("AllowWebClient") - .IsRequired(); - - b.Property("AutoStart") - .IsRequired(); - - b.Property("InstanceId"); - - b.Property("PrimaryPort") - .IsRequired(); - - b.Property("ProcessId"); - - b.Property("SecondaryPort") - .IsRequired(); - - b.Property("SecurityLevel"); - - b.Property("SoftRestart") - .IsRequired(); - - b.Property("SoftShutdown") - .IsRequired(); - - b.Property("StartupTimeout") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("DreamDaemonSettings"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("ApiValidationPort") - .IsRequired(); - - b.Property("ApiValidationSecurityLevel"); - - b.Property("InstanceId"); - - b.Property("ProjectName"); - - b.HasKey("Id"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("DreamMakerSettings"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.Instance", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("AutoUpdateInterval") - .IsRequired(); - - b.Property("ConfigurationType"); - - b.Property("Name") - .IsRequired(); - - b.Property("Online") - .IsRequired(); - - b.Property("Path") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("Path") - .IsUnique(); - - b.ToTable("Instances"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("ByondRights"); - - b.Property("ChatBotRights"); - - b.Property("ConfigurationRights"); - - b.Property("DreamDaemonRights"); - - b.Property("DreamMakerRights"); - - b.Property("InstanceId"); - - b.Property("InstanceUserRights"); - - b.Property("RepositoryRights"); - - b.Property("UserId") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("InstanceId"); - - b.HasIndex("UserId", "InstanceId") - .IsUnique(); - - b.ToTable("InstanceUsers"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("CancelRight"); - - b.Property("CancelRightsType"); - - b.Property("Cancelled") - .IsRequired(); - - b.Property("CancelledById"); - - b.Property("Description") - .IsRequired(); - - b.Property("ExceptionDetails"); - - b.Property("InstanceId"); - - b.Property("StartedAt") - .IsRequired(); - - b.Property("StartedById"); - - b.Property("StoppedAt"); - - b.HasKey("Id"); - - b.HasIndex("CancelledById"); - - b.HasIndex("InstanceId"); - - b.HasIndex("StartedById"); - - b.ToTable("Jobs"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("AccessIdentifier") - .IsRequired(); - - b.Property("ChatChannelsJson") - .IsRequired(); - - b.Property("ChatCommandsJson") - .IsRequired(); - - b.Property("CompileJobId"); - - b.Property("IsPrimary"); - - b.Property("Port"); - - b.Property("ProcessId"); - - b.Property("RebootState"); - - b.Property("ServerCommandsJson") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("CompileJobId"); - - b.ToTable("ReattachInformations"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("AccessToken"); - - b.Property("AccessUser"); - - b.Property("AutoUpdatesKeepTestMerges") - .IsRequired(); - - b.Property("AutoUpdatesSynchronize") - .IsRequired(); - - b.Property("CommitterEmail") - .IsRequired(); - - b.Property("CommitterName") - .IsRequired(); - - b.Property("InstanceId"); - - b.Property("PostTestMergeComment") - .IsRequired(); - - b.Property("PushTestMergeCommits") - .IsRequired(); - - b.Property("ShowTestMergeCommitters") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("RepositorySettings"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("RevisionInformationId"); - - b.Property("TestMergeId"); - - b.HasKey("Id"); - - b.HasIndex("RevisionInformationId"); - - b.HasIndex("TestMergeId"); - - b.ToTable("RevInfoTestMerges"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("CommitSha") - .IsRequired() - .HasMaxLength(40); - - b.Property("InstanceId"); - - b.Property("OriginCommitSha") - .IsRequired() - .HasMaxLength(40); - - b.HasKey("Id"); - - b.HasIndex("InstanceId", "CommitSha") - .IsUnique(); - - b.ToTable("RevisionInformations"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("Author") - .IsRequired(); - - b.Property("BodyAtMerge") - .IsRequired(); - - b.Property("Comment"); - - b.Property("MergedAt"); - - b.Property("MergedById"); - - b.Property("Number") - .IsRequired(); - - b.Property("PrimaryRevisionInformationId") - .IsRequired(); - - b.Property("PullRequestRevision") - .IsRequired(); - - b.Property("TitleAtMerge") - .IsRequired(); - - b.Property("Url") - .IsRequired(); - - b.HasKey("Id"); - - b.HasIndex("MergedById"); - - b.HasIndex("PrimaryRevisionInformationId") - .IsUnique(); - - b.ToTable("TestMerges"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("AdministrationRights"); - - b.Property("CanonicalName") - .IsRequired(); - - b.Property("CreatedAt") - .IsRequired(); - - b.Property("CreatedById"); - - b.Property("Enabled") - .IsRequired(); - - b.Property("InstanceManagerRights"); - - b.Property("LastPasswordUpdate"); - - b.Property("Name") - .IsRequired(); - - b.Property("PasswordHash"); - - b.Property("SystemIdentifier"); - - b.HasKey("Id"); - - b.HasIndex("CanonicalName") - .IsUnique(); - - b.HasIndex("CreatedById"); - - b.ToTable("Users"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => - { - b.Property("Id") - .ValueGeneratedOnAdd(); - - b.Property("AlphaId"); - - b.Property("AlphaIsActive"); - - b.Property("BravoId"); - - b.Property("InstanceId"); - - b.HasKey("Id"); - - b.HasIndex("AlphaId"); - - b.HasIndex("BravoId"); - - b.HasIndex("InstanceId") - .IsUnique(); - - b.ToTable("WatchdogReattachInformations"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("ChatSettings") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b => - { - b.HasOne("Tgstation.Server.Host.Models.ChatBot", "ChatSettings") - .WithMany("Channels") - .HasForeignKey("ChatSettingsId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b => - { - b.HasOne("Tgstation.Server.Host.Models.Job", "Job") - .WithOne() - .HasForeignKey("Tgstation.Server.Host.Models.CompileJob", "JobId") - .OnDelete(DeleteBehavior.Restrict); - - b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") - .WithMany("CompileJobs") - .HasForeignKey("RevisionInformationId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithOne("DreamDaemonSettings") - .HasForeignKey("Tgstation.Server.Host.Models.DreamDaemonSettings", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithOne("DreamMakerSettings") - .HasForeignKey("Tgstation.Server.Host.Models.DreamMakerSettings", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.InstanceUser", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("InstanceUsers") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - - b.HasOne("Tgstation.Server.Host.Models.User") - .WithMany("InstanceUsers") - .HasForeignKey("UserId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b => - { - b.HasOne("Tgstation.Server.Host.Models.User", "CancelledBy") - .WithMany() - .HasForeignKey("CancelledById"); - - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("Jobs") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - - b.HasOne("Tgstation.Server.Host.Models.User", "StartedBy") - .WithMany() - .HasForeignKey("StartedById") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b => - { - b.HasOne("Tgstation.Server.Host.Models.CompileJob", "CompileJob") - .WithMany() - .HasForeignKey("CompileJobId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithOne("RepositorySettings") - .HasForeignKey("Tgstation.Server.Host.Models.RepositorySettings", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b => - { - b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation") - .WithMany("ActiveTestMerges") - .HasForeignKey("RevisionInformationId") - .OnDelete(DeleteBehavior.Cascade); - - b.HasOne("Tgstation.Server.Host.Models.TestMerge", "TestMerge") - .WithMany("RevisonInformations") - .HasForeignKey("TestMergeId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b => - { - b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance") - .WithMany("RevisionInformations") - .HasForeignKey("InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b => - { - b.HasOne("Tgstation.Server.Host.Models.User", "MergedBy") - .WithMany("TestMerges") - .HasForeignKey("MergedById") - .OnDelete(DeleteBehavior.Restrict); - - b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "PrimaryRevisionInformation") - .WithOne("PrimaryTestMerge") - .HasForeignKey("Tgstation.Server.Host.Models.TestMerge", "PrimaryRevisionInformationId") - .OnDelete(DeleteBehavior.Restrict); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.User", b => - { - b.HasOne("Tgstation.Server.Host.Models.User", "CreatedBy") - .WithMany("CreatedUsers") - .HasForeignKey("CreatedById"); - }); - - modelBuilder.Entity("Tgstation.Server.Host.Models.WatchdogReattachInformation", b => - { - b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Alpha") - .WithMany() - .HasForeignKey("AlphaId"); - - b.HasOne("Tgstation.Server.Host.Models.ReattachInformation", "Bravo") - .WithMany() - .HasForeignKey("BravoId"); - - b.HasOne("Tgstation.Server.Host.Models.Instance") - .WithOne("WatchdogReattachInformation") - .HasForeignKey("Tgstation.Server.Host.Models.WatchdogReattachInformation", "InstanceId") - .OnDelete(DeleteBehavior.Cascade); - }); -#pragma warning restore 612, 618 - } - } -}