using System.CommandLine; namespace ReleaseBuilder; /// /// Entry point for the executable /// class Program { /// /// The supported build packages /// public static readonly IReadOnlyList SupportedPackageTargets = new[] { "win-x64-gui.zip", "win-x64-gui.msi", "win-x86-gui.zip", "win-x86-gui.msi", "win-arm64-gui.zip", "win-arm64-gui.msi", "linux-x64-gui.zip", "linux-x64-gui.deb", "linux-x64-gui.rpm", "linux-x64-cli.zip", "linux-x64-cli.deb", "linux-x64-cli.rpm", "linux-x64-cli.docker", // "linux-x64-cli.spk", "linux-arm64-cli.docker", "linux-arm64-gui.zip", "linux-arm64-gui.deb", "linux-arm64-gui.rpm", "linux-arm64-cli.zip", "linux-arm64-cli.deb", "linux-arm64-cli.rpm", // "linux-arm64-cli.spk", "osx-x64-gui.dmg", "osx-x64-gui.pkg", "osx-arm64-gui.dmg", "osx-arm64-gui.pkg", } .Select(x => PackageTarget.ParsePackageId(x)) .Distinct() .ToList(); /// /// The environment shared configuration /// public static readonly Configuration Configuration = Configuration.Create(); /// /// Invokes the builder /// /// /// static Task Main(string[] args) => new RootCommand("Build tool for Duplicati") { CliCommand.Build.Create() }.InvokeAsync(args); }