Added package cleanup

This commit is contained in:
2026-02-15 02:58:44 +01:00
parent 1764ddcb2b
commit 8586a09cd0
10 changed files with 343 additions and 1797 deletions

View File

@@ -2,24 +2,25 @@ namespace sh.actions.package_cleanup;
public static class ConfigurationExtension
{
private static void EnsureVariable(IConfiguration configuration, string key)
private const string MissingConfigurationError = "Configuration variable '{0}' is required but was not found.";
private static void ValidateConfigurationVariable(IConfiguration configuration, string key)
{
var value = configuration[key];
if (string.IsNullOrEmpty(value))
if (string.IsNullOrWhiteSpace(configuration[key]))
{
throw new InvalidOperationException($"Configuration variable '{key}' is required but was not found.");
throw new InvalidOperationException(string.Format(MissingConfigurationError, key));
}
}
public static IConfigurationBuilder EnsureGiteaConfig(this IConfigurationBuilder builder)
{
var configuration = builder.Build();
var requiredKeys = new[] { "URL", "OWNER", "TYPE", "NAME", "API_TOKEN" };
EnsureVariable(configuration, "URL");
EnsureVariable(configuration, "OWNER");
EnsureVariable(configuration, "TYPE");
EnsureVariable(configuration, "NAME");
EnsureVariable(configuration, "API_TOKEN");
foreach (var key in requiredKeys)
{
ValidateConfigurationVariable(configuration, key);
}
return builder;
}