Skip to content

Commit

Permalink
Merge pull request #179 from chadlwilson/upgrade-deps
Browse files Browse the repository at this point in the history
Upgrade dependencies to latest versions
  • Loading branch information
ashwanthkumar committed May 12, 2024
2 parents 6b48a30 + 1cff5c1 commit 33e6157
Show file tree
Hide file tree
Showing 18 changed files with 118 additions and 171 deletions.
123 changes: 76 additions & 47 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,118 +9,147 @@

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<go.version>14.4.0</go.version>
<go.compat.version>18.10.0</go.compat.version>
<main.dir>${project.basedir}</main.dir>
</properties>

<dependencyManagement>
<dependencies>
<!-- From git-cmd -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-exec</artifactId>
<version>1.4.0</version>
</dependency>
<!-- From Github and Gitlab API -->
<dependency>
<groupId>com.fasterxml.jackson</groupId>
<artifactId>jackson-bom</artifactId>
<version>2.16.1</version>
<scope>import</scope>
<type>pom</type>
</dependency>
<!-- From Gitlab API -->
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.17.0</version>
</dependency>
</dependencies>
</dependencyManagement>

<dependencies>
<dependency>
<groupId>cd.go.plugin</groupId>
<artifactId>go-plugin-api</artifactId>
<version>${go.version}</version>
<version>23.5.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.16.1</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.14.0</version>
</dependency>
<dependency>
<groupId>in.ashwanthkumar</groupId>
<artifactId>git-cmd</artifactId>
<version>1.4</version>
<version>2.0</version>
<exclusions>
<!-- The plugin does not use JGit impl -->
<exclusion>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.3.1</version>
<version>2.10.1</version>
</dependency>
<dependency>
<groupId>in.ashwanthkumar</groupId>
<artifactId>my-java-utils</artifactId>
<version>0.0.6</version>
<version>0.1.0</version>
</dependency>
<dependency>
<groupId>org.kohsuke</groupId>
<artifactId>github-api</artifactId>
<version>1.128</version>
<version>1.321</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.gitlab4j</groupId>
<artifactId>gitlab4j-api</artifactId>
<version>4.15.6</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.10.7</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.3</version>
<version>5.5.0</version>
<scope>provided</scope>
</dependency>


<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>1.8.5</version>
<version>5.11.0</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
<artifactId>hamcrest</artifactId>
<version>2.2</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
</dependencies>

<repositories>
<repository>
<id>sonatype</id>
<url>https://oss.sonatype.org/content/repositories/releases/</url>
</repository>
<repository>
<id>maven_central</id>
<name>Maven Central</name>
<url>https://repo.maven.apache.org/maven2/</url>
</repository>
</repositories>

<profiles>
<profile>
<id>github.pr</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<plugin.name>github-pr-poller</plugin.name>
<resource.directory>src/main/resources/github</resource.directory>
</properties>
<dependencies>
<dependency>
<groupId>org.kohsuke</groupId>
<artifactId>github-api</artifactId>
<version>1.321</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>gitlab.pr</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<plugin.name>gitlab-pr-poller</plugin.name>
<resource.directory>src/main/resources/gitlab</resource.directory>
</properties>
<dependencies>
<dependency>
<groupId>org.gitlab4j</groupId>
<artifactId>gitlab4j-api</artifactId>
<version>5.5.0</version>
</dependency>
</dependencies>
</profile>
<profile>
<id>git.fb</id>
Expand All @@ -146,7 +175,7 @@
</profiles>

<build>
<finalName>${plugin.name}-${version}</finalName>
<finalName>${plugin.name}-${project.version}</finalName>
<resources>
<resource>
<directory>src/main/resources/views</directory>
Expand Down Expand Up @@ -176,7 +205,7 @@
<configuration>
<archive>
<manifestEntries>
<Go-Version>${go.version}</Go-Version>
<Go-Version>${go.compat.version}</Go-Version>
</manifestEntries>
</archive>
</configuration>
Expand Down
2 changes: 1 addition & 1 deletion release.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
set -e -x

rm -rf dist/
Expand Down
28 changes: 13 additions & 15 deletions src/main/java/in/ashwanthkumar/gocd/github/GitHubPRBuildPlugin.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@
import com.tw.go.plugin.model.GitConfig;
import com.tw.go.plugin.model.ModifiedFile;
import com.tw.go.plugin.model.Revision;
import com.tw.go.plugin.util.ListUtil;
import com.tw.go.plugin.util.StringUtil;
import in.ashwanthkumar.gocd.github.provider.Provider;
import in.ashwanthkumar.gocd.github.settings.scm.PluginConfigurationView;
import in.ashwanthkumar.gocd.github.util.BranchFilter;
Expand All @@ -22,7 +20,7 @@
import in.ashwanthkumar.utils.collections.Lists;
import in.ashwanthkumar.utils.func.Function;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang3.StringUtils;

import java.io.IOException;
import java.lang.reflect.Constructor;
Expand All @@ -34,7 +32,7 @@

@Extension
public class GitHubPRBuildPlugin implements GoPlugin {
private static Logger LOGGER = Logger.getLoggerFor(GitHubPRBuildPlugin.class);
private static final Logger LOGGER = Logger.getLoggerFor(GitHubPRBuildPlugin.class);

public static final String EXTENSION_NAME = "scm";
private static final List<String> goSupportedVersions = asList("1.0");
Expand Down Expand Up @@ -174,7 +172,7 @@ private GoPluginApiResponse getPluginConfiguration(PluginConfigurationView view)
}

private GoPluginApiResponse handleSCMValidation(GoPluginApiRequest goPluginApiRequest) {
Map<String, Object> requestBodyMap = (Map<String, Object>) fromJSON(goPluginApiRequest.requestBody());
Map<String, Object> requestBodyMap = fromJSON(goPluginApiRequest.requestBody());
final Map<String, String> configuration = keyValuePairs(requestBodyMap, "scm-configuration");
final GitConfig gitConfig = getGitConfig(configuration);

Expand All @@ -189,7 +187,7 @@ public void validate(Map<String, Object> fieldValidation) {
}

private GoPluginApiResponse handleSCMCheckConnection(GoPluginApiRequest goPluginApiRequest) {
Map<String, Object> requestBodyMap = (Map<String, Object>) fromJSON(goPluginApiRequest.requestBody());
Map<String, Object> requestBodyMap = fromJSON(goPluginApiRequest.requestBody());
Map<String, String> configuration = keyValuePairs(requestBodyMap, "scm-configuration");
GitConfig gitConfig = getGitConfig(configuration);

Expand All @@ -207,7 +205,7 @@ private GoPluginApiResponse handleSCMCheckConnection(GoPluginApiRequest goPlugin
}

GoPluginApiResponse handleGetLatestRevision(GoPluginApiRequest goPluginApiRequest) {
Map<String, Object> requestBodyMap = (Map<String, Object>) fromJSON(goPluginApiRequest.requestBody());
Map<String, Object> requestBodyMap = fromJSON(goPluginApiRequest.requestBody());
Map<String, String> configuration = keyValuePairs(requestBodyMap, "scm-configuration");
GitConfig gitConfig = getGitConfig(configuration);
String flyweightFolder = (String) requestBodyMap.get("flyweight-folder");
Expand Down Expand Up @@ -249,12 +247,12 @@ private String removeUsernameAndPassword(String message, GitConfig gitConfig) {
}

GoPluginApiResponse handleLatestRevisionSince(GoPluginApiRequest goPluginApiRequest) {
Map<String, Object> requestBodyMap = (Map<String, Object>) fromJSON(goPluginApiRequest.requestBody());
Map<String, Object> requestBodyMap = fromJSON(goPluginApiRequest.requestBody(), Map.class);
Map<String, String> configuration = keyValuePairs(requestBodyMap, "scm-configuration");
final GitConfig gitConfig = getGitConfig(configuration);
Map<String, String> scmData = (Map<String, String>) requestBodyMap.get("scm-data");
Map<String, String> oldBranchToRevisionMap = (Map<String, String>) fromJSON(scmData.get(BRANCH_TO_REVISION_MAP));
Map<String, String> lastKnownBranchToRevisionMap = (Map<String, String>) fromJSON(scmData.get(BRANCH_TO_REVISION_MAP));
Map<String, String> oldBranchToRevisionMap = fromJSON(scmData.get(BRANCH_TO_REVISION_MAP));
Map<String, String> lastKnownBranchToRevisionMap = fromJSON(scmData.get(BRANCH_TO_REVISION_MAP));
String flyweightFolder = (String) requestBodyMap.get("flyweight-folder");
LOGGER.debug(String.format("Fetching latest for: %s", gitConfig.getUrl()));

Expand Down Expand Up @@ -352,7 +350,7 @@ public Map<String, Object> apply(Revision revision) {

private Map<String, Object> getRevisionMapForSHA(GitConfig gitConfig, String branch, Revision revision) {
// patch for building merge commits
if (revision.isMergeCommit() && ListUtil.isEmpty(revision.getModifiedFiles())) {
if (revision.isMergeCommit() && (revision.getModifiedFiles() == null || revision.getModifiedFiles().isEmpty())) {
revision.setModifiedFiles(Lists.of(new ModifiedFile("/dev/null", "deleted")));
}

Expand All @@ -364,7 +362,7 @@ private boolean branchHasNewChange(String previousSHA, String latestSHA) {
}

private GoPluginApiResponse handleCheckout(GoPluginApiRequest goPluginApiRequest) {
Map<String, Object> requestBodyMap = (Map<String, Object>) fromJSON(goPluginApiRequest.requestBody());
Map<String, Object> requestBodyMap = fromJSON(goPluginApiRequest.requestBody());
Map<String, String> configuration = keyValuePairs(requestBodyMap, "scm-configuration");
GitConfig gitConfig = getGitConfig(configuration);
String destinationFolder = (String) requestBodyMap.get("destination-folder");
Expand Down Expand Up @@ -416,7 +414,7 @@ Map<String, Object> getRevisionMap(GitConfig gitConfig, String branch, Revision
response.put("timestamp", new SimpleDateFormat(DATE_PATTERN).format(revision.getTimestamp()));
response.put("revisionComment", revision.getComment());
List<Map> modifiedFilesMapList = new ArrayList<Map>();
if (!ListUtil.isEmpty(revision.getModifiedFiles())) {
if (revision.getModifiedFiles() != null && !revision.getModifiedFiles().isEmpty()) {
for (ModifiedFile modifiedFile : revision.getModifiedFiles()) {
Map<String, String> modifiedFileMap = new HashMap<String, String>();
modifiedFileMap.put("fileName", modifiedFile.getFileName());
Expand All @@ -443,7 +441,7 @@ private Map<String, String> keyValuePairs(Map<String, Object> requestBodyMap, St
}

public void validateUrl(GitConfig gitConfig, Map<String, Object> fieldMap) {
if (StringUtil.isEmpty(gitConfig.getUrl())) {
if (StringUtils.isEmpty(gitConfig.getUrl())) {
fieldMap.put("key", "url");
fieldMap.put("message", "URL is a required field");
} else if (!provider.isValidURL(gitConfig.getUrl())) {
Expand All @@ -453,7 +451,7 @@ public void validateUrl(GitConfig gitConfig, Map<String, Object> fieldMap) {
}

public void checkConnection(GitConfig gitConfig, Map<String, Object> response, List<String> messages) {
if (StringUtil.isEmpty(gitConfig.getUrl())) {
if (StringUtils.isEmpty(gitConfig.getUrl())) {
response.put("status", "failure");
messages.add("URL is empty");
} else if (!provider.isValidURL(gitConfig.getUrl())) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
package in.ashwanthkumar.gocd.github.provider.github;

import org.apache.commons.io.IOUtils;
import org.eclipse.jgit.lib.Ref;
import org.kohsuke.github.GitHub;
import org.kohsuke.github.GitHubBuilder;

import java.io.File;
import java.io.FileInputStream;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package in.ashwanthkumar.gocd.github.provider.github;

import com.thoughtworks.go.plugin.api.GoPluginIdentifier;
import com.thoughtworks.go.plugin.api.logging.Logger;
import com.tw.go.plugin.model.GitConfig;
import com.tw.go.plugin.util.StringUtil;
import in.ashwanthkumar.gocd.github.provider.Provider;
import in.ashwanthkumar.gocd.github.provider.github.model.PullRequestStatus;
import in.ashwanthkumar.gocd.github.settings.general.DefaultGeneralPluginConfigurationView;
Expand All @@ -15,16 +15,14 @@
import org.kohsuke.github.GHPullRequest;
import org.kohsuke.github.GHUser;
import org.kohsuke.github.GitHub;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.IOException;
import java.util.Arrays;
import java.util.Map;
import java.util.Properties;

public class GitHubProvider implements Provider {
private static final Logger LOG = LoggerFactory.getLogger(GitHubProvider.class);
private static final Logger LOG = Logger.getLoggerFor(GitHubProvider.class);
// public static final String PR_FETCH_REFSPEC = "+refs/pull/*/merge:refs/gh-merge/remotes/origin/*";
// public static final String PR_MERGE_PREFIX = "refs/gh-merge/remotes/origin/";
public static final String REF_SPEC = "+refs/pull/*/head:refs/remotes/origin/pull-request/*";
Expand All @@ -45,10 +43,10 @@ public String getName() {
public void addConfigData(GitConfig gitConfig) {
try {
Properties props = GHUtils.readPropertyFile();
if (StringUtil.isEmpty(gitConfig.getUsername())) {
if (StringUtils.isEmpty(gitConfig.getUsername())) {
gitConfig.setUsername(props.getProperty("login"));
}
if (StringUtil.isEmpty(gitConfig.getPassword())) {
if (StringUtils.isEmpty(gitConfig.getPassword())) {
gitConfig.setPassword(props.getProperty("password"));
}
} catch (IOException e) {
Expand Down
Loading

0 comments on commit 33e6157

Please sign in to comment.