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