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