17#pragma warning disable 612, 618
19 .HasAnnotation(
"ProductVersion",
"8.0.13")
20 .HasAnnotation(
"Relational:MaxIdentifierLength", 64);
22 MySqlModelBuilderExtensions.AutoIncrementColumns(modelBuilder);
24 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ChatBot", b =>
26 b.Property<
long?>(
"Id")
27 .ValueGeneratedOnAdd()
28 .HasColumnType(
"bigint");
30 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
32 b.Property<ushort?>(
"ChannelLimit")
34 .HasColumnType(
"smallint unsigned");
36 b.Property<
string>(
"ConnectionString")
39 .HasColumnType(
"longtext");
41 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"ConnectionString"),
"utf8mb4");
43 b.Property<
bool?>(
"Enabled")
44 .HasColumnType(
"tinyint(1)");
46 b.Property<
long>(
"InstanceId")
47 .HasColumnType(
"bigint");
49 b.Property<
string>(
"Name")
52 .HasColumnType(
"varchar(100)");
54 b.Property<
int>(
"Provider")
55 .HasColumnType(
"int");
57 b.Property<uint?>(
"ReconnectionInterval")
59 .HasColumnType(
"int unsigned");
63 b.HasIndex(
"InstanceId",
"Name")
66 b.ToTable(
"ChatBots");
69 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ChatChannel", b =>
71 b.Property<
long>(
"Id")
72 .ValueGeneratedOnAdd()
73 .HasColumnType(
"bigint");
75 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
77 b.Property<
long>(
"ChatSettingsId")
78 .HasColumnType(
"bigint");
80 b.Property<ulong?>(
"DiscordChannelId")
81 .HasColumnType(
"bigint unsigned");
83 b.Property<
string>(
"IrcChannel")
85 .HasColumnType(
"varchar(100)");
87 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"IrcChannel"),
"utf8mb4");
89 b.Property<
bool?>(
"IsAdminChannel")
91 .HasColumnType(
"tinyint(1)");
93 b.Property<
bool?>(
"IsSystemChannel")
95 .HasColumnType(
"tinyint(1)");
97 b.Property<
bool?>(
"IsUpdatesChannel")
99 .HasColumnType(
"tinyint(1)");
101 b.Property<
bool?>(
"IsWatchdogChannel")
103 .HasColumnType(
"tinyint(1)");
105 b.Property<
string>(
"Tag")
107 .HasColumnType(
"longtext");
109 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Tag"),
"utf8mb4");
113 b.HasIndex(
"ChatSettingsId",
"DiscordChannelId")
116 b.HasIndex(
"ChatSettingsId",
"IrcChannel")
119 b.ToTable(
"ChatChannels");
122 modelBuilder.Entity(
"Tgstation.Server.Host.Models.CompileJob", b =>
124 b.Property<
long?>(
"Id")
125 .ValueGeneratedOnAdd()
126 .HasColumnType(
"bigint");
128 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
130 b.Property<
int?>(
"DMApiMajorVersion")
131 .HasColumnType(
"int");
133 b.Property<
int?>(
"DMApiMinorVersion")
134 .HasColumnType(
"int");
136 b.Property<
int?>(
"DMApiPatchVersion")
137 .HasColumnType(
"int");
139 b.Property<Guid?>(
"DirectoryName")
141 .HasColumnType(
"char(36)");
143 b.Property<
string>(
"DmeName")
145 .HasColumnType(
"longtext");
147 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"DmeName"),
"utf8mb4");
149 b.Property<
string>(
"EngineVersion")
151 .HasColumnType(
"longtext");
153 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"EngineVersion"),
"utf8mb4");
155 b.Property<
long?>(
"GitHubDeploymentId")
156 .HasColumnType(
"bigint");
158 b.Property<
long?>(
"GitHubRepoId")
159 .HasColumnType(
"bigint");
161 b.Property<
long>(
"JobId")
162 .HasColumnType(
"bigint");
164 b.Property<
int?>(
"MinimumSecurityLevel")
165 .HasColumnType(
"int");
167 b.Property<
string>(
"Output")
169 .HasColumnType(
"longtext");
171 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Output"),
"utf8mb4");
173 b.Property<
string>(
"RepositoryOrigin")
174 .HasColumnType(
"longtext");
176 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"RepositoryOrigin"),
"utf8mb4");
178 b.Property<
long>(
"RevisionInformationId")
179 .HasColumnType(
"bigint");
183 b.HasIndex(
"DirectoryName");
188 b.HasIndex(
"RevisionInformationId");
190 b.ToTable(
"CompileJobs");
193 modelBuilder.Entity(
"Tgstation.Server.Host.Models.DreamDaemonSettings", b =>
195 b.Property<
long>(
"Id")
196 .ValueGeneratedOnAdd()
197 .HasColumnType(
"bigint");
199 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
201 b.Property<
string>(
"AdditionalParameters")
204 .HasColumnType(
"longtext");
206 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"AdditionalParameters"),
"utf8mb4");
208 b.Property<
bool?>(
"AllowWebClient")
210 .HasColumnType(
"tinyint(1)");
212 b.Property<
bool?>(
"AutoStart")
214 .HasColumnType(
"tinyint(1)");
216 b.Property<
bool?>(
"DumpOnHealthCheckRestart")
218 .HasColumnType(
"tinyint(1)");
220 b.Property<uint?>(
"HealthCheckSeconds")
222 .HasColumnType(
"int unsigned");
224 b.Property<
long>(
"InstanceId")
225 .HasColumnType(
"bigint");
227 b.Property<
bool?>(
"LogOutput")
229 .HasColumnType(
"tinyint(1)");
231 b.Property<uint?>(
"MapThreads")
233 .HasColumnType(
"int unsigned");
235 b.Property<
bool?>(
"Minidumps")
237 .HasColumnType(
"tinyint(1)");
239 b.Property<ushort?>(
"OpenDreamTopicPort")
241 .HasColumnType(
"smallint unsigned");
243 b.Property<ushort?>(
"Port")
245 .HasColumnType(
"smallint unsigned");
247 b.Property<
int>(
"SecurityLevel")
248 .HasColumnType(
"int");
250 b.Property<
bool?>(
"StartProfiler")
252 .HasColumnType(
"tinyint(1)");
254 b.Property<uint?>(
"StartupTimeout")
256 .HasColumnType(
"int unsigned");
258 b.Property<uint?>(
"TopicRequestTimeout")
260 .HasColumnType(
"int unsigned");
262 b.Property<
int>(
"Visibility")
263 .HasColumnType(
"int");
267 b.HasIndex(
"InstanceId")
270 b.ToTable(
"DreamDaemonSettings");
273 modelBuilder.Entity(
"Tgstation.Server.Host.Models.DreamMakerSettings", b =>
275 b.Property<
long>(
"Id")
276 .ValueGeneratedOnAdd()
277 .HasColumnType(
"bigint");
279 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
281 b.Property<ushort?>(
"ApiValidationPort")
283 .HasColumnType(
"smallint unsigned");
285 b.Property<
int>(
"ApiValidationSecurityLevel")
286 .HasColumnType(
"int");
288 b.Property<
string>(
"CompilerAdditionalArguments")
290 .HasColumnType(
"varchar(10000)");
292 b.Property<
int>(
"DMApiValidationMode")
293 .HasColumnType(
"int");
295 b.Property<
long>(
"InstanceId")
296 .HasColumnType(
"bigint");
298 b.Property<
string>(
"ProjectName")
300 .HasColumnType(
"longtext");
302 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"ProjectName"),
"utf8mb4");
304 b.Property<TimeSpan?>(
"Timeout")
306 .HasColumnType(
"time(6)");
310 b.HasIndex(
"InstanceId")
313 b.ToTable(
"DreamMakerSettings");
316 modelBuilder.Entity(
"Tgstation.Server.Host.Models.Instance", b =>
318 b.Property<
long?>(
"Id")
319 .ValueGeneratedOnAdd()
320 .HasColumnType(
"bigint");
322 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
324 b.Property<
string>(
"AutoStartCron")
327 .HasColumnType(
"varchar(1000)");
329 b.Property<
string>(
"AutoStopCron")
332 .HasColumnType(
"varchar(1000)");
334 b.Property<
string>(
"AutoUpdateCron")
337 .HasColumnType(
"varchar(1000)");
339 b.Property<uint?>(
"AutoUpdateInterval")
341 .HasColumnType(
"int unsigned");
343 b.Property<ushort?>(
"ChatBotLimit")
345 .HasColumnType(
"smallint unsigned");
347 b.Property<
int>(
"ConfigurationType")
348 .HasColumnType(
"int");
350 b.Property<
string>(
"Name")
353 .HasColumnType(
"varchar(100)");
355 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Name"),
"utf8mb4");
357 b.Property<
bool?>(
"Online")
359 .HasColumnType(
"tinyint(1)");
361 b.Property<
string>(
"Path")
363 .HasColumnType(
"varchar(255)");
365 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Path"),
"utf8mb4");
367 b.Property<
string>(
"SwarmIdentifer")
368 .HasColumnType(
"varchar(255)");
370 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"SwarmIdentifer"),
"utf8mb4");
374 b.HasIndex(
"Path",
"SwarmIdentifer")
377 b.ToTable(
"Instances");
380 modelBuilder.Entity(
"Tgstation.Server.Host.Models.InstancePermissionSet", b =>
382 b.Property<
long>(
"Id")
383 .ValueGeneratedOnAdd()
384 .HasColumnType(
"bigint");
386 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
388 b.Property<ulong>(
"ChatBotRights")
389 .HasColumnType(
"bigint unsigned");
391 b.Property<ulong>(
"ConfigurationRights")
392 .HasColumnType(
"bigint unsigned");
394 b.Property<ulong>(
"DreamDaemonRights")
395 .HasColumnType(
"bigint unsigned");
397 b.Property<ulong>(
"DreamMakerRights")
398 .HasColumnType(
"bigint unsigned");
400 b.Property<ulong>(
"EngineRights")
401 .HasColumnType(
"bigint unsigned");
403 b.Property<
long>(
"InstanceId")
404 .HasColumnType(
"bigint");
406 b.Property<ulong>(
"InstancePermissionSetRights")
407 .HasColumnType(
"bigint unsigned");
409 b.Property<
long>(
"PermissionSetId")
410 .HasColumnType(
"bigint");
412 b.Property<ulong>(
"RepositoryRights")
413 .HasColumnType(
"bigint unsigned");
417 b.HasIndex(
"InstanceId");
419 b.HasIndex(
"PermissionSetId",
"InstanceId")
422 b.ToTable(
"InstancePermissionSets");
425 modelBuilder.Entity(
"Tgstation.Server.Host.Models.Job", b =>
427 b.Property<
long?>(
"Id")
428 .ValueGeneratedOnAdd()
429 .HasColumnType(
"bigint");
431 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
433 b.Property<ulong?>(
"CancelRight")
434 .HasColumnType(
"bigint unsigned");
436 b.Property<ulong?>(
"CancelRightsType")
437 .HasColumnType(
"bigint unsigned");
439 b.Property<
bool?>(
"Cancelled")
441 .HasColumnType(
"tinyint(1)");
443 b.Property<
long?>(
"CancelledById")
444 .HasColumnType(
"bigint");
446 b.Property<
string>(
"Description")
448 .HasColumnType(
"longtext");
450 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Description"),
"utf8mb4");
452 b.Property<uint?>(
"ErrorCode")
453 .HasColumnType(
"int unsigned");
455 b.Property<
string>(
"ExceptionDetails")
456 .HasColumnType(
"longtext");
458 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"ExceptionDetails"),
"utf8mb4");
460 b.Property<
long>(
"InstanceId")
461 .HasColumnType(
"bigint");
463 b.Property<
byte>(
"JobCode")
464 .HasColumnType(
"tinyint unsigned");
466 b.Property<DateTimeOffset?>(
"StartedAt")
468 .HasColumnType(
"datetime(6)");
470 b.Property<
long>(
"StartedById")
471 .HasColumnType(
"bigint");
473 b.Property<DateTimeOffset?>(
"StoppedAt")
474 .HasColumnType(
"datetime(6)");
478 b.HasIndex(
"CancelledById");
480 b.HasIndex(
"InstanceId");
482 b.HasIndex(
"StartedById");
487 modelBuilder.Entity(
"Tgstation.Server.Host.Models.OAuthConnection", b =>
489 b.Property<
long>(
"Id")
490 .ValueGeneratedOnAdd()
491 .HasColumnType(
"bigint");
493 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
495 b.Property<
string>(
"ExternalUserId")
498 .HasColumnType(
"varchar(100)");
500 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"ExternalUserId"),
"utf8mb4");
502 b.Property<
int>(
"Provider")
503 .HasColumnType(
"int");
505 b.Property<
long>(
"UserId")
506 .HasColumnType(
"bigint");
510 b.HasIndex(
"UserId");
512 b.HasIndex(
"Provider",
"ExternalUserId")
515 b.ToTable(
"OAuthConnections");
518 modelBuilder.Entity(
"Tgstation.Server.Host.Models.OidcConnection", b =>
520 b.Property<
long>(
"Id")
521 .ValueGeneratedOnAdd()
522 .HasColumnType(
"bigint");
524 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
526 b.Property<
string>(
"ExternalUserId")
529 .HasColumnType(
"varchar(100)");
531 b.Property<
string>(
"SchemeKey")
534 .HasColumnType(
"varchar(100)");
536 b.Property<
long>(
"UserId")
537 .HasColumnType(
"bigint");
541 b.HasIndex(
"UserId");
543 b.HasIndex(
"SchemeKey",
"ExternalUserId")
546 b.ToTable(
"OidcConnections");
549 modelBuilder.Entity(
"Tgstation.Server.Host.Models.PermissionSet", b =>
551 b.Property<
long?>(
"Id")
552 .ValueGeneratedOnAdd()
553 .HasColumnType(
"bigint");
555 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
557 b.Property<ulong>(
"AdministrationRights")
558 .HasColumnType(
"bigint unsigned");
560 b.Property<
long?>(
"GroupId")
561 .HasColumnType(
"bigint");
563 b.Property<ulong>(
"InstanceManagerRights")
564 .HasColumnType(
"bigint unsigned");
566 b.Property<
long?>(
"UserId")
567 .HasColumnType(
"bigint");
571 b.HasIndex(
"GroupId")
577 b.ToTable(
"PermissionSets");
580 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ReattachInformation", b =>
582 b.Property<
long?>(
"Id")
583 .ValueGeneratedOnAdd()
584 .HasColumnType(
"bigint");
586 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
588 b.Property<
string>(
"AccessIdentifier")
590 .HasColumnType(
"longtext");
592 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"AccessIdentifier"),
"utf8mb4");
594 b.Property<
long>(
"CompileJobId")
595 .HasColumnType(
"bigint");
597 b.Property<
long?>(
"InitialCompileJobId")
598 .HasColumnType(
"bigint");
600 b.Property<
int>(
"LaunchSecurityLevel")
601 .HasColumnType(
"int");
603 b.Property<
int>(
"LaunchVisibility")
604 .HasColumnType(
"int");
606 b.Property<ushort>(
"Port")
607 .HasColumnType(
"smallint unsigned");
609 b.Property<
int>(
"ProcessId")
610 .HasColumnType(
"int");
612 b.Property<
int>(
"RebootState")
613 .HasColumnType(
"int");
615 b.Property<ushort?>(
"TopicPort")
616 .HasColumnType(
"smallint unsigned");
620 b.HasIndex(
"CompileJobId");
622 b.HasIndex(
"InitialCompileJobId");
624 b.ToTable(
"ReattachInformations");
627 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RepositorySettings", b =>
629 b.Property<
long>(
"Id")
630 .ValueGeneratedOnAdd()
631 .HasColumnType(
"bigint");
633 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
635 b.Property<
string>(
"AccessToken")
637 .HasColumnType(
"longtext");
639 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"AccessToken"),
"utf8mb4");
641 b.Property<
string>(
"AccessUser")
643 .HasColumnType(
"longtext");
645 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"AccessUser"),
"utf8mb4");
647 b.Property<
bool?>(
"AutoUpdatesKeepTestMerges")
649 .HasColumnType(
"tinyint(1)");
651 b.Property<
bool?>(
"AutoUpdatesSynchronize")
653 .HasColumnType(
"tinyint(1)");
655 b.Property<
string>(
"CommitterEmail")
658 .HasColumnType(
"longtext");
660 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"CommitterEmail"),
"utf8mb4");
662 b.Property<
string>(
"CommitterName")
665 .HasColumnType(
"longtext");
667 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"CommitterName"),
"utf8mb4");
669 b.Property<
bool?>(
"CreateGitHubDeployments")
671 .HasColumnType(
"tinyint(1)");
673 b.Property<
long>(
"InstanceId")
674 .HasColumnType(
"bigint");
676 b.Property<
bool?>(
"PostTestMergeComment")
678 .HasColumnType(
"tinyint(1)");
680 b.Property<
bool?>(
"PushTestMergeCommits")
682 .HasColumnType(
"tinyint(1)");
684 b.Property<
bool?>(
"ShowTestMergeCommitters")
686 .HasColumnType(
"tinyint(1)");
688 b.Property<
bool?>(
"UpdateSubmodules")
690 .HasColumnType(
"tinyint(1)");
694 b.HasIndex(
"InstanceId")
697 b.ToTable(
"RepositorySettings");
700 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RevInfoTestMerge", b =>
702 b.Property<
long>(
"Id")
703 .ValueGeneratedOnAdd()
704 .HasColumnType(
"bigint");
706 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
708 b.Property<
long>(
"RevisionInformationId")
709 .HasColumnType(
"bigint");
711 b.Property<
long>(
"TestMergeId")
712 .HasColumnType(
"bigint");
716 b.HasIndex(
"RevisionInformationId");
718 b.HasIndex(
"TestMergeId");
720 b.ToTable(
"RevInfoTestMerges");
723 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RevisionInformation", b =>
725 b.Property<
long>(
"Id")
726 .ValueGeneratedOnAdd()
727 .HasColumnType(
"bigint");
729 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
731 b.Property<
string>(
"CommitSha")
734 .HasColumnType(
"varchar(40)");
736 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"CommitSha"),
"utf8mb4");
738 b.Property<
long>(
"InstanceId")
739 .HasColumnType(
"bigint");
741 b.Property<
string>(
"OriginCommitSha")
744 .HasColumnType(
"varchar(40)");
746 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"OriginCommitSha"),
"utf8mb4");
748 b.Property<DateTimeOffset>(
"Timestamp")
749 .HasColumnType(
"datetime(6)");
753 b.HasIndex(
"InstanceId",
"CommitSha")
756 b.ToTable(
"RevisionInformations");
759 modelBuilder.Entity(
"Tgstation.Server.Host.Models.TestMerge", b =>
761 b.Property<
long>(
"Id")
762 .ValueGeneratedOnAdd()
763 .HasColumnType(
"bigint");
765 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long>(
"Id"));
767 b.Property<
string>(
"Author")
769 .HasColumnType(
"longtext");
771 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Author"),
"utf8mb4");
773 b.Property<
string>(
"BodyAtMerge")
775 .HasColumnType(
"longtext");
777 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"BodyAtMerge"),
"utf8mb4");
779 b.Property<
string>(
"Comment")
781 .HasColumnType(
"longtext");
783 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Comment"),
"utf8mb4");
785 b.Property<DateTimeOffset>(
"MergedAt")
786 .HasColumnType(
"datetime(6)");
788 b.Property<
long>(
"MergedById")
789 .HasColumnType(
"bigint");
791 b.Property<
int>(
"Number")
792 .HasColumnType(
"int");
794 b.Property<
long?>(
"PrimaryRevisionInformationId")
796 .HasColumnType(
"bigint");
798 b.Property<
string>(
"TargetCommitSha")
801 .HasColumnType(
"varchar(40)");
803 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"TargetCommitSha"),
"utf8mb4");
805 b.Property<
string>(
"TitleAtMerge")
807 .HasColumnType(
"longtext");
809 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"TitleAtMerge"),
"utf8mb4");
811 b.Property<
string>(
"Url")
813 .HasColumnType(
"longtext");
815 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Url"),
"utf8mb4");
819 b.HasIndex(
"MergedById");
821 b.HasIndex(
"PrimaryRevisionInformationId")
824 b.ToTable(
"TestMerges");
827 modelBuilder.Entity(
"Tgstation.Server.Host.Models.User", b =>
829 b.Property<
long?>(
"Id")
830 .ValueGeneratedOnAdd()
831 .HasColumnType(
"bigint");
833 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
835 b.Property<
string>(
"CanonicalName")
838 .HasColumnType(
"varchar(100)");
840 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"CanonicalName"),
"utf8mb4");
842 b.Property<DateTimeOffset?>(
"CreatedAt")
844 .HasColumnType(
"datetime(6)");
846 b.Property<
long?>(
"CreatedById")
847 .HasColumnType(
"bigint");
849 b.Property<
bool?>(
"Enabled")
851 .HasColumnType(
"tinyint(1)");
853 b.Property<
long?>(
"GroupId")
854 .HasColumnType(
"bigint");
856 b.Property<DateTimeOffset?>(
"LastPasswordUpdate")
857 .HasColumnType(
"datetime(6)");
859 b.Property<
string>(
"Name")
862 .HasColumnType(
"varchar(100)");
864 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Name"),
"utf8mb4");
866 b.Property<
string>(
"PasswordHash")
867 .HasColumnType(
"longtext");
869 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"PasswordHash"),
"utf8mb4");
871 b.Property<
string>(
"SystemIdentifier")
873 .HasColumnType(
"varchar(100)");
875 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"SystemIdentifier"),
"utf8mb4");
879 b.HasIndex(
"CanonicalName")
882 b.HasIndex(
"CreatedById");
884 b.HasIndex(
"GroupId");
886 b.HasIndex(
"SystemIdentifier")
892 modelBuilder.Entity(
"Tgstation.Server.Host.Models.UserGroup", b =>
894 b.Property<
long?>(
"Id")
895 .ValueGeneratedOnAdd()
896 .HasColumnType(
"bigint");
898 MySqlPropertyBuilderExtensions.UseMySqlIdentityColumn(b.Property<
long?>(
"Id"));
900 b.Property<
string>(
"Name")
903 .HasColumnType(
"varchar(100)");
905 MySqlPropertyBuilderExtensions.HasCharSet(b.Property<
string>(
"Name"),
"utf8mb4");
915 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ChatBot", b =>
917 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
918 .WithMany(
"ChatSettings")
919 .HasForeignKey(
"InstanceId")
920 .OnDelete(DeleteBehavior.Cascade)
923 b.Navigation(
"Instance");
926 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ChatChannel", b =>
928 b.HasOne(
"Tgstation.Server.Host.Models.ChatBot",
"ChatSettings")
929 .WithMany(
"Channels")
930 .HasForeignKey(
"ChatSettingsId")
931 .OnDelete(DeleteBehavior.Cascade)
934 b.Navigation(
"ChatSettings");
937 modelBuilder.Entity(
"Tgstation.Server.Host.Models.CompileJob", b =>
939 b.HasOne(
"Tgstation.Server.Host.Models.Job",
"Job")
941 .HasForeignKey(
"Tgstation.Server.Host.Models.CompileJob",
"JobId")
942 .OnDelete(DeleteBehavior.Cascade)
945 b.HasOne(
"Tgstation.Server.Host.Models.RevisionInformation",
"RevisionInformation")
946 .WithMany(
"CompileJobs")
947 .HasForeignKey(
"RevisionInformationId")
948 .OnDelete(DeleteBehavior.Cascade)
953 b.Navigation(
"RevisionInformation");
956 modelBuilder.Entity(
"Tgstation.Server.Host.Models.DreamDaemonSettings", b =>
958 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
959 .WithOne(
"DreamDaemonSettings")
960 .HasForeignKey(
"Tgstation.Server.Host.Models.DreamDaemonSettings",
"InstanceId")
961 .OnDelete(DeleteBehavior.Cascade)
964 b.Navigation(
"Instance");
967 modelBuilder.Entity(
"Tgstation.Server.Host.Models.DreamMakerSettings", b =>
969 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
970 .WithOne(
"DreamMakerSettings")
971 .HasForeignKey(
"Tgstation.Server.Host.Models.DreamMakerSettings",
"InstanceId")
972 .OnDelete(DeleteBehavior.Cascade)
975 b.Navigation(
"Instance");
978 modelBuilder.Entity(
"Tgstation.Server.Host.Models.InstancePermissionSet", b =>
980 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
981 .WithMany(
"InstancePermissionSets")
982 .HasForeignKey(
"InstanceId")
983 .OnDelete(DeleteBehavior.Cascade)
986 b.HasOne(
"Tgstation.Server.Host.Models.PermissionSet",
"PermissionSet")
987 .WithMany(
"InstancePermissionSets")
988 .HasForeignKey(
"PermissionSetId")
989 .OnDelete(DeleteBehavior.Cascade)
992 b.Navigation(
"Instance");
994 b.Navigation(
"PermissionSet");
997 modelBuilder.Entity(
"Tgstation.Server.Host.Models.Job", b =>
999 b.HasOne(
"Tgstation.Server.Host.Models.User",
"CancelledBy")
1001 .HasForeignKey(
"CancelledById");
1003 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
1005 .HasForeignKey(
"InstanceId")
1006 .OnDelete(DeleteBehavior.Cascade)
1009 b.HasOne(
"Tgstation.Server.Host.Models.User",
"StartedBy")
1011 .HasForeignKey(
"StartedById")
1012 .OnDelete(DeleteBehavior.Cascade)
1015 b.Navigation(
"CancelledBy");
1017 b.Navigation(
"Instance");
1019 b.Navigation(
"StartedBy");
1022 modelBuilder.Entity(
"Tgstation.Server.Host.Models.OAuthConnection", b =>
1024 b.HasOne(
"Tgstation.Server.Host.Models.User",
"User")
1025 .WithMany(
"OAuthConnections")
1026 .HasForeignKey(
"UserId")
1027 .OnDelete(DeleteBehavior.Cascade)
1030 b.Navigation(
"User");
1033 modelBuilder.Entity(
"Tgstation.Server.Host.Models.OidcConnection", b =>
1035 b.HasOne(
"Tgstation.Server.Host.Models.User",
"User")
1036 .WithMany(
"OidcConnections")
1037 .HasForeignKey(
"UserId")
1038 .OnDelete(DeleteBehavior.Cascade)
1041 b.Navigation(
"User");
1044 modelBuilder.Entity(
"Tgstation.Server.Host.Models.PermissionSet", b =>
1046 b.HasOne(
"Tgstation.Server.Host.Models.UserGroup",
"Group")
1047 .WithOne(
"PermissionSet")
1048 .HasForeignKey(
"Tgstation.Server.Host.Models.PermissionSet",
"GroupId")
1049 .OnDelete(DeleteBehavior.Cascade);
1051 b.HasOne(
"Tgstation.Server.Host.Models.User",
"User")
1052 .WithOne(
"PermissionSet")
1053 .HasForeignKey(
"Tgstation.Server.Host.Models.PermissionSet",
"UserId")
1054 .OnDelete(DeleteBehavior.Cascade);
1056 b.Navigation(
"Group");
1058 b.Navigation(
"User");
1061 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ReattachInformation", b =>
1063 b.HasOne(
"Tgstation.Server.Host.Models.CompileJob",
"CompileJob")
1065 .HasForeignKey(
"CompileJobId")
1066 .OnDelete(DeleteBehavior.Cascade)
1069 b.HasOne(
"Tgstation.Server.Host.Models.CompileJob",
"InitialCompileJob")
1071 .HasForeignKey(
"InitialCompileJobId");
1073 b.Navigation(
"CompileJob");
1075 b.Navigation(
"InitialCompileJob");
1078 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RepositorySettings", b =>
1080 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
1081 .WithOne(
"RepositorySettings")
1082 .HasForeignKey(
"Tgstation.Server.Host.Models.RepositorySettings",
"InstanceId")
1083 .OnDelete(DeleteBehavior.Cascade)
1086 b.Navigation(
"Instance");
1089 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RevInfoTestMerge", b =>
1091 b.HasOne(
"Tgstation.Server.Host.Models.RevisionInformation",
"RevisionInformation")
1092 .WithMany(
"ActiveTestMerges")
1093 .HasForeignKey(
"RevisionInformationId")
1094 .OnDelete(DeleteBehavior.Cascade)
1097 b.HasOne(
"Tgstation.Server.Host.Models.TestMerge",
"TestMerge")
1098 .WithMany(
"RevisonInformations")
1099 .HasForeignKey(
"TestMergeId")
1100 .OnDelete(DeleteBehavior.ClientNoAction)
1103 b.Navigation(
"RevisionInformation");
1105 b.Navigation(
"TestMerge");
1108 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RevisionInformation", b =>
1110 b.HasOne(
"Tgstation.Server.Host.Models.Instance",
"Instance")
1111 .WithMany(
"RevisionInformations")
1112 .HasForeignKey(
"InstanceId")
1113 .OnDelete(DeleteBehavior.Cascade)
1116 b.Navigation(
"Instance");
1119 modelBuilder.Entity(
"Tgstation.Server.Host.Models.TestMerge", b =>
1121 b.HasOne(
"Tgstation.Server.Host.Models.User",
"MergedBy")
1122 .WithMany(
"TestMerges")
1123 .HasForeignKey(
"MergedById")
1124 .OnDelete(DeleteBehavior.Restrict)
1127 b.HasOne(
"Tgstation.Server.Host.Models.RevisionInformation",
"PrimaryRevisionInformation")
1128 .WithOne(
"PrimaryTestMerge")
1129 .HasForeignKey(
"Tgstation.Server.Host.Models.TestMerge",
"PrimaryRevisionInformationId")
1130 .OnDelete(DeleteBehavior.Cascade)
1133 b.Navigation(
"MergedBy");
1135 b.Navigation(
"PrimaryRevisionInformation");
1138 modelBuilder.Entity(
"Tgstation.Server.Host.Models.User", b =>
1140 b.HasOne(
"Tgstation.Server.Host.Models.User",
"CreatedBy")
1141 .WithMany(
"CreatedUsers")
1142 .HasForeignKey(
"CreatedById");
1144 b.HasOne(
"Tgstation.Server.Host.Models.UserGroup",
"Group")
1146 .HasForeignKey(
"GroupId");
1148 b.Navigation(
"CreatedBy");
1150 b.Navigation(
"Group");
1153 modelBuilder.Entity(
"Tgstation.Server.Host.Models.ChatBot", b =>
1155 b.Navigation(
"Channels");
1158 modelBuilder.Entity(
"Tgstation.Server.Host.Models.Instance", b =>
1160 b.Navigation(
"ChatSettings");
1162 b.Navigation(
"DreamDaemonSettings");
1164 b.Navigation(
"DreamMakerSettings");
1166 b.Navigation(
"InstancePermissionSets");
1168 b.Navigation(
"Jobs");
1170 b.Navigation(
"RepositorySettings");
1172 b.Navigation(
"RevisionInformations");
1175 modelBuilder.Entity(
"Tgstation.Server.Host.Models.PermissionSet", b =>
1177 b.Navigation(
"InstancePermissionSets");
1180 modelBuilder.Entity(
"Tgstation.Server.Host.Models.RevisionInformation", b =>
1182 b.Navigation(
"ActiveTestMerges");
1184 b.Navigation(
"CompileJobs");
1186 b.Navigation(
"PrimaryTestMerge");
1189 modelBuilder.Entity(
"Tgstation.Server.Host.Models.TestMerge", b =>
1191 b.Navigation(
"RevisonInformations");
1194 modelBuilder.Entity(
"Tgstation.Server.Host.Models.User", b =>
1196 b.Navigation(
"CreatedUsers");
1198 b.Navigation(
"OAuthConnections");
1200 b.Navigation(
"OidcConnections");
1202 b.Navigation(
"PermissionSet");
1204 b.Navigation(
"TestMerges");
1207 modelBuilder.Entity(
"Tgstation.Server.Host.Models.UserGroup", b =>
1209 b.Navigation(
"PermissionSet")
1212 b.Navigation(
"Users");
1214#pragma warning restore 612, 618