public override IEnumerable <ValidationResultMessage> Validate(ConfigurationParameterAttribute configurationParameterAttribute, int indexOfParentInGroup = 0) { var messages = new List <ValidationResultMessage>(); var attrValue = GetConfigurationParamenterAttributeValue(configurationParameterAttribute, indexOfParentInGroup); var message = new ValidationResultMessage { Body = configurationParameterAttribute.ParameterName + " " + configurationParameterAttribute.Name + " = \"" + attrValue + "\"", Offset = " " }; if (string.IsNullOrEmpty(attrValue) == false) { message.Status = StatusWords.OK; } else { message.Status = configurationParameterAttribute.IsRequired ? StatusWords.ERR : StatusWords.WARN; } messages.Add(message); return(messages); }
public override IEnumerable <ValidationResultMessage> Validate(ConfigurationParameterAttribute configurationParameterAttribute, int indexOfParentInGroup = 0) { var messages = GetMessagesFromExistenceValidator(configurationParameterAttribute, indexOfParentInGroup).ToList(); if (messages.Count != 0) { return(messages); } if (Package.Configuration.DocumentElement != null) { var attrValue = GetConfigurationParamenterAttributeValue(configurationParameterAttribute, indexOfParentInGroup); var message = new ValidationResultMessage { Body = configurationParameterAttribute.ParameterName + " " + configurationParameterAttribute.Name + " = \"" + attrValue + "\"", Offset = " " }; if (CheckValue(attrValue)) { message.Status = StatusWords.OK; } else { message.Status = configurationParameterAttribute.IsRequired ? StatusWords.ERR : StatusWords.WARN; } messages.Add(message); } else { messages.Add(new ValidationResultMessage { Body = "Configuration file is empty", Status = StatusWords.CRITICAL }); } return(messages); }
private List <string> GetExpectedEnvVarSecretsFromLoadedAssemblies <T>(string prefix = "", string postfix = "") where T : ConfigurationParameterAttribute { var assemblies = LoadReferencedAssembliesMetadata() .Where(a => a.FullName?.StartsWith("Trakx.") ?? false); var explorationContext = new AssemblyLoadContext(nameof(ReadmeDocumentationUpdaterBase), true); var result = assemblies.SelectMany(currentAssembly => { _output.WriteLine("Inspecting assembly {0}", currentAssembly.FullName); var configTypes = GetAllConfigurationTypesFromAssembly(currentAssembly, explorationContext); var secrets = ConfigurationParameterAttribute.GetConfigPathsFromConfigTypes <T>(configTypes, prefix, postfix); return(secrets.Select(s => s !)); }) .Distinct() .OrderBy(abc => abc) .ToList(); explorationContext.Unload(); return(result); }