tgstation-server 6.12.0
The /tg/station 13 server suite
Loading...
Searching...
No Matches
20240907172259_SLAddDMApiValidationMode.Designer.cs
Go to the documentation of this file.
1// <auto-generated />
2using System;
3
4using Microsoft.EntityFrameworkCore;
5using Microsoft.EntityFrameworkCore.Infrastructure;
6using Microsoft.EntityFrameworkCore.Migrations;
7
9{
10 [DbContext(typeof(SqliteDatabaseContext))]
11 [Migration("20240907172259_SLAddDMApiValidationMode")]
12 partial class SLAddDMApiValidationMode
13 {
15 protected override void BuildTargetModel(ModelBuilder modelBuilder)
16 {
17#pragma warning disable 612, 618
18 modelBuilder.HasAnnotation("ProductVersion", "8.0.8");
19
20 modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b =>
21 {
22 b.Property<long?>("Id")
23 .ValueGeneratedOnAdd()
24 .HasColumnType("INTEGER");
25
26 b.Property<ushort?>("ChannelLimit")
27 .IsRequired()
28 .HasColumnType("INTEGER");
29
30 b.Property<string>("ConnectionString")
31 .IsRequired()
32 .HasMaxLength(10000)
33 .HasColumnType("TEXT");
34
35 b.Property<bool?>("Enabled")
36 .HasColumnType("INTEGER");
37
38 b.Property<long>("InstanceId")
39 .HasColumnType("INTEGER");
40
41 b.Property<string>("Name")
42 .IsRequired()
43 .HasMaxLength(100)
44 .HasColumnType("TEXT");
45
46 b.Property<int>("Provider")
47 .HasColumnType("INTEGER");
48
49 b.Property<uint?>("ReconnectionInterval")
50 .IsRequired()
51 .HasColumnType("INTEGER");
52
53 b.HasKey("Id");
54
55 b.HasIndex("InstanceId", "Name")
56 .IsUnique();
57
58 b.ToTable("ChatBots");
59 });
60
61 modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b =>
62 {
63 b.Property<long>("Id")
64 .ValueGeneratedOnAdd()
65 .HasColumnType("INTEGER");
66
67 b.Property<long>("ChatSettingsId")
68 .HasColumnType("INTEGER");
69
70 b.Property<ulong?>("DiscordChannelId")
71 .HasColumnType("INTEGER");
72
73 b.Property<string>("IrcChannel")
74 .HasMaxLength(100)
75 .HasColumnType("TEXT");
76
77 b.Property<bool?>("IsAdminChannel")
78 .IsRequired()
79 .HasColumnType("INTEGER");
80
81 b.Property<bool?>("IsSystemChannel")
82 .IsRequired()
83 .HasColumnType("INTEGER");
84
85 b.Property<bool?>("IsUpdatesChannel")
86 .IsRequired()
87 .HasColumnType("INTEGER");
88
89 b.Property<bool?>("IsWatchdogChannel")
90 .IsRequired()
91 .HasColumnType("INTEGER");
92
93 b.Property<string>("Tag")
94 .HasMaxLength(10000)
95 .HasColumnType("TEXT");
96
97 b.HasKey("Id");
98
99 b.HasIndex("ChatSettingsId", "DiscordChannelId")
100 .IsUnique();
101
102 b.HasIndex("ChatSettingsId", "IrcChannel")
103 .IsUnique();
104
105 b.ToTable("ChatChannels");
106 });
107
108 modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b =>
109 {
110 b.Property<long?>("Id")
111 .ValueGeneratedOnAdd()
112 .HasColumnType("INTEGER");
113
114 b.Property<int?>("DMApiMajorVersion")
115 .HasColumnType("INTEGER");
116
117 b.Property<int?>("DMApiMinorVersion")
118 .HasColumnType("INTEGER");
119
120 b.Property<int?>("DMApiPatchVersion")
121 .HasColumnType("INTEGER");
122
123 b.Property<Guid?>("DirectoryName")
124 .IsRequired()
125 .HasColumnType("TEXT");
126
127 b.Property<string>("DmeName")
128 .IsRequired()
129 .HasColumnType("TEXT");
130
131 b.Property<string>("EngineVersion")
132 .IsRequired()
133 .HasColumnType("TEXT");
134
135 b.Property<long?>("GitHubDeploymentId")
136 .HasColumnType("INTEGER");
137
138 b.Property<long?>("GitHubRepoId")
139 .HasColumnType("INTEGER");
140
141 b.Property<long>("JobId")
142 .HasColumnType("INTEGER");
143
144 b.Property<int?>("MinimumSecurityLevel")
145 .HasColumnType("INTEGER");
146
147 b.Property<string>("Output")
148 .IsRequired()
149 .HasColumnType("TEXT");
150
151 b.Property<string>("RepositoryOrigin")
152 .HasColumnType("TEXT");
153
154 b.Property<long>("RevisionInformationId")
155 .HasColumnType("INTEGER");
156
157 b.HasKey("Id");
158
159 b.HasIndex("DirectoryName");
160
161 b.HasIndex("JobId")
162 .IsUnique();
163
164 b.HasIndex("RevisionInformationId");
165
166 b.ToTable("CompileJobs");
167 });
168
169 modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b =>
170 {
171 b.Property<long>("Id")
172 .ValueGeneratedOnAdd()
173 .HasColumnType("INTEGER");
174
175 b.Property<string>("AdditionalParameters")
176 .IsRequired()
177 .HasMaxLength(10000)
178 .HasColumnType("TEXT");
179
180 b.Property<bool?>("AllowWebClient")
181 .IsRequired()
182 .HasColumnType("INTEGER");
183
184 b.Property<bool?>("AutoStart")
185 .IsRequired()
186 .HasColumnType("INTEGER");
187
188 b.Property<bool?>("DumpOnHealthCheckRestart")
189 .IsRequired()
190 .HasColumnType("INTEGER");
191
192 b.Property<uint?>("HealthCheckSeconds")
193 .IsRequired()
194 .HasColumnType("INTEGER");
195
196 b.Property<long>("InstanceId")
197 .HasColumnType("INTEGER");
198
199 b.Property<bool?>("LogOutput")
200 .IsRequired()
201 .HasColumnType("INTEGER");
202
203 b.Property<uint?>("MapThreads")
204 .IsRequired()
205 .HasColumnType("INTEGER");
206
207 b.Property<bool?>("Minidumps")
208 .IsRequired()
209 .HasColumnType("INTEGER");
210
211 b.Property<ushort?>("OpenDreamTopicPort")
212 .IsRequired()
213 .HasColumnType("INTEGER");
214
215 b.Property<ushort?>("Port")
216 .IsRequired()
217 .HasColumnType("INTEGER");
218
219 b.Property<int>("SecurityLevel")
220 .HasColumnType("INTEGER");
221
222 b.Property<bool?>("StartProfiler")
223 .IsRequired()
224 .HasColumnType("INTEGER");
225
226 b.Property<uint?>("StartupTimeout")
227 .IsRequired()
228 .HasColumnType("INTEGER");
229
230 b.Property<uint?>("TopicRequestTimeout")
231 .IsRequired()
232 .HasColumnType("INTEGER");
233
234 b.Property<int>("Visibility")
235 .HasColumnType("INTEGER");
236
237 b.HasKey("Id");
238
239 b.HasIndex("InstanceId")
240 .IsUnique();
241
242 b.ToTable("DreamDaemonSettings");
243 });
244
245 modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b =>
246 {
247 b.Property<long>("Id")
248 .ValueGeneratedOnAdd()
249 .HasColumnType("INTEGER");
250
251 b.Property<ushort?>("ApiValidationPort")
252 .IsRequired()
253 .HasColumnType("INTEGER");
254
255 b.Property<int>("ApiValidationSecurityLevel")
256 .HasColumnType("INTEGER");
257
258 b.Property<string>("CompilerAdditionalArguments")
259 .HasMaxLength(10000)
260 .HasColumnType("TEXT");
261
262 b.Property<int>("DMApiValidationMode")
263 .HasColumnType("INTEGER");
264
265 b.Property<long>("InstanceId")
266 .HasColumnType("INTEGER");
267
268 b.Property<string>("ProjectName")
269 .HasMaxLength(10000)
270 .HasColumnType("TEXT");
271
272 b.Property<TimeSpan?>("Timeout")
273 .IsRequired()
274 .HasColumnType("TEXT");
275
276 b.HasKey("Id");
277
278 b.HasIndex("InstanceId")
279 .IsUnique();
280
281 b.ToTable("DreamMakerSettings");
282 });
283
284 modelBuilder.Entity("Tgstation.Server.Host.Models.Instance", b =>
285 {
286 b.Property<long?>("Id")
287 .ValueGeneratedOnAdd()
288 .HasColumnType("INTEGER");
289
290 b.Property<string>("AutoUpdateCron")
291 .IsRequired()
292 .HasMaxLength(10000)
293 .HasColumnType("TEXT");
294
295 b.Property<uint?>("AutoUpdateInterval")
296 .IsRequired()
297 .HasColumnType("INTEGER");
298
299 b.Property<ushort?>("ChatBotLimit")
300 .IsRequired()
301 .HasColumnType("INTEGER");
302
303 b.Property<int>("ConfigurationType")
304 .HasColumnType("INTEGER");
305
306 b.Property<string>("Name")
307 .IsRequired()
308 .HasMaxLength(100)
309 .HasColumnType("TEXT");
310
311 b.Property<bool?>("Online")
312 .IsRequired()
313 .HasColumnType("INTEGER");
314
315 b.Property<string>("Path")
316 .IsRequired()
317 .HasColumnType("TEXT");
318
319 b.Property<string>("SwarmIdentifer")
320 .HasColumnType("TEXT");
321
322 b.HasKey("Id");
323
324 b.HasIndex("Path", "SwarmIdentifer")
325 .IsUnique();
326
327 b.ToTable("Instances");
328 });
329
330 modelBuilder.Entity("Tgstation.Server.Host.Models.InstancePermissionSet", b =>
331 {
332 b.Property<long>("Id")
333 .ValueGeneratedOnAdd()
334 .HasColumnType("INTEGER");
335
336 b.Property<ulong>("ChatBotRights")
337 .HasColumnType("INTEGER");
338
339 b.Property<ulong>("ConfigurationRights")
340 .HasColumnType("INTEGER");
341
342 b.Property<ulong>("DreamDaemonRights")
343 .HasColumnType("INTEGER");
344
345 b.Property<ulong>("DreamMakerRights")
346 .HasColumnType("INTEGER");
347
348 b.Property<ulong>("EngineRights")
349 .HasColumnType("INTEGER");
350
351 b.Property<long>("InstanceId")
352 .HasColumnType("INTEGER");
353
354 b.Property<ulong>("InstancePermissionSetRights")
355 .HasColumnType("INTEGER");
356
357 b.Property<long>("PermissionSetId")
358 .HasColumnType("INTEGER");
359
360 b.Property<ulong>("RepositoryRights")
361 .HasColumnType("INTEGER");
362
363 b.HasKey("Id");
364
365 b.HasIndex("InstanceId");
366
367 b.HasIndex("PermissionSetId", "InstanceId")
368 .IsUnique();
369
370 b.ToTable("InstancePermissionSets");
371 });
372
373 modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b =>
374 {
375 b.Property<long?>("Id")
376 .ValueGeneratedOnAdd()
377 .HasColumnType("INTEGER");
378
379 b.Property<ulong?>("CancelRight")
380 .HasColumnType("INTEGER");
381
382 b.Property<ulong?>("CancelRightsType")
383 .HasColumnType("INTEGER");
384
385 b.Property<bool?>("Cancelled")
386 .IsRequired()
387 .HasColumnType("INTEGER");
388
389 b.Property<long?>("CancelledById")
390 .HasColumnType("INTEGER");
391
392 b.Property<string>("Description")
393 .IsRequired()
394 .HasColumnType("TEXT");
395
396 b.Property<uint?>("ErrorCode")
397 .HasColumnType("INTEGER");
398
399 b.Property<string>("ExceptionDetails")
400 .HasColumnType("TEXT");
401
402 b.Property<long>("InstanceId")
403 .HasColumnType("INTEGER");
404
405 b.Property<byte>("JobCode")
406 .HasColumnType("INTEGER");
407
408 b.Property<DateTimeOffset?>("StartedAt")
409 .IsRequired()
410 .HasColumnType("TEXT");
411
412 b.Property<long>("StartedById")
413 .HasColumnType("INTEGER");
414
415 b.Property<DateTimeOffset?>("StoppedAt")
416 .HasColumnType("TEXT");
417
418 b.HasKey("Id");
419
420 b.HasIndex("CancelledById");
421
422 b.HasIndex("InstanceId");
423
424 b.HasIndex("StartedById");
425
426 b.ToTable("Jobs");
427 });
428
429 modelBuilder.Entity("Tgstation.Server.Host.Models.OAuthConnection", b =>
430 {
431 b.Property<long>("Id")
432 .ValueGeneratedOnAdd()
433 .HasColumnType("INTEGER");
434
435 b.Property<string>("ExternalUserId")
436 .IsRequired()
437 .HasMaxLength(100)
438 .HasColumnType("TEXT");
439
440 b.Property<int>("Provider")
441 .HasColumnType("INTEGER");
442
443 b.Property<long?>("UserId")
444 .HasColumnType("INTEGER");
445
446 b.HasKey("Id");
447
448 b.HasIndex("UserId");
449
450 b.HasIndex("Provider", "ExternalUserId")
451 .IsUnique();
452
453 b.ToTable("OAuthConnections");
454 });
455
456 modelBuilder.Entity("Tgstation.Server.Host.Models.PermissionSet", b =>
457 {
458 b.Property<long?>("Id")
459 .ValueGeneratedOnAdd()
460 .HasColumnType("INTEGER");
461
462 b.Property<ulong>("AdministrationRights")
463 .HasColumnType("INTEGER");
464
465 b.Property<long?>("GroupId")
466 .HasColumnType("INTEGER");
467
468 b.Property<ulong>("InstanceManagerRights")
469 .HasColumnType("INTEGER");
470
471 b.Property<long?>("UserId")
472 .HasColumnType("INTEGER");
473
474 b.HasKey("Id");
475
476 b.HasIndex("GroupId")
477 .IsUnique();
478
479 b.HasIndex("UserId")
480 .IsUnique();
481
482 b.ToTable("PermissionSets");
483 });
484
485 modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b =>
486 {
487 b.Property<long?>("Id")
488 .ValueGeneratedOnAdd()
489 .HasColumnType("INTEGER");
490
491 b.Property<string>("AccessIdentifier")
492 .IsRequired()
493 .HasColumnType("TEXT");
494
495 b.Property<long>("CompileJobId")
496 .HasColumnType("INTEGER");
497
498 b.Property<long?>("InitialCompileJobId")
499 .HasColumnType("INTEGER");
500
501 b.Property<int>("LaunchSecurityLevel")
502 .HasColumnType("INTEGER");
503
504 b.Property<int>("LaunchVisibility")
505 .HasColumnType("INTEGER");
506
507 b.Property<ushort>("Port")
508 .HasColumnType("INTEGER");
509
510 b.Property<int>("ProcessId")
511 .HasColumnType("INTEGER");
512
513 b.Property<int>("RebootState")
514 .HasColumnType("INTEGER");
515
516 b.Property<ushort?>("TopicPort")
517 .HasColumnType("INTEGER");
518
519 b.HasKey("Id");
520
521 b.HasIndex("CompileJobId");
522
523 b.HasIndex("InitialCompileJobId");
524
525 b.ToTable("ReattachInformations");
526 });
527
528 modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b =>
529 {
530 b.Property<long>("Id")
531 .ValueGeneratedOnAdd()
532 .HasColumnType("INTEGER");
533
534 b.Property<string>("AccessToken")
535 .HasMaxLength(10000)
536 .HasColumnType("TEXT");
537
538 b.Property<string>("AccessUser")
539 .HasMaxLength(10000)
540 .HasColumnType("TEXT");
541
542 b.Property<bool?>("AutoUpdatesKeepTestMerges")
543 .IsRequired()
544 .HasColumnType("INTEGER");
545
546 b.Property<bool?>("AutoUpdatesSynchronize")
547 .IsRequired()
548 .HasColumnType("INTEGER");
549
550 b.Property<string>("CommitterEmail")
551 .IsRequired()
552 .HasMaxLength(10000)
553 .HasColumnType("TEXT");
554
555 b.Property<string>("CommitterName")
556 .IsRequired()
557 .HasMaxLength(10000)
558 .HasColumnType("TEXT");
559
560 b.Property<bool?>("CreateGitHubDeployments")
561 .IsRequired()
562 .HasColumnType("INTEGER");
563
564 b.Property<long>("InstanceId")
565 .HasColumnType("INTEGER");
566
567 b.Property<bool?>("PostTestMergeComment")
568 .IsRequired()
569 .HasColumnType("INTEGER");
570
571 b.Property<bool?>("PushTestMergeCommits")
572 .IsRequired()
573 .HasColumnType("INTEGER");
574
575 b.Property<bool?>("ShowTestMergeCommitters")
576 .IsRequired()
577 .HasColumnType("INTEGER");
578
579 b.Property<bool?>("UpdateSubmodules")
580 .IsRequired()
581 .HasColumnType("INTEGER");
582
583 b.HasKey("Id");
584
585 b.HasIndex("InstanceId")
586 .IsUnique();
587
588 b.ToTable("RepositorySettings");
589 });
590
591 modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b =>
592 {
593 b.Property<long>("Id")
594 .ValueGeneratedOnAdd()
595 .HasColumnType("INTEGER");
596
597 b.Property<long>("RevisionInformationId")
598 .HasColumnType("INTEGER");
599
600 b.Property<long>("TestMergeId")
601 .HasColumnType("INTEGER");
602
603 b.HasKey("Id");
604
605 b.HasIndex("RevisionInformationId");
606
607 b.HasIndex("TestMergeId");
608
609 b.ToTable("RevInfoTestMerges");
610 });
611
612 modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b =>
613 {
614 b.Property<long>("Id")
615 .ValueGeneratedOnAdd()
616 .HasColumnType("INTEGER");
617
618 b.Property<string>("CommitSha")
619 .IsRequired()
620 .HasMaxLength(40)
621 .HasColumnType("TEXT");
622
623 b.Property<long>("InstanceId")
624 .HasColumnType("INTEGER");
625
626 b.Property<string>("OriginCommitSha")
627 .IsRequired()
628 .HasMaxLength(40)
629 .HasColumnType("TEXT");
630
631 b.Property<DateTimeOffset>("Timestamp")
632 .HasColumnType("TEXT");
633
634 b.HasKey("Id");
635
636 b.HasIndex("InstanceId", "CommitSha")
637 .IsUnique();
638
639 b.ToTable("RevisionInformations");
640 });
641
642 modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b =>
643 {
644 b.Property<long>("Id")
645 .ValueGeneratedOnAdd()
646 .HasColumnType("INTEGER");
647
648 b.Property<string>("Author")
649 .IsRequired()
650 .HasColumnType("TEXT");
651
652 b.Property<string>("BodyAtMerge")
653 .IsRequired()
654 .HasColumnType("TEXT");
655
656 b.Property<string>("Comment")
657 .HasMaxLength(10000)
658 .HasColumnType("TEXT");
659
660 b.Property<DateTimeOffset>("MergedAt")
661 .HasColumnType("TEXT");
662
663 b.Property<long>("MergedById")
664 .HasColumnType("INTEGER");
665
666 b.Property<int>("Number")
667 .HasColumnType("INTEGER");
668
669 b.Property<long?>("PrimaryRevisionInformationId")
670 .IsRequired()
671 .HasColumnType("INTEGER");
672
673 b.Property<string>("TargetCommitSha")
674 .IsRequired()
675 .HasMaxLength(40)
676 .HasColumnType("TEXT");
677
678 b.Property<string>("TitleAtMerge")
679 .IsRequired()
680 .HasColumnType("TEXT");
681
682 b.Property<string>("Url")
683 .IsRequired()
684 .HasColumnType("TEXT");
685
686 b.HasKey("Id");
687
688 b.HasIndex("MergedById");
689
690 b.HasIndex("PrimaryRevisionInformationId")
691 .IsUnique();
692
693 b.ToTable("TestMerges");
694 });
695
696 modelBuilder.Entity("Tgstation.Server.Host.Models.User", b =>
697 {
698 b.Property<long?>("Id")
699 .ValueGeneratedOnAdd()
700 .HasColumnType("INTEGER");
701
702 b.Property<string>("CanonicalName")
703 .IsRequired()
704 .HasMaxLength(100)
705 .HasColumnType("TEXT");
706
707 b.Property<DateTimeOffset?>("CreatedAt")
708 .IsRequired()
709 .HasColumnType("TEXT");
710
711 b.Property<long?>("CreatedById")
712 .HasColumnType("INTEGER");
713
714 b.Property<bool?>("Enabled")
715 .IsRequired()
716 .HasColumnType("INTEGER");
717
718 b.Property<long?>("GroupId")
719 .HasColumnType("INTEGER");
720
721 b.Property<DateTimeOffset?>("LastPasswordUpdate")
722 .HasColumnType("TEXT");
723
724 b.Property<string>("Name")
725 .IsRequired()
726 .HasMaxLength(100)
727 .HasColumnType("TEXT");
728
729 b.Property<string>("PasswordHash")
730 .HasColumnType("TEXT");
731
732 b.Property<string>("SystemIdentifier")
733 .HasMaxLength(100)
734 .HasColumnType("TEXT");
735
736 b.HasKey("Id");
737
738 b.HasIndex("CanonicalName")
739 .IsUnique();
740
741 b.HasIndex("CreatedById");
742
743 b.HasIndex("GroupId");
744
745 b.HasIndex("SystemIdentifier")
746 .IsUnique();
747
748 b.ToTable("Users");
749 });
750
751 modelBuilder.Entity("Tgstation.Server.Host.Models.UserGroup", b =>
752 {
753 b.Property<long?>("Id")
754 .ValueGeneratedOnAdd()
755 .HasColumnType("INTEGER");
756
757 b.Property<string>("Name")
758 .IsRequired()
759 .HasMaxLength(100)
760 .HasColumnType("TEXT");
761
762 b.HasKey("Id");
763
764 b.HasIndex("Name")
765 .IsUnique();
766
767 b.ToTable("Groups");
768 });
769
770 modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b =>
771 {
772 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
773 .WithMany("ChatSettings")
774 .HasForeignKey("InstanceId")
775 .OnDelete(DeleteBehavior.Cascade)
776 .IsRequired();
777
778 b.Navigation("Instance");
779 });
780
781 modelBuilder.Entity("Tgstation.Server.Host.Models.ChatChannel", b =>
782 {
783 b.HasOne("Tgstation.Server.Host.Models.ChatBot", "ChatSettings")
784 .WithMany("Channels")
785 .HasForeignKey("ChatSettingsId")
786 .OnDelete(DeleteBehavior.Cascade)
787 .IsRequired();
788
789 b.Navigation("ChatSettings");
790 });
791
792 modelBuilder.Entity("Tgstation.Server.Host.Models.CompileJob", b =>
793 {
794 b.HasOne("Tgstation.Server.Host.Models.Job", "Job")
795 .WithOne()
796 .HasForeignKey("Tgstation.Server.Host.Models.CompileJob", "JobId")
797 .OnDelete(DeleteBehavior.Cascade)
798 .IsRequired();
799
800 b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation")
801 .WithMany("CompileJobs")
802 .HasForeignKey("RevisionInformationId")
803 .OnDelete(DeleteBehavior.ClientNoAction)
804 .IsRequired();
805
806 b.Navigation("Job");
807
808 b.Navigation("RevisionInformation");
809 });
810
811 modelBuilder.Entity("Tgstation.Server.Host.Models.DreamDaemonSettings", b =>
812 {
813 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
814 .WithOne("DreamDaemonSettings")
815 .HasForeignKey("Tgstation.Server.Host.Models.DreamDaemonSettings", "InstanceId")
816 .OnDelete(DeleteBehavior.Cascade)
817 .IsRequired();
818
819 b.Navigation("Instance");
820 });
821
822 modelBuilder.Entity("Tgstation.Server.Host.Models.DreamMakerSettings", b =>
823 {
824 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
825 .WithOne("DreamMakerSettings")
826 .HasForeignKey("Tgstation.Server.Host.Models.DreamMakerSettings", "InstanceId")
827 .OnDelete(DeleteBehavior.Cascade)
828 .IsRequired();
829
830 b.Navigation("Instance");
831 });
832
833 modelBuilder.Entity("Tgstation.Server.Host.Models.InstancePermissionSet", b =>
834 {
835 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
836 .WithMany("InstancePermissionSets")
837 .HasForeignKey("InstanceId")
838 .OnDelete(DeleteBehavior.Cascade)
839 .IsRequired();
840
841 b.HasOne("Tgstation.Server.Host.Models.PermissionSet", "PermissionSet")
842 .WithMany("InstancePermissionSets")
843 .HasForeignKey("PermissionSetId")
844 .OnDelete(DeleteBehavior.Cascade)
845 .IsRequired();
846
847 b.Navigation("Instance");
848
849 b.Navigation("PermissionSet");
850 });
851
852 modelBuilder.Entity("Tgstation.Server.Host.Models.Job", b =>
853 {
854 b.HasOne("Tgstation.Server.Host.Models.User", "CancelledBy")
855 .WithMany()
856 .HasForeignKey("CancelledById");
857
858 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
859 .WithMany("Jobs")
860 .HasForeignKey("InstanceId")
861 .OnDelete(DeleteBehavior.Cascade)
862 .IsRequired();
863
864 b.HasOne("Tgstation.Server.Host.Models.User", "StartedBy")
865 .WithMany()
866 .HasForeignKey("StartedById")
867 .OnDelete(DeleteBehavior.Cascade)
868 .IsRequired();
869
870 b.Navigation("CancelledBy");
871
872 b.Navigation("Instance");
873
874 b.Navigation("StartedBy");
875 });
876
877 modelBuilder.Entity("Tgstation.Server.Host.Models.OAuthConnection", b =>
878 {
879 b.HasOne("Tgstation.Server.Host.Models.User", "User")
880 .WithMany("OAuthConnections")
881 .HasForeignKey("UserId")
882 .OnDelete(DeleteBehavior.Cascade);
883
884 b.Navigation("User");
885 });
886
887 modelBuilder.Entity("Tgstation.Server.Host.Models.PermissionSet", b =>
888 {
889 b.HasOne("Tgstation.Server.Host.Models.UserGroup", "Group")
890 .WithOne("PermissionSet")
891 .HasForeignKey("Tgstation.Server.Host.Models.PermissionSet", "GroupId")
892 .OnDelete(DeleteBehavior.Cascade);
893
894 b.HasOne("Tgstation.Server.Host.Models.User", "User")
895 .WithOne("PermissionSet")
896 .HasForeignKey("Tgstation.Server.Host.Models.PermissionSet", "UserId")
897 .OnDelete(DeleteBehavior.Cascade);
898
899 b.Navigation("Group");
900
901 b.Navigation("User");
902 });
903
904 modelBuilder.Entity("Tgstation.Server.Host.Models.ReattachInformation", b =>
905 {
906 b.HasOne("Tgstation.Server.Host.Models.CompileJob", "CompileJob")
907 .WithMany()
908 .HasForeignKey("CompileJobId")
909 .OnDelete(DeleteBehavior.Cascade)
910 .IsRequired();
911
912 b.HasOne("Tgstation.Server.Host.Models.CompileJob", "InitialCompileJob")
913 .WithMany()
914 .HasForeignKey("InitialCompileJobId");
915
916 b.Navigation("CompileJob");
917
918 b.Navigation("InitialCompileJob");
919 });
920
921 modelBuilder.Entity("Tgstation.Server.Host.Models.RepositorySettings", b =>
922 {
923 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
924 .WithOne("RepositorySettings")
925 .HasForeignKey("Tgstation.Server.Host.Models.RepositorySettings", "InstanceId")
926 .OnDelete(DeleteBehavior.Cascade)
927 .IsRequired();
928
929 b.Navigation("Instance");
930 });
931
932 modelBuilder.Entity("Tgstation.Server.Host.Models.RevInfoTestMerge", b =>
933 {
934 b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "RevisionInformation")
935 .WithMany("ActiveTestMerges")
936 .HasForeignKey("RevisionInformationId")
937 .OnDelete(DeleteBehavior.Cascade)
938 .IsRequired();
939
940 b.HasOne("Tgstation.Server.Host.Models.TestMerge", "TestMerge")
941 .WithMany("RevisonInformations")
942 .HasForeignKey("TestMergeId")
943 .OnDelete(DeleteBehavior.ClientNoAction)
944 .IsRequired();
945
946 b.Navigation("RevisionInformation");
947
948 b.Navigation("TestMerge");
949 });
950
951 modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b =>
952 {
953 b.HasOne("Tgstation.Server.Host.Models.Instance", "Instance")
954 .WithMany("RevisionInformations")
955 .HasForeignKey("InstanceId")
956 .OnDelete(DeleteBehavior.Cascade)
957 .IsRequired();
958
959 b.Navigation("Instance");
960 });
961
962 modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b =>
963 {
964 b.HasOne("Tgstation.Server.Host.Models.User", "MergedBy")
965 .WithMany("TestMerges")
966 .HasForeignKey("MergedById")
967 .OnDelete(DeleteBehavior.Restrict)
968 .IsRequired();
969
970 b.HasOne("Tgstation.Server.Host.Models.RevisionInformation", "PrimaryRevisionInformation")
971 .WithOne("PrimaryTestMerge")
972 .HasForeignKey("Tgstation.Server.Host.Models.TestMerge", "PrimaryRevisionInformationId")
973 .OnDelete(DeleteBehavior.Cascade)
974 .IsRequired();
975
976 b.Navigation("MergedBy");
977
978 b.Navigation("PrimaryRevisionInformation");
979 });
980
981 modelBuilder.Entity("Tgstation.Server.Host.Models.User", b =>
982 {
983 b.HasOne("Tgstation.Server.Host.Models.User", "CreatedBy")
984 .WithMany("CreatedUsers")
985 .HasForeignKey("CreatedById");
986
987 b.HasOne("Tgstation.Server.Host.Models.UserGroup", "Group")
988 .WithMany("Users")
989 .HasForeignKey("GroupId");
990
991 b.Navigation("CreatedBy");
992
993 b.Navigation("Group");
994 });
995
996 modelBuilder.Entity("Tgstation.Server.Host.Models.ChatBot", b =>
997 {
998 b.Navigation("Channels");
999 });
1000
1001 modelBuilder.Entity("Tgstation.Server.Host.Models.Instance", b =>
1002 {
1003 b.Navigation("ChatSettings");
1004
1005 b.Navigation("DreamDaemonSettings");
1006
1007 b.Navigation("DreamMakerSettings");
1008
1009 b.Navigation("InstancePermissionSets");
1010
1011 b.Navigation("Jobs");
1012
1013 b.Navigation("RepositorySettings");
1014
1015 b.Navigation("RevisionInformations");
1016 });
1017
1018 modelBuilder.Entity("Tgstation.Server.Host.Models.PermissionSet", b =>
1019 {
1020 b.Navigation("InstancePermissionSets");
1021 });
1022
1023 modelBuilder.Entity("Tgstation.Server.Host.Models.RevisionInformation", b =>
1024 {
1025 b.Navigation("ActiveTestMerges");
1026
1027 b.Navigation("CompileJobs");
1028
1029 b.Navigation("PrimaryTestMerge");
1030 });
1031
1032 modelBuilder.Entity("Tgstation.Server.Host.Models.TestMerge", b =>
1033 {
1034 b.Navigation("RevisonInformations");
1035 });
1036
1037 modelBuilder.Entity("Tgstation.Server.Host.Models.User", b =>
1038 {
1039 b.Navigation("CreatedUsers");
1040
1041 b.Navigation("OAuthConnections");
1042
1043 b.Navigation("PermissionSet");
1044
1045 b.Navigation("TestMerges");
1046 });
1047
1048 modelBuilder.Entity("Tgstation.Server.Host.Models.UserGroup", b =>
1049 {
1050 b.Navigation("PermissionSet")
1051 .IsRequired();
1052
1053 b.Navigation("Users");
1054 });
1055#pragma warning restore 612, 618
1056 }
1057 }
1058}