private void AddPublishDataFromSteps(BuildType buildConfig, BuildTypeDetails details) { //Check for nuget publish steps var steps = details.Steps.Where(s => s.Type.Equals("jb.nuget.publish")); //Constrain by feed if required. if (!string.IsNullOrEmpty(Feed)) { steps = steps.Where(s => { var prop = s.Properties.FirstOrDefault(p => p.Name.Equals("nuget.publish.source")); if (prop != null && prop.value.Equals(Feed)) { return(true); } return(false); }); } foreach (var publishStep in steps) { AddBuildPackageMappingIfRequired(buildConfig); var packageNames = GetPackageNames(publishStep.Properties.First(p => p.Name.Equals("nuget.publish.files")).value); foreach (var package in packageNames) { if (!_mappings[buildConfig.Name].Publishes.Contains(package)) { _mappings[buildConfig.Name].Publishes.Add(package); } } } }
private void AddSubscribeDataFromTriggers(BuildType buildConfig, BuildTypeDetails details) { //Check for nuget trigger steps var triggers = details.Triggers.Where(t => t.Type.Equals("nuget.simple")); //Constrain by feed if required if (!string.IsNullOrEmpty(Feed)) { triggers = triggers.Where(t => { var prop = t.Properties.FirstOrDefault(p => p.Name.Equals("nuget.source")); if (prop != null && prop.value.Equals(Feed)) { return(true); } return(false); }); } foreach (var trigger in triggers) { var package = trigger.Properties.First(p => p.Name.Equals("nuget.package")).value; AddBuildPackageMappingIfRequired(buildConfig); if (!_mappings[buildConfig.Name].Subscribes.Contains(package)) { _mappings[buildConfig.Name].Subscribes.Add(package); } } }