public static YamlProjectTriggerFilter FromModel(ProjectTriggerMachineFilter model) { return(new YamlProjectTriggerFilter { EnvironmentRefs = model.Environments.Select(e => e.Name).ToArray().NullIfEmpty(), RoleRefs = model.Roles.Select(r => r.Name).ToArray().NullIfEmpty(), EventGroupRefs = model.EventGroups.Select(r => r.Name).ToArray().NullIfEmpty(), EventCategoryRefs = model.EventCategories.Select(r => r.Name).ToArray().NullIfEmpty() }); }
public static TriggerFilterResource FromModel(this ProjectTriggerMachineFilter model, IOctopusRepository repository) { return(new MachineFilterResource { EnvironmentIds = new ReferenceCollection(model.Environments.Select(r => repository.Environments.ResolveResourceId(r))), Roles = new ReferenceCollection(model.Roles.Select(r => r.Name)), EventGroups = new ReferenceCollection(model.EventGroups.Select(r => r.Name)), EventCategories = new ReferenceCollection(model.EventCategories.Select(r => r.Name)) }); }
private ProjectTrigger CreateProjectTrigger(string machineRef, string envRef) { var environments = new[] { new ElementReference(envRef) }; var roles = new[] { new ElementReference(machineRef) }; var eventGroups = new[] { new ElementReference("eg1") }; var eventCategories = new[] { new ElementReference("ec1") }; var triggerFilter = new ProjectTriggerMachineFilter(environments, roles, eventGroups, eventCategories); return(new ProjectTrigger(CreateItemWithRename <ElementIdentifier>(false), triggerFilter, CreateItem <ProjectTriggerAutoDeployAction>())); }