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