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