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