diff --git a/Arnie/Arnie.svc.cs b/Arnie/Arnie.svc.cs index 9ecc9ea..39f6ce7 100644 --- a/Arnie/Arnie.svc.cs +++ b/Arnie/Arnie.svc.cs @@ -61,7 +61,10 @@ string IRestService.DoItNow(GitHubPushWebhook pushInfo) try { - repositories = config.repos.Where(repo => (string)pushInfo.repository[repo.repo_key] == repo.repo_value).ToList(); + // get list of repos by matching key + // and ref if present + repositories = config.repos.Where(repo => (string)pushInfo.repository[repo.repo_key] == repo.repo_value + && (string.IsNullOrEmpty(repo.ref_) ? true : pushInfo.ref_ == repo.ref_)).ToList(); } catch (Exception exc) { diff --git a/Arnie/Repos.cs b/Arnie/Repos.cs index f591a7f..f71953e 100644 --- a/Arnie/Repos.cs +++ b/Arnie/Repos.cs @@ -24,6 +24,9 @@ public class RepositoryConfig [DataMember(Name = "repo_value")] public string repo_value { get; set; } + + [DataMember(Name = "ref")] + public string ref_ { get; set; } } [DataContract] diff --git a/Arnie/Web.Release.config b/Arnie/Web.Release.config index c358444..b77662b 100644 --- a/Arnie/Web.Release.config +++ b/Arnie/Web.Release.config @@ -28,4 +28,17 @@ --> + + + + + + + + + + + + + \ No newline at end of file diff --git a/Arnie/Web.config b/Arnie/Web.config index ce12307..09a74b0 100644 --- a/Arnie/Web.config +++ b/Arnie/Web.config @@ -33,9 +33,18 @@ + + + + + + + + + - - + +