Files
Microsoft.SelfService.Porta…/Migrations/20260707203222_ResetAndSeedDemoData.Designer.cs

2124 lines
97 KiB
C#

// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using Microsoft.SelfService.Portal.Core.API.Context;
#nullable disable
namespace Microsoft.SelfService.Portal.Core.API.Migrations
{
[DbContext(typeof(DataContext))]
[Migration("20260707203222_ResetAndSeedDemoData")]
partial class ResetAndSeedDemoData
{
/// <inheritdoc />
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "10.0.8")
.HasAnnotation("Relational:MaxIdentifierLength", 128);
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentGroupModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid?>("DeploymentRuleId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(3);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Status")
.IsRequired()
.ValueGeneratedOnAdd()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4)
.HasDefaultValueSql("'New'");
b.Property<Guid>("TemplateId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(2);
b.HasKey("Id");
b.HasIndex("DeploymentRuleId");
b.HasIndex("TemplateId");
b.ToTable("DeploymentBatches", (string)null);
b.HasData(
new
{
Id = new Guid("80000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Status = "Pending",
TemplateId = new Guid("70000000-0000-0000-0000-000000000003")
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentModel", b =>
{
b.Property<Guid>("VirtualMachineId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(3);
b.Property<Guid>("DeploymentGroupId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeploymentBatchId")
.HasColumnOrder(2);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<string>("JSONData")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(5);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Status")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.HasKey("VirtualMachineId", "DeploymentGroupId");
b.HasIndex("DeploymentGroupId");
b.ToTable("DeploymentExecutions", (string)null);
b.HasData(
new
{
VirtualMachineId = new Guid("30000000-0000-0000-0000-000000000004"),
DeploymentGroupId = new Guid("80000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Id = new Guid("81000000-0000-0000-0000-000000000001"),
JSONData = "{\"role\":\"WebFrontEnd\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Status = "Pending"
},
new
{
VirtualMachineId = new Guid("30000000-0000-0000-0000-000000000005"),
DeploymentGroupId = new Guid("80000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Id = new Guid("81000000-0000-0000-0000-000000000002"),
JSONData = "{\"role\":\"Application\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Status = "Pending"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("Description")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<bool>("IsActive")
.HasColumnType("bit")
.HasColumnOrder(3);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.HasKey("Id");
b.ToTable("DeploymentRules");
b.HasData(
new
{
Id = new Guid("60000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Validate input, wait for approval, then provision targets.",
IsActive = true,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Standard Provisioning"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleStepModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid>("DeploymentRuleId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.Property<string>("MetadataJson")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(6);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<bool>("RequiresApproval")
.HasColumnType("bit")
.HasColumnOrder(5);
b.Property<int>("SortOrder")
.HasColumnType("int")
.HasColumnOrder(2);
b.Property<string>("StepType")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.HasKey("Id");
b.HasIndex("DeploymentRuleId");
b.ToTable("DeploymentRuleSteps");
b.HasData(
new
{
Id = new Guid("60000000-0000-0000-0000-000000000101"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"action\":\"validate\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Validate configuration",
RequiresApproval = false,
SortOrder = 10,
StepType = "Provision"
},
new
{
Id = new Guid("60000000-0000-0000-0000-000000000102"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"approverGroup\":\"Platform Owners\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Approve deployment",
RequiresApproval = true,
SortOrder = 20,
StepType = "Approval"
},
new
{
Id = new Guid("60000000-0000-0000-0000-000000000103"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"action\":\"deploy\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Provision workload",
RequiresApproval = false,
SortOrder = 30,
StepType = "Provision"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DomainModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("FQDN")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.Property<string>("NetBIOS")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.HasKey("Id");
b.ToTable("Domains");
b.HasData(
new
{
Id = new Guid("20000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
FQDN = "corp.contoso.com",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Central Management",
NetBIOS = "CONTOSO"
},
new
{
Id = new Guid("20000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
FQDN = "resource.contoso.com",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Resource Domain",
NetBIOS = "RESOURCE"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.EnvironmentDomainsModel", b =>
{
b.Property<Guid>("EnvironmentId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0);
b.Property<Guid>("DomainId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.Property<DateTime>("Created")
.HasColumnType("datetime2")
.HasColumnOrder(52);
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<DateTime>("Modified")
.HasColumnType("datetime2")
.HasColumnOrder(50);
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.HasKey("EnvironmentId", "DomainId");
b.HasIndex("DomainId");
b.ToTable("EnvironmentDomains");
b.HasData(
new
{
EnvironmentId = new Guid("10000000-0000-0000-0000-000000000001"),
DomainId = new Guid("20000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed"
},
new
{
EnvironmentId = new Guid("10000000-0000-0000-0000-000000000002"),
DomainId = new Guid("20000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed"
},
new
{
EnvironmentId = new Guid("10000000-0000-0000-0000-000000000002"),
DomainId = new Guid("20000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.EnvironmentModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("EnvironmentType")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<string>("HostingType")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<string>("MetadataJson")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(7);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.Property<string>("ProviderType")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<string>("SubscriptionId")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(6);
b.Property<string>("TenantId")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(5);
b.HasKey("Id");
b.ToTable("Environments");
b.HasData(
new
{
Id = new Guid("10000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
EnvironmentType = "Test",
HostingType = "OnPrem",
MetadataJson = "{\"location\":\"Datacenter A\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso Test"
},
new
{
Id = new Guid("10000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
EnvironmentType = "Production",
HostingType = "OnPrem",
MetadataJson = "{\"location\":\"Datacenter A\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso Production"
},
new
{
Id = new Guid("10000000-0000-0000-0000-000000000003"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
EnvironmentType = "Production",
HostingType = "M365Tenant",
MetadataJson = "{\"tenant\":\"contoso.onmicrosoft.com\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso M365",
ProviderType = "Microsoft365",
TenantId = "11111111-1111-1111-1111-111111111111"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.EventModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<string>("Class")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("Method")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("RestEndpointMethod")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<string>("RestEndpointOperation")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(5);
b.Property<Guid>("RunbookId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.HasKey("Id");
b.HasIndex("RunbookId");
b.ToTable("Events");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.JobModel", b =>
{
b.Property<Guid>("RunbookId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(2);
b.Property<Guid>("DeploymentId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.HasKey("RunbookId", "DeploymentId");
b.HasIndex("DeploymentId");
b.ToTable("Jobs");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.OptionCategoryModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.Property<string>("ParentCategoryName")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<int>("showOrder")
.HasColumnType("int")
.HasColumnOrder(3);
b.HasKey("Id");
b.ToTable("OptionCategories");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.OptionModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.Property<Guid>("OptionCategoryId")
.HasColumnType("uniqueidentifier");
b.Property<string>("OptionType")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<string>("OptionValue")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.HasKey("Id");
b.HasIndex("OptionCategoryId");
b.ToTable("Options");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.QueueJobModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<int>("Attempts")
.HasColumnType("int")
.HasColumnOrder(4);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("ErrorMessage")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(10);
b.Property<DateTime?>("Finished")
.HasColumnType("datetime2")
.HasColumnOrder(7);
b.Property<string>("LockedBy")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(9);
b.Property<DateTime?>("LockedUntil")
.HasColumnType("datetime2")
.HasColumnOrder(8);
b.Property<int>("MaxAttempts")
.HasColumnType("int")
.HasColumnOrder(5);
b.Property<string>("MetadataJson")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(11);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("PayloadJson")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<string>("RuleSnapshotJson")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(12);
b.Property<DateTime?>("Started")
.HasColumnType("datetime2")
.HasColumnOrder(6);
b.Property<string>("Status")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<string>("Type")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.HasKey("Id");
b.ToTable("DeploymentJobs", (string)null);
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.QueueJobStepModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<string>("ApprovalComment")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(10);
b.Property<DateTime?>("ApprovedAt")
.HasColumnType("datetime2")
.HasColumnOrder(8);
b.Property<string>("ApprovedBy")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(9);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid?>("DependsOnQueueJobStepId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DependsOnDeploymentJobStepId")
.HasColumnOrder(2);
b.Property<string>("MetadataJson")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(7);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<Guid>("QueueJobId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeploymentJobId")
.HasColumnOrder(1);
b.Property<int>("SortOrder")
.HasColumnType("int")
.HasColumnOrder(3);
b.Property<string>("Status")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(6);
b.Property<string>("StepType")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(5);
b.HasKey("Id");
b.HasIndex("DependsOnQueueJobStepId");
b.HasIndex("QueueJobId");
b.ToTable("DeploymentJobSteps", (string)null);
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.QueueJobTargetModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<int>("Attempts")
.HasColumnType("int")
.HasColumnOrder(6);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid>("DeploymentGroupId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeploymentBatchId")
.HasColumnOrder(3);
b.Property<string>("ErrorMessage")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(7);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<Guid>("QueueJobId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeploymentJobId")
.HasColumnOrder(1);
b.Property<string>("Status")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(5);
b.Property<Guid>("TemplateId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(4);
b.Property<Guid>("VirtualMachineId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(2);
b.HasKey("Id");
b.HasIndex("QueueJobId");
b.ToTable("DeploymentJobTargets", (string)null);
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.RunbookModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("Description")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.HasKey("Id");
b.ToTable("Runbooks");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.ServiceModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("Description")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<string>("IconKey")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<bool>("IsCloudService")
.HasColumnType("bit")
.HasColumnOrder(3);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.HasKey("Id");
b.ToTable("Services");
b.HasData(
new
{
Id = new Guid("40000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "On-premises directory and identity service.",
IconKey = "network",
IsCloudService = false,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Active Directory"
},
new
{
Id = new Guid("40000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Database platform for application workloads.",
IconKey = "database",
IsCloudService = false,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "SQL Server"
},
new
{
Id = new Guid("40000000-0000-0000-0000-000000000003"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Collaboration platform for on-premises workloads.",
IconKey = "sharepoint",
IsCloudService = false,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "SharePoint Server"
},
new
{
Id = new Guid("40000000-0000-0000-0000-000000000004"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Cloud collaboration workload in Microsoft 365.",
IconKey = "messages-square",
IsCloudService = true,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Microsoft Teams"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.ServiceRoleDefinitionModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("Description")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<string>("Key")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<Guid>("ServiceId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.HasKey("Id");
b.HasIndex("ServiceId");
b.ToTable("ServiceRoleDefinitions");
b.HasData(
new
{
Id = new Guid("41000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "SharePoint farm role.",
Key = "Farm",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Farm",
ServiceId = new Guid("40000000-0000-0000-0000-000000000003")
},
new
{
Id = new Guid("41000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "SharePoint web front-end role.",
Key = "WebFrontEnd",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Web Front End",
ServiceId = new Guid("40000000-0000-0000-0000-000000000003")
},
new
{
Id = new Guid("41000000-0000-0000-0000-000000000003"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "SharePoint service application role.",
Key = "Application",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Application",
ServiceId = new Guid("40000000-0000-0000-0000-000000000003")
},
new
{
Id = new Guid("41000000-0000-0000-0000-000000000004"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "SQL Server database role.",
Key = "Database",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Database",
ServiceId = new Guid("40000000-0000-0000-0000-000000000002")
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateCategoryModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<string>("Color")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(5);
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<string>("Description")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<bool>("IsActive")
.HasColumnType("bit")
.HasColumnOrder(4);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.Property<Guid>("ServiceId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.HasKey("Id");
b.HasIndex("ServiceId");
b.ToTable("TemplateCategories");
b.HasData(
new
{
Id = new Guid("50000000-0000-0000-0000-000000000001"),
Color = "#2563EB",
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Templates for domain controller and domain configuration.",
IsActive = true,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Domain Services",
ServiceId = new Guid("40000000-0000-0000-0000-000000000001")
},
new
{
Id = new Guid("50000000-0000-0000-0000-000000000002"),
Color = "#16A34A",
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Templates for SQL Server workloads.",
IsActive = true,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Database Platform",
ServiceId = new Guid("40000000-0000-0000-0000-000000000002")
},
new
{
Id = new Guid("50000000-0000-0000-0000-000000000003"),
Color = "#0F766E",
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Templates for SharePoint Server farms.",
IsActive = true,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Collaboration Farm",
ServiceId = new Guid("40000000-0000-0000-0000-000000000003")
},
new
{
Id = new Guid("50000000-0000-0000-0000-000000000004"),
Color = "#7C3AED",
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
Description = "Templates for Teams policy configuration.",
IsActive = true,
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Teams Policies",
ServiceId = new Guid("40000000-0000-0000-0000-000000000004")
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid?>("DeploymentRuleId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(6);
b.Property<string>("Description")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<string>("JSONData")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(1);
b.Property<Guid>("TemplateCategoryId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(5);
b.Property<string>("Version")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.HasKey("Id");
b.HasIndex("DeploymentRuleId");
b.HasIndex("TemplateCategoryId");
b.ToTable("Templates");
b.HasData(
new
{
Id = new Guid("70000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
Description = "Creates a reusable Active Directory domain baseline.",
JSONData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"DomainName\": { \"type\": \"string\", \"defaultValue\": \"corp.contoso.com\" },\n \"NetBIOSName\": { \"type\": \"string\", \"defaultValue\": \"CONTOSO\" }\n },\n \"variables\": {\n \"DefaultSiteName\": \"[concat(parameters('DomainName'), '-DefaultSite')]\"\n },\n \"resources\": {\n \"AllNodes\": [\n { \"NodeName\": \"*\", \"PSDscAllowPlainTextPassword\": true }\n ],\n \"NonNodeData\": {\n \"Services\": {\n \"ActiveDirectory\": {\n \"DomainName\": \"[parameters('DomainName')]\",\n \"NetBIOSName\": \"[parameters('NetBIOSName')]\"\n }\n }\n }\n }\n}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso Active Directory Domain",
TemplateCategoryId = new Guid("50000000-0000-0000-0000-000000000001"),
Version = "1.0.0"
},
new
{
Id = new Guid("70000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
Description = "Creates a SQL Server baseline for application workloads.",
JSONData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"InstanceName\": { \"type\": \"string\", \"defaultValue\": \"MSSQLSERVER\" },\n \"DatabasePrefix\": { \"type\": \"string\", \"defaultValue\": \"Contoso\" }\n },\n \"variables\": {\n \"ConfigDatabase\": \"[concat(parameters('DatabasePrefix'), '_Config')]\"\n },\n \"resources\": {\n \"NonNodeData\": {\n \"Services\": {\n \"SqlServer\": {\n \"InstanceName\": \"[parameters('InstanceName')]\",\n \"ConfigDatabase\": \"[variables('ConfigDatabase')]\"\n }\n }\n }\n }\n}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso SQL Server",
TemplateCategoryId = new Guid("50000000-0000-0000-0000-000000000002"),
Version = "1.0.0"
},
new
{
Id = new Guid("70000000-0000-0000-0000-000000000003"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
Description = "Creates a SharePoint Server farm baseline.",
JSONData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"DatabasePrefix\": { \"type\": \"string\", \"defaultValue\": \"SharePoint_Contoso_Test\" },\n \"FarmAccount\": { \"type\": \"credential\", \"metadata\": { \"description\": \"Farm account resolved by the credential provider.\" } }\n },\n \"variables\": {\n \"ConfigDbName\": \"[concat(parameters('DatabasePrefix'), '_Farm_Config')]\",\n \"AdminContentDbName\": \"[concat(parameters('DatabasePrefix'), '_AdminContent')]\"\n },\n \"resources\": {\n \"NonNodeData\": {\n \"Services\": {\n \"SharePoint\": {\n \"Farm\": {\n \"ConfigDatabase\": \"[variables('ConfigDbName')]\",\n \"AdminContentDatabase\": \"[variables('AdminContentDbName')]\",\n \"ManagedAccounts\": {\n \"FarmAccount\": \"[parameters('FarmAccount')]\"\n }\n }\n }\n }\n }\n }\n}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso SharePoint Server",
TemplateCategoryId = new Guid("50000000-0000-0000-0000-000000000003"),
Version = "1.0.0"
},
new
{
Id = new Guid("70000000-0000-0000-0000-000000000004"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DeploymentRuleId = new Guid("60000000-0000-0000-0000-000000000001"),
Description = "Creates a Microsoft Teams policy baseline.",
JSONData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"CallingPolicyName\": { \"type\": \"string\", \"defaultValue\": \"Contoso-Standard-Calling\" },\n \"MeetingPolicyName\": { \"type\": \"string\", \"defaultValue\": \"Contoso-Standard-Meetings\" }\n },\n \"variables\": {},\n \"resources\": {\n \"NonNodeData\": {\n \"Services\": {\n \"Teams\": {\n \"CallingPolicy\": \"[parameters('CallingPolicyName')]\",\n \"MeetingPolicy\": \"[parameters('MeetingPolicyName')]\"\n }\n }\n }\n }\n}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "Contoso Teams Policies",
TemplateCategoryId = new Guid("50000000-0000-0000-0000-000000000004"),
Version = "1.0.0"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateOptionModel", b =>
{
b.Property<Guid>("OptionId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.Property<Guid>("TemplateId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0);
b.Property<DateTime>("Created")
.HasColumnType("datetime2")
.HasColumnOrder(52);
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<DateTime>("Modified")
.HasColumnType("datetime2")
.HasColumnOrder(50);
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Value")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.HasKey("OptionId", "TemplateId");
b.HasIndex("TemplateId");
b.ToTable("TemplateOptions");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateVersionModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<bool>("IsPublished")
.HasColumnType("bit")
.HasColumnOrder(6);
b.Property<string>("JsonData")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<string>("JsonHash")
.IsRequired()
.HasMaxLength(64)
.HasColumnType("nvarchar(64)")
.HasColumnOrder(4);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<DateTime?>("PublishedAt")
.HasColumnType("datetime2")
.HasColumnOrder(7);
b.Property<string>("PublishedBy")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(8);
b.Property<string>("SchemaVersion")
.IsRequired()
.HasMaxLength(32)
.HasColumnType("nvarchar(32)")
.HasColumnOrder(5);
b.Property<Guid>("TemplateId")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.Property<string>("Version")
.IsRequired()
.HasMaxLength(64)
.HasColumnType("nvarchar(64)")
.HasColumnOrder(2);
b.HasKey("Id");
b.HasIndex("TemplateId")
.IsUnique()
.HasFilter("[IsPublished] = 1");
b.HasIndex("TemplateId", "Version")
.IsUnique();
b.ToTable("TemplateVersions", t =>
{
t.HasCheckConstraint("CK_TemplateVersions_JsonData_IsJson", "ISJSON([JsonData]) = 1");
});
b.HasData(
new
{
Id = new Guid("71000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
IsPublished = true,
JsonData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"DomainName\": { \"type\": \"string\", \"defaultValue\": \"corp.contoso.com\" },\n \"NetBIOSName\": { \"type\": \"string\", \"defaultValue\": \"CONTOSO\" }\n },\n \"variables\": {\n \"DefaultSiteName\": \"[concat(parameters('DomainName'), '-DefaultSite')]\"\n },\n \"resources\": {\n \"AllNodes\": [\n { \"NodeName\": \"*\", \"PSDscAllowPlainTextPassword\": true }\n ],\n \"NonNodeData\": {\n \"Services\": {\n \"ActiveDirectory\": {\n \"DomainName\": \"[parameters('DomainName')]\",\n \"NetBIOSName\": \"[parameters('NetBIOSName')]\"\n }\n }\n }\n }\n}",
JsonHash = "C05CBEF91131C75DE53B9609D9C2709D680AFC9559EE8D998318A132490F79A7",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
PublishedAt = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
PublishedBy = "DemoSeed",
SchemaVersion = "1.0",
TemplateId = new Guid("70000000-0000-0000-0000-000000000001"),
Version = "1.0.0"
},
new
{
Id = new Guid("71000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
IsPublished = true,
JsonData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"InstanceName\": { \"type\": \"string\", \"defaultValue\": \"MSSQLSERVER\" },\n \"DatabasePrefix\": { \"type\": \"string\", \"defaultValue\": \"Contoso\" }\n },\n \"variables\": {\n \"ConfigDatabase\": \"[concat(parameters('DatabasePrefix'), '_Config')]\"\n },\n \"resources\": {\n \"NonNodeData\": {\n \"Services\": {\n \"SqlServer\": {\n \"InstanceName\": \"[parameters('InstanceName')]\",\n \"ConfigDatabase\": \"[variables('ConfigDatabase')]\"\n }\n }\n }\n }\n}",
JsonHash = "F376737E82CB6B729F7B9960CB9988897C16D90A1C454ED2F594B28EB86ECA11",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
PublishedAt = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
PublishedBy = "DemoSeed",
SchemaVersion = "1.0",
TemplateId = new Guid("70000000-0000-0000-0000-000000000002"),
Version = "1.0.0"
},
new
{
Id = new Guid("71000000-0000-0000-0000-000000000003"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
IsPublished = true,
JsonData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"DatabasePrefix\": { \"type\": \"string\", \"defaultValue\": \"SharePoint_Contoso_Test\" },\n \"FarmAccount\": { \"type\": \"credential\", \"metadata\": { \"description\": \"Farm account resolved by the credential provider.\" } }\n },\n \"variables\": {\n \"ConfigDbName\": \"[concat(parameters('DatabasePrefix'), '_Farm_Config')]\",\n \"AdminContentDbName\": \"[concat(parameters('DatabasePrefix'), '_AdminContent')]\"\n },\n \"resources\": {\n \"NonNodeData\": {\n \"Services\": {\n \"SharePoint\": {\n \"Farm\": {\n \"ConfigDatabase\": \"[variables('ConfigDbName')]\",\n \"AdminContentDatabase\": \"[variables('AdminContentDbName')]\",\n \"ManagedAccounts\": {\n \"FarmAccount\": \"[parameters('FarmAccount')]\"\n }\n }\n }\n }\n }\n }\n}",
JsonHash = "FD5F0FD3C13538FAC70646972DC364DFCEAAF85BBE91B0F50FDFF9FD3A3748B4",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
PublishedAt = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
PublishedBy = "DemoSeed",
SchemaVersion = "1.0",
TemplateId = new Guid("70000000-0000-0000-0000-000000000003"),
Version = "1.0.0"
},
new
{
Id = new Guid("71000000-0000-0000-0000-000000000004"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
IsPublished = true,
JsonData = "{\n \"schemaVersion\": \"1.0\",\n \"templateType\": \"Service\",\n \"parameters\": {\n \"CallingPolicyName\": { \"type\": \"string\", \"defaultValue\": \"Contoso-Standard-Calling\" },\n \"MeetingPolicyName\": { \"type\": \"string\", \"defaultValue\": \"Contoso-Standard-Meetings\" }\n },\n \"variables\": {},\n \"resources\": {\n \"NonNodeData\": {\n \"Services\": {\n \"Teams\": {\n \"CallingPolicy\": \"[parameters('CallingPolicyName')]\",\n \"MeetingPolicy\": \"[parameters('MeetingPolicyName')]\"\n }\n }\n }\n }\n}",
JsonHash = "32A902FE1A871D4CE2C877EBC5542F7562856532F09BA7F53597B21270586241",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
PublishedAt = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
PublishedBy = "DemoSeed",
SchemaVersion = "1.0",
TemplateId = new Guid("70000000-0000-0000-0000-000000000004"),
Version = "1.0.0"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.VirtualMachineModel", b =>
{
b.Property<Guid>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier")
.HasColumnOrder(0)
.HasDefaultValueSql("NEWID()");
b.Property<DateTime>("Created")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(52)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("CreatedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(53);
b.Property<Guid?>("DomainID")
.HasColumnType("uniqueidentifier")
.HasColumnOrder(1);
b.Property<string>("ExternalId")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(3);
b.Property<string>("MetadataJson")
.HasColumnType("nvarchar(max)")
.HasColumnOrder(4);
b.Property<DateTime>("Modified")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasColumnOrder(50)
.HasDefaultValueSql("GETDATE()");
b.Property<string>("ModifiedBy")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(51);
b.Property<string>("Name")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasColumnOrder(2);
b.HasKey("Id");
b.HasIndex("DomainID");
b.ToTable("VirtualMachines");
b.HasData(
new
{
Id = new Guid("30000000-0000-0000-0000-000000000001"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DomainID = new Guid("20000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"role\":\"DomainController\",\"environment\":\"Test\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "CT-DC-01"
},
new
{
Id = new Guid("30000000-0000-0000-0000-000000000002"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DomainID = new Guid("20000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"role\":\"DomainController\",\"environment\":\"Production\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "CT-DC-02"
},
new
{
Id = new Guid("30000000-0000-0000-0000-000000000003"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DomainID = new Guid("20000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"role\":\"SqlServer\",\"environment\":\"Test\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "CT-SQL-01"
},
new
{
Id = new Guid("30000000-0000-0000-0000-000000000004"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DomainID = new Guid("20000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"role\":\"SharePoint\",\"environment\":\"Test\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "CT-SHP-01"
},
new
{
Id = new Guid("30000000-0000-0000-0000-000000000005"),
Created = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
CreatedBy = "DemoSeed",
DomainID = new Guid("20000000-0000-0000-0000-000000000001"),
MetadataJson = "{\"role\":\"SharePoint\",\"environment\":\"Test\"}",
Modified = new DateTime(2026, 7, 7, 0, 0, 0, 0, DateTimeKind.Utc),
ModifiedBy = "DemoSeed",
Name = "CT-SHP-02"
});
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentGroupModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleModel", "DeploymentRule")
.WithMany()
.HasForeignKey("DeploymentRuleId")
.OnDelete(DeleteBehavior.SetNull);
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.TemplateModel", "Template")
.WithMany("DeploymentGroups")
.HasForeignKey("TemplateId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("DeploymentRule");
b.Navigation("Template");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DeploymentGroupModel", "DeploymentGroup")
.WithMany("Deployments")
.HasForeignKey("DeploymentGroupId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.VirtualMachineModel", "VirtualMachine")
.WithMany("Deployments")
.HasForeignKey("VirtualMachineId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("DeploymentGroup");
b.Navigation("VirtualMachine");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleStepModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleModel", "DeploymentRule")
.WithMany("Steps")
.HasForeignKey("DeploymentRuleId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("DeploymentRule");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.EnvironmentDomainsModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DomainModel", "Domain")
.WithMany("EnvironmentDomains")
.HasForeignKey("DomainId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.EnvironmentModel", "Environment")
.WithMany("EnvironmentDomains")
.HasForeignKey("EnvironmentId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Domain");
b.Navigation("Environment");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.EventModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.RunbookModel", "Runbook")
.WithMany("Events")
.HasForeignKey("RunbookId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Runbook");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.JobModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DeploymentModel", "Deployment")
.WithMany("Jobs")
.HasForeignKey("DeploymentId")
.HasPrincipalKey("Id")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.RunbookModel", "Runbook")
.WithMany("Jobs")
.HasForeignKey("RunbookId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Deployment");
b.Navigation("Runbook");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.OptionModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.OptionCategoryModel", "OptionCategory")
.WithMany("Options")
.HasForeignKey("OptionCategoryId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("OptionCategory");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.QueueJobStepModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.QueueJobStepModel", "DependsOnQueueJobStep")
.WithMany()
.HasForeignKey("DependsOnQueueJobStepId")
.OnDelete(DeleteBehavior.Restrict);
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.QueueJobModel", "QueueJob")
.WithMany("Steps")
.HasForeignKey("QueueJobId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("DependsOnQueueJobStep");
b.Navigation("QueueJob");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.QueueJobTargetModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.QueueJobModel", "QueueJob")
.WithMany("Targets")
.HasForeignKey("QueueJobId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("QueueJob");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.ServiceRoleDefinitionModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.ServiceModel", "Service")
.WithMany("RoleDefinitions")
.HasForeignKey("ServiceId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Service");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateCategoryModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.ServiceModel", "Service")
.WithMany("TemplateCategories")
.HasForeignKey("ServiceId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Service");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleModel", "DeploymentRule")
.WithMany()
.HasForeignKey("DeploymentRuleId");
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.TemplateCategoryModel", "TemplateCategory")
.WithMany("Templates")
.HasForeignKey("TemplateCategoryId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("DeploymentRule");
b.Navigation("TemplateCategory");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateOptionModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.OptionModel", "Option")
.WithMany("TemplateOptions")
.HasForeignKey("OptionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.TemplateModel", "Template")
.WithMany("TemplateOptions")
.HasForeignKey("TemplateId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Option");
b.Navigation("Template");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateVersionModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.TemplateModel", "Template")
.WithMany("TemplateVersions")
.HasForeignKey("TemplateId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Template");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.VirtualMachineModel", b =>
{
b.HasOne("Microsoft.SelfService.Portal.Core.API.Models.DomainModel", "Domain")
.WithMany("VirtualMachines")
.HasForeignKey("DomainID");
b.Navigation("Domain");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentGroupModel", b =>
{
b.Navigation("Deployments");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentModel", b =>
{
b.Navigation("Jobs");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DeploymentRuleModel", b =>
{
b.Navigation("Steps");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.DomainModel", b =>
{
b.Navigation("EnvironmentDomains");
b.Navigation("VirtualMachines");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.EnvironmentModel", b =>
{
b.Navigation("EnvironmentDomains");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.OptionCategoryModel", b =>
{
b.Navigation("Options");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.OptionModel", b =>
{
b.Navigation("TemplateOptions");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.QueueJobModel", b =>
{
b.Navigation("Steps");
b.Navigation("Targets");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.RunbookModel", b =>
{
b.Navigation("Events");
b.Navigation("Jobs");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.ServiceModel", b =>
{
b.Navigation("RoleDefinitions");
b.Navigation("TemplateCategories");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateCategoryModel", b =>
{
b.Navigation("Templates");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.TemplateModel", b =>
{
b.Navigation("DeploymentGroups");
b.Navigation("TemplateOptions");
b.Navigation("TemplateVersions");
});
modelBuilder.Entity("Microsoft.SelfService.Portal.Core.API.Models.VirtualMachineModel", b =>
{
b.Navigation("Deployments");
});
#pragma warning restore 612, 618
}
}
}