using System.CommandLine; using MycroForge.Core; using MycroForge.Core.Contract; namespace MycroForge.CLI.Commands; public partial class MycroForge { public partial class Db { public class Stop : Command, ISubCommandOf { private readonly ProjectContext _context; public Stop(ProjectContext context) : base("stop", $"Stops the services defined in {Features.Db.FeatureName}.docker-compose.yml") { _context = context; this.SetHandler(ExecuteAsync); } private async Task ExecuteAsync() { await _context.Bash( // Set the log level to ERROR to prevent warnings concerning environment variables not being set. $"docker --log-level ERROR compose -f {Features.Db.FeatureName}.docker-compose.yml down" ); } } } }