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