From 19e070d2f126c579ea6f81d475959b65848e1f13 Mon Sep 17 00:00:00 2001 From: Ryan Baxter <524254+ryanjbaxter@users.noreply.github.com> Date: Tue, 4 Jun 2024 10:47:23 -0400 Subject: [PATCH] Update password parameter to access token --- .../main/java/releaser/internal/Releaser.java | 3 +- .../releaser/internal/ReleaserProperties.java | 10 +++--- .../commercial/ReleaseBundleCreator.java | 32 +++++++++++-------- 3 files changed, 26 insertions(+), 19 deletions(-) diff --git a/releaser-core/src/main/java/releaser/internal/Releaser.java b/releaser-core/src/main/java/releaser/internal/Releaser.java index 5794678a..4c1dae2c 100644 --- a/releaser-core/src/main/java/releaser/internal/Releaser.java +++ b/releaser-core/src/main/java/releaser/internal/Releaser.java @@ -404,7 +404,8 @@ public class Releaser { List repos = commercialRepos.get(projectName); log.info("Creating release bundles for project [{}] in repos [{}]", projectName, repos); try { - boolean result = this.releaseBundleCreator.createReleaseBundle(repos, versionFromBom.version); + boolean result = this.releaseBundleCreator.createReleaseBundle(repos, versionFromBom.version, + "TNZ-" + projectName + "-commercial"); if (!result) { log.warn("Failed to create release bundle"); return ExecutionResult.unstable(new BuildUnstableException("Failed to create a release bundle")); diff --git a/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java b/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java index 64a125f5..d6484235 100644 --- a/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java +++ b/releaser-core/src/main/java/releaser/internal/ReleaserProperties.java @@ -1583,7 +1583,7 @@ public class ReleaserProperties implements Serializable { private String repoUsername; - private String repoPassword; + private String repoAccessToken; private Map> repos; @@ -1627,12 +1627,12 @@ public class ReleaserProperties implements Serializable { this.repoUsername = repoUsername; } - public String getRepoPassword() { - return repoPassword; + public String getRepoAccessToken() { + return repoAccessToken; } - public void setRepoPassword(String repoPassword) { - this.repoPassword = repoPassword; + public void setRepoAccessToken(String repoAccessToken) { + this.repoAccessToken = repoAccessToken; } } diff --git a/releaser-core/src/main/java/releaser/internal/commercial/ReleaseBundleCreator.java b/releaser-core/src/main/java/releaser/internal/commercial/ReleaseBundleCreator.java index 3ed1c371..66bc96d6 100644 --- a/releaser-core/src/main/java/releaser/internal/commercial/ReleaseBundleCreator.java +++ b/releaser-core/src/main/java/releaser/internal/commercial/ReleaseBundleCreator.java @@ -40,27 +40,37 @@ public class ReleaseBundleCreator { private static final Logger log = LoggerFactory.getLogger(ReleaseBundleCreator.class); - private ReleaserProperties properties; - private Artifactory artifactory; + private ObjectMapper objectMapper; + public ReleaseBundleCreator(ReleaserProperties properties) { - this.properties = properties; log.info("Creating Artifactory client with URL [{}]", properties.getBundles().getRepoUrl()); log.info("Creating Artifactory client with username [{}]", properties.getBundles().getRepoUsername()); - log.info("Creating Artifactory client with password [{}]", properties.getBundles().getRepoPassword()); + log.info("Creating Artifactory client with access token [{}]", properties.getBundles().getRepoAccessToken()); this.artifactory = ArtifactoryClientBuilder.create().setUrl(properties.getBundles().getRepoUrl()) .setUsername(properties.getBundles().getRepoUsername()) - .setAccessToken(properties.getBundles().getRepoPassword()).build(); + .setAccessToken(properties.getBundles().getRepoAccessToken()).build(); + this.objectMapper = new ObjectMapper(); } - public boolean createReleaseBundle(List repos, String version) throws IOException { - ObjectMapper objectMapper = new ObjectMapper(); + public boolean createReleaseBundle(List repos, String version, String releaseBundleName) throws IOException { Map json = new HashMap<>(); - json.put("release_bundle_name", "TNZ-spring-cloud-netflix-commercial"); + json.put("release_bundle_name", releaseBundleName); json.put("release_bundle_version", version); json.put( "source_type", "aql"); + json.put("source", createAqlMap(repos, version)); + return createReleaseBundle(objectMapper.writeValueAsString(json)); + } + private Map createAqlMap(List repos, String version) { + String aql = createAql(repos, version); + Map aqlObject = new HashMap<>(); + aqlObject.put("aql", aql); + return aqlObject; + } + + private String createAql(List repos, String version) { AqlQueryBuilder builder = new AqlQueryBuilder() .item(AqlItem.aqlItem("repo", AqlItem.aqlItem("$eq", "spring-enterprise-maven-prod-local"))); @@ -68,11 +78,7 @@ public class ReleaseBundleCreator { for (String repo : repos) { items[repos.indexOf(repo)] = AqlItem.match("path", repo + "/" + version); } - String aql = builder.or(items).asc("path", "name").build(); - Map aqlObject = new HashMap<>(); - aqlObject.put("aql", aql); - json.put("source", aqlObject); - return createReleaseBundle(objectMapper.writeValueAsString(json)); + return builder.or(items).asc("path", "name").build(); } public boolean createReleaseBundle(String json) throws IOException {