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