// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using YamlDotNet.Serialization; namespace Microsoft.Tye.ConfigModel { public class ConfigService { [Required] public string Name { get; set; } = default!; public bool External { get; set; } public string? Image { get; set; } public string? DockerFile { get; set; } public string? DockerFileContext { get; set; } public string? Project { get; set; } public string? Include { get; set; } public string? Repository { get; set; } public bool? Build { get; set; } public string? Executable { get; set; } public string? WorkingDirectory { get; set; } public string? Args { get; set; } public int? Replicas { get; set; } public List Bindings { get; set; } = new List(); public List Volumes { get; set; } = new List(); [YamlMember(Alias = "env")] public List Configuration { get; set; } = new List(); public List BuildProperties { get; set; } = new List(); } }