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