From 7bf31ca149d3e54a5e42ceeab242de31dd40b798 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Thu, 5 Jun 2014 10:30:01 -0700 Subject: [PATCH 1/6] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 52c763940e..f1155a8862 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ github-api - 1.54 + 1.55-SNAPSHOT GitHub API for Java http://github-api.kohsuke.org/ GitHub API for Java From 16a6623095898f440d4ee3a6f414886117a25e3a Mon Sep 17 00:00:00 2001 From: Surya Gaddipati Date: Sat, 7 Jun 2014 14:29:25 -0500 Subject: [PATCH 2/6] Add support for adding context to commit status. This groups statuses from multiple contexts to return single combined status. More information here: https://developer.github.com/changes/2014-03-27-combined-status-api/ --- src/main/java/org/kohsuke/github/GHCommitStatus.java | 5 +++++ src/main/java/org/kohsuke/github/GHRepository.java | 3 ++- src/test/java/org/kohsuke/github/AppTest.java | 9 +++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/kohsuke/github/GHCommitStatus.java b/src/main/java/org/kohsuke/github/GHCommitStatus.java index 319e13cc64..af9f1d31ca 100644 --- a/src/main/java/org/kohsuke/github/GHCommitStatus.java +++ b/src/main/java/org/kohsuke/github/GHCommitStatus.java @@ -16,6 +16,7 @@ public class GHCommitStatus { String target_url,description; int id; String url; + String context; GHUser creator; private GitHub root; @@ -69,4 +70,8 @@ public String getUrl() { public GHUser getCreator() { return creator; } + + public String getContext() { + return context; + } } diff --git a/src/main/java/org/kohsuke/github/GHRepository.java b/src/main/java/org/kohsuke/github/GHRepository.java index 5dfe545057..40d328e5e2 100644 --- a/src/main/java/org/kohsuke/github/GHRepository.java +++ b/src/main/java/org/kohsuke/github/GHRepository.java @@ -659,11 +659,12 @@ public GHCommitStatus getLastCommitStatus(String sha1) throws IOException { * @param description * Optional short description. */ - public GHCommitStatus createCommitStatus(String sha1, GHCommitState state, String targetUrl, String description) throws IOException { + public GHCommitStatus createCommitStatus(String sha1, GHCommitState state, String targetUrl, String description, String context) throws IOException { return new Requester(root) .with("state", state.name().toLowerCase(Locale.ENGLISH)) .with("target_url", targetUrl) .with("description", description) + .with("context", context) .to(String.format("/repos/%s/%s/statuses/%s",owner.login,this.name,sha1),GHCommitStatus.class).wrapUp(root); } diff --git a/src/test/java/org/kohsuke/github/AppTest.java b/src/test/java/org/kohsuke/github/AppTest.java index a1c231953a..2273595d47 100644 --- a/src/test/java/org/kohsuke/github/AppTest.java +++ b/src/test/java/org/kohsuke/github/AppTest.java @@ -565,6 +565,15 @@ public boolean apply(GHDeployKey deployKey) { }); newDeployKey.delete(); } + + @Test + public void testCommitStatusContext() throws IOException { + GHRepository myRepository = Iterables.get(gitHub.getMyself().getRepositories().values(),0); + GHRef masterRef = myRepository.getRef("heads/master"); + GHCommitStatus commitStatus = myRepository.createCommitStatus(masterRef.getObject().getSha(), GHCommitState.SUCCESS, "http://www.example.com", "test", "test/context"); + assertEquals("test/context", commitStatus.getContext()); + + } private void kohsuke() { String login = getUser().getLogin(); From e3d6e08b6a1b5077eca658d4ea6cd0a3d98b1a98 Mon Sep 17 00:00:00 2001 From: Surya Gaddipati Date: Sat, 7 Jun 2014 14:43:09 -0500 Subject: [PATCH 3/6] Preserve api compatablity with previous version. Support adding commitstatus without context. --- src/main/java/org/kohsuke/github/GHRepository.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/org/kohsuke/github/GHRepository.java b/src/main/java/org/kohsuke/github/GHRepository.java index 40d328e5e2..294347b596 100644 --- a/src/main/java/org/kohsuke/github/GHRepository.java +++ b/src/main/java/org/kohsuke/github/GHRepository.java @@ -658,6 +658,8 @@ public GHCommitStatus getLastCommitStatus(String sha1) throws IOException { * Optional parameter that points to the URL that has more details. * @param description * Optional short description. + * @param context + * Optinal commit status context. */ public GHCommitStatus createCommitStatus(String sha1, GHCommitState state, String targetUrl, String description, String context) throws IOException { return new Requester(root) @@ -667,6 +669,13 @@ public GHCommitStatus createCommitStatus(String sha1, GHCommitState state, Strin .with("context", context) .to(String.format("/repos/%s/%s/statuses/%s",owner.login,this.name,sha1),GHCommitStatus.class).wrapUp(root); } + + /** + * @see {@link #createCommitStatus(String, GHCommitState,String,String,String) createCommitStatus} + */ + public GHCommitStatus createCommitStatus(String sha1, GHCommitState state, String targetUrl, String description) throws IOException { + return createCommitStatus(sha1, state, targetUrl, description,null); + } /** * Lists repository events. From 922be0b164e9e0c77c94bd01bd1acf39cb383087 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 8 Jun 2014 10:31:15 -0700 Subject: [PATCH 4/6] make sure the key gets deleted no matter what --- src/test/java/org/kohsuke/github/AppTest.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/test/java/org/kohsuke/github/AppTest.java b/src/test/java/org/kohsuke/github/AppTest.java index 2273595d47..62c23e0892 100644 --- a/src/test/java/org/kohsuke/github/AppTest.java +++ b/src/test/java/org/kohsuke/github/AppTest.java @@ -556,19 +556,23 @@ public void directoryListing() throws IOException { public void testAddDeployKey() throws IOException { GHRepository myRepository = Iterables.get(gitHub.getMyself().getRepositories().values(),0); final GHDeployKey newDeployKey = myRepository.addDeployKey("test", "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC55wA5wHqTFMk3OkyHqtmgSAmIanREVP4ukMrPZFzYfRBaKYPCbBRxu7ddzF3oZ+i6ZV8+rH8hvhQTYl5LtOIxLUppsVVNSB9YKXQv37LLaWul9WoJPdXHGWfR3wlhRXsg1sMPpbgu60lXAl7xvx729FEjKEEHRMGkPbcIeHkov/tlEg9oQdqFC1Pqnv/lCsZ5UKRPLHY3V9pmSaEplwmwb//HppNtEYr9t6VNvOMjqbUrbhsilKu0t6qa3G7Kb47kvfJwMn+DKD2XJMYHYHMyHtHcFK8RIOSX8I+Bu4yeVmvcooSL65FBCIrmVoejkI7gZWDfgWVRboQ9RyB+VeXL example@example.com"); - assertNotNull(newDeployKey.getId()); - - Iterables.find( myRepository.getDeployKeys(),new Predicate() { - public boolean apply(GHDeployKey deployKey) { - return newDeployKey.getId() == deployKey.getId() ; - } - }); - newDeployKey.delete(); + try { + assertNotNull(newDeployKey.getId()); + + GHDeployKey k = Iterables.find(myRepository.getDeployKeys(), new Predicate() { + public boolean apply(GHDeployKey deployKey) { + return newDeployKey.getId() == deployKey.getId(); + } + }); + assertNotNull(k); + } finally { + newDeployKey.delete(); + } } @Test public void testCommitStatusContext() throws IOException { - GHRepository myRepository = Iterables.get(gitHub.getMyself().getRepositories().values(),0); + GHRepository myRepository = Iterables.get(gitHub.getMyself().getRepositories().values(), 0); GHRef masterRef = myRepository.getRef("heads/master"); GHCommitStatus commitStatus = myRepository.createCommitStatus(masterRef.getObject().getSha(), GHCommitState.SUCCESS, "http://www.example.com", "test", "test/context"); assertEquals("test/context", commitStatus.getContext()); From 9a19d07ab89ca402424d5197641f7395c720e257 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 8 Jun 2014 10:36:05 -0700 Subject: [PATCH 5/6] I'm getting "the key is already in use" error. Creating a new thro-away key --- src/test/java/org/kohsuke/github/AppTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/org/kohsuke/github/AppTest.java b/src/test/java/org/kohsuke/github/AppTest.java index 62c23e0892..0866a8e93a 100644 --- a/src/test/java/org/kohsuke/github/AppTest.java +++ b/src/test/java/org/kohsuke/github/AppTest.java @@ -555,7 +555,7 @@ public void directoryListing() throws IOException { @Test public void testAddDeployKey() throws IOException { GHRepository myRepository = Iterables.get(gitHub.getMyself().getRepositories().values(),0); - final GHDeployKey newDeployKey = myRepository.addDeployKey("test", "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC55wA5wHqTFMk3OkyHqtmgSAmIanREVP4ukMrPZFzYfRBaKYPCbBRxu7ddzF3oZ+i6ZV8+rH8hvhQTYl5LtOIxLUppsVVNSB9YKXQv37LLaWul9WoJPdXHGWfR3wlhRXsg1sMPpbgu60lXAl7xvx729FEjKEEHRMGkPbcIeHkov/tlEg9oQdqFC1Pqnv/lCsZ5UKRPLHY3V9pmSaEplwmwb//HppNtEYr9t6VNvOMjqbUrbhsilKu0t6qa3G7Kb47kvfJwMn+DKD2XJMYHYHMyHtHcFK8RIOSX8I+Bu4yeVmvcooSL65FBCIrmVoejkI7gZWDfgWVRboQ9RyB+VeXL example@example.com"); + final GHDeployKey newDeployKey = myRepository.addDeployKey("test", "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDUt0RAycC5cS42JKh6SecfFZBR1RrF+2hYMctz4mk74/arBE+wFb7fnSHGzdGKX2h5CFOWODifRCJVhB7hlVxodxe+QkQQYAEL/x1WVCJnGgTGQGOrhOMj95V3UE5pQKhsKD608C+u5tSofcWXLToP1/wZ7U4/AHjqYi08OLsWToHCax55TZkvdt2jo0hbIoYU+XI9Q8Uv4ONDN1oabiOdgeKi8+crvHAuvNleiBhWVBzFh8KdfzaH5uNdw7ihhFjEd1vzqACsjCINCjdMfzl6jD9ExuWuE92nZJnucls2cEoNC6k2aPmrZDg9hA32FXVpyseY+bDUWFU6LO2LG6PB kohsuke@atlas"); try { assertNotNull(newDeployKey.getId()); From d0cf1ac6050f47d9685cd2a8ee2e5e4bc8e512c8 Mon Sep 17 00:00:00 2001 From: Kohsuke Kawaguchi Date: Sun, 8 Jun 2014 10:37:17 -0700 Subject: [PATCH 6/6] [maven-release-plugin] prepare release github-api-1.55 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index f1155a8862..8d8bf52cbe 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ github-api - 1.55-SNAPSHOT + 1.55 GitHub API for Java http://github-api.kohsuke.org/ GitHub API for Java @@ -16,7 +16,7 @@ scm:git:git@github.com/kohsuke/${project.artifactId}.git scm:git:ssh://git@github.com/kohsuke/${project.artifactId}.git http://${project.artifactId}.kohsuke.org/ - HEAD + github-api-1.55