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