- Added ApiClientModel and ApiTokenModel for managing API clients and tokens. - Introduced ConfigurationDefinitionModel and ConfigurationValueModel for configuration management. - Created CredentialSecretModel for storing credential secrets. - Developed DeploymentArtifactModel and DeploymentBatchModel for deployment management. - Enhanced DeploymentTargetModel and DeploymentTemplateSelectionModel to support template revisions. - Added TemplateRevisionModel and TemplateVersionModel for versioning templates. - Implemented ApiClientSecretHasher for secure secret hashing. - Created ApiTokenService for generating and validating JWT tokens. - Updated QueueJobService to handle deployment requests with artifacts. - Configured authentication settings in appsettings.json for JWT and Negotiate authentication.
53 lines
1.7 KiB
C#
53 lines
1.7 KiB
C#
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace Microsoft.SelfService.Portal.Core.API.Models
|
|
{
|
|
public static class ConfigurationValueSourceTypes
|
|
{
|
|
public const string Static = "Static";
|
|
public const string ScopeProperty = "ScopeProperty";
|
|
public const string Expression = "Expression";
|
|
public const string SecretReference = "SecretReference";
|
|
}
|
|
|
|
public static class ConfigurationValueScopeTypes
|
|
{
|
|
public const string TemplateRevision = "TemplateRevision";
|
|
public const string Environment = "Environment";
|
|
public const string Domain = "Domain";
|
|
public const string Target = "Target";
|
|
public const string DeploymentGroup = "DeploymentGroup";
|
|
public const string Deployment = "Deployment";
|
|
public const string TemplateSelection = "TemplateSelection";
|
|
}
|
|
|
|
public class ConfigurationValueModel : BaseModel
|
|
{
|
|
[Column(Order = 1)]
|
|
public Guid ConfigurationDefinitionId { get; set; }
|
|
|
|
[Column(Order = 2)]
|
|
public string ScopeType { get; set; } = ConfigurationValueScopeTypes.TemplateRevision;
|
|
|
|
[Column(Order = 3)]
|
|
public Guid ScopeId { get; set; }
|
|
|
|
[Column(Order = 4)]
|
|
public string ValueSourceType { get; set; } = ConfigurationValueSourceTypes.Static;
|
|
|
|
[Column(Order = 5)]
|
|
public string? SourcePath { get; set; }
|
|
|
|
[Column(Order = 6)]
|
|
public string? ValueJson { get; set; }
|
|
|
|
[Column(Order = 7)]
|
|
public string ValueHash { get; set; } = string.Empty;
|
|
|
|
[Column(Order = 8)]
|
|
public int SortOrder { get; set; }
|
|
|
|
public ConfigurationDefinitionModel ConfigurationDefinition { get; set; } = null!;
|
|
}
|
|
}
|