diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/Releaser.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/Releaser.java index c724d206..c76a7cf4 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/Releaser.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/Releaser.java @@ -38,10 +38,12 @@ public class Releaser { log.info("\n\n\n=== UPDATING POMS ===\n\nWill run the application " + "for root folder [{}]. \n\nPress ENTER to continue {}", workingDir, MSG); boolean skipPoms = skipStep(); - ProjectVersion version = new ProjectVersion(project); + ProjectVersion originalVersion = new ProjectVersion(project); + ProjectVersion changedVersion = new ProjectVersion(project); if (!skipPoms) { this.projectPomUpdater.updateProject(project); - log.info("\n\nProject was successfully updated"); + changedVersion = new ProjectVersion(project); + log.info("\n\nProject was successfully updated to [{}]", originalVersion); } log.info("\n\n\n=== BUILD PROJECT ===\n\nPress ENTER to build the project {}", MSG); boolean skipBuild = skipStep(); @@ -52,7 +54,7 @@ public class Releaser { log.info("\n\n\n=== COMMITTING AND PUSHING TAGS ===\n\nPress ENTER to commit, tag and push the tag {}", MSG); boolean skipCommit = skipStep(); if (!skipCommit) { - this.projectGitUpdater.commitAndTagIfApplicable(project, version); + this.projectGitUpdater.commitAndTagIfApplicable(project, changedVersion); } log.info("\n\n\n=== ARTIFACT DEPLOYMENT ===\n\nPress ENTER to deploy the artifacts {}", MSG); boolean skipDeployment = skipStep(); @@ -64,12 +66,13 @@ public class Releaser { if (!skipDocs) { this.project.publishDocs(); } - if (!version.isSnapshot()) { - log.info("\n\n\n=== REVERTING CHANGES & BUMPING VERSION===\n\nPress ENTER to go back to snapshots and bump version by patch {}", MSG); + if (!changedVersion.isSnapshot()) { + log.info("\n\n\n=== REVERTING CHANGES & BUMPING VERSION===\n\nPress ENTER to go back to snapshots and bump originalVersion by patch {}", MSG); boolean skipRevert = skipStep(); if (!skipRevert) { - this.projectGitUpdater.revertChangesIfApplicable(project, version); - this.project.bumpVersions(version.bumpedVersion()); + this.projectGitUpdater.revertChangesIfApplicable(project, changedVersion); + this.project.bumpVersions(originalVersion.bumpedVersion()); + this.projectGitUpdater.commitAfterBumpingVersions(project, originalVersion); } } log.info("\n\n\n=== PUSHING CHANGES===\n\nPress ENTER to push the commits {}", MSG); diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/ReleaserProperties.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/ReleaserProperties.java index 56421e0d..43f00fa8 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/ReleaserProperties.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/ReleaserProperties.java @@ -129,6 +129,11 @@ public class ReleaserProperties { */ private String deployCommand = "./mvnw deploy -DskipTests -Pfast"; + /** + * Command to be executed to bump versions. The new version will be passed under %s param + */ + private String bumpVersionsCommand = "./mvnw versions:set -DnewVersion=%s"; + /** * Command to be executed to deploy a built project */ @@ -174,6 +179,14 @@ public class ReleaserProperties { public void setPublishDocsCommands(String[] publishDocsCommands) { this.publishDocsCommands = publishDocsCommands; } + + public String getBumpVersionsCommand() { + return this.bumpVersionsCommand; + } + + public void setBumpVersionsCommand(String bumpVersionsCommand) { + this.bumpVersionsCommand = bumpVersionsCommand; + } } public String getWorkingDir() { diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/GitRepo.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/GitRepo.java index 40d721c4..97e64fbb 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/GitRepo.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/GitRepo.java @@ -37,7 +37,7 @@ import org.slf4j.LoggerFactory; import org.springframework.util.ResourceUtils; /** - * Abstraction over a Git repo. Can clonea repo from a given location + * Abstraction over a Git repo. Can cloned repo from a given location * and check its branch. * * @author Marcin Grzejszczak @@ -104,6 +104,7 @@ class GitRepo { */ void commit(File project, String message) { try(Git git = this.gitFactory.open(file(project))) { + git.add().addFilepattern(".").call(); git.commit().setMessage(message).call(); } catch (Exception e) { throw new IllegalStateException(e); @@ -168,6 +169,7 @@ class GitRepo { void revert(File project, String message) { try(Git git = this.gitFactory.open(file(project))) { RevCommit commit = git.log().setMaxCount(1).call().iterator().next(); + log.debug("The commit to be reverted is [{}]", commit); git.revert().include(commit).call(); git.commit().setAmend(true).setMessage(message).call(); } catch (Exception e) { diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/ProjectGitUpdater.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/ProjectGitUpdater.java index 9eb91a88..f5aa3b99 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/ProjectGitUpdater.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/git/ProjectGitUpdater.java @@ -22,6 +22,7 @@ public class ProjectGitUpdater { private static final String MSG = "Bumping versions"; private static final String PRE_RELEASE_MSG = "Bumping versions before release"; private static final String POST_RELEASE_MSG = "Going back to snapshots"; + private static final String POST_RELEASE_BUMP_MSG = MSG + " after release"; private final ReleaserProperties properties; @@ -43,6 +44,16 @@ public class ProjectGitUpdater { } } + public void commitAfterBumpingVersions(File project, ProjectVersion version) { + GitRepo gitRepo = gitRepo(project); + if (version.isSnapshot()) { + log.info("Snapshot version [{}] found. Will only commit the changed poms", version); + gitRepo.commit(project, POST_RELEASE_BUMP_MSG); + } else { + log.info("Non snapshot version [{}] found. Won't do anything", version); + } + } + public File cloneScReleaseProject() { try { File destinationDir = properties.getGit().getCloneDestinationDir() != null ? @@ -65,6 +76,7 @@ public class ProjectGitUpdater { log.info("Won't revert a snapshot version"); return; } + log.info("Reverting last commit"); gitRepo(project).revert(project, POST_RELEASE_MSG); } diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/project/Project.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/project/Project.java index d0d95067..8fc60adc 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/project/Project.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/project/Project.java @@ -20,7 +20,6 @@ import org.springframework.cloud.release.internal.ReleaserProperties; public class Project { private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass()); - private static final String BUMP_VERSIONS = "./mvnw versions:set -DnewVersion=%s"; private final ReleaserProperties properties; private final ProcessExecutor executor; @@ -95,7 +94,7 @@ public class Project { } String bumpVersionsCommand() { - return BUMP_VERSIONS; + return this.properties.getMaven().getBumpVersionsCommand(); } } diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/AcceptanceTests.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/AcceptanceTests.java new file mode 100644 index 00000000..574f47a3 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/AcceptanceTests.java @@ -0,0 +1,107 @@ +package org.springframework.cloud.release.internal; + +import java.io.File; +import java.io.IOException; +import java.net.URISyntaxException; +import java.nio.file.Files; +import java.util.Iterator; + +import org.eclipse.jgit.revwalk.RevCommit; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; +import org.junit.rules.TemporaryFolder; +import org.springframework.cloud.release.internal.git.GitRepoTests; +import org.springframework.cloud.release.internal.git.ProjectGitUpdater; +import org.springframework.cloud.release.internal.pom.ProjectPomUpdater; +import org.springframework.cloud.release.internal.pom.TestPomReader; +import org.springframework.cloud.release.internal.pom.TestUtils; +import org.springframework.cloud.release.internal.project.Project; +import org.springframework.util.FileSystemUtils; + +import static org.assertj.core.api.BDDAssertions.then; +import static org.springframework.cloud.release.internal.git.GitTestUtils.clonedProject; +import static org.springframework.cloud.release.internal.git.GitTestUtils.openGitProject; +import static org.springframework.cloud.release.internal.git.GitTestUtils.setOriginOnProjectToTmp; + +/** + * @author Marcin Grzejszczak + */ +public class AcceptanceTests { + + @Rule public TemporaryFolder tmp = new TemporaryFolder(); + TestPomReader testPomReader = new TestPomReader(); + File springCloudConsulProject; + File temporaryFolder; + + @Before + public void setup() throws Exception { + this.temporaryFolder = this.tmp.newFolder(); + this.springCloudConsulProject = new File(GitRepoTests.class.getResource("/projects/spring-cloud-consul").toURI()); + TestUtils.prepareLocalRepo(); + FileSystemUtils.copyRecursively(file("/projects/"), this.temporaryFolder); + } + + @Test + public void should_perform_a_release_of_consul() throws Exception { + File origin = clonedProject(this.tmp.newFolder(), this.springCloudConsulProject); + File project = clonedProject(this.tmp.newFolder(), tmpFile("spring-cloud-consul")); + setOriginOnProjectToTmp(origin, project); + Releaser releaser = releaser(project); + + releaser.release(); + + then(this.temporaryFolder).exists(); + File afterProcessing = new File(project, "bumped"); + then(afterProcessing).exists(); + Iterable commits = openGitProject(project).log().call(); + Iterator iterator = commits.iterator(); + RevCommit afterRelease = iterator.next(); + RevCommit goingBackToSnapshots = iterator.next(); + RevCommit bumping = iterator.next(); + then(openGitProject(origin).tagList().call().iterator().next().getName()).endsWith("v1.1.2.RELEASE"); + then(afterRelease.getShortMessage()).isEqualTo("Bumping versions after release"); + then(goingBackToSnapshots.getShortMessage()).isEqualTo("Going back to snapshots"); + then(bumping.getShortMessage()).isEqualTo("Bumping versions before release"); + } + + private ReleaserProperties releaserProperties(File project) throws URISyntaxException { + ReleaserProperties releaserProperties = new ReleaserProperties(); + releaserProperties.getGit().setSpringCloudReleaseGitUrl(file("/projects/spring-cloud-release/").toURI().getPath()); + releaserProperties.getPom().setBranch("vCamden.SR5"); + releaserProperties.setWorkingDir(project.getPath()); + releaserProperties.getMaven().setBuildCommand("touch build"); + releaserProperties.getMaven().setDeployCommand("touch deploy"); + releaserProperties.getMaven().setPublishDocsCommands(new String[] { "touch docs"} ); + releaserProperties.getMaven().setBumpVersionsCommand("touch bumped"); + return releaserProperties; + } + + private Releaser releaser(File projectFile) throws Exception { + ReleaserProperties properties = releaserProperties(projectFile); + ProjectPomUpdater pomUpdater = new ProjectPomUpdater(properties); + Project project = new Project(properties); + ProjectGitUpdater gitUpdater = new ProjectGitUpdater(properties); + return new Releaser(properties, pomUpdater, project, gitUpdater) { + @Override boolean skipStep() { + return false; + } + }; + } + + private File tmpFile(String relativePath) { + return new File(this.temporaryFolder, relativePath); + } + + private File file(String relativePath) throws URISyntaxException { + return new File(AcceptanceTests.class.getResource(relativePath).toURI()); + } + + private File pom(String relativePath) throws URISyntaxException { + return new File(new File(AcceptanceTests.class.getResource(relativePath).toURI()), "pom.xml"); + } + + private String asString(File file) throws IOException { + return new String(Files.readAllBytes(file.toPath())); + } +} diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/AcceptanceTests.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/PomUpdateAcceptanceTests.java similarity index 92% rename from spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/AcceptanceTests.java rename to spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/PomUpdateAcceptanceTests.java index 75cca539..32a22d65 100644 --- a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/AcceptanceTests.java +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/PomUpdateAcceptanceTests.java @@ -1,4 +1,4 @@ -package org.springframework.cloud.release; +package org.springframework.cloud.release.internal; import java.io.File; import java.io.IOException; @@ -11,7 +11,6 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.TemporaryFolder; import org.springframework.cloud.release.internal.pom.ProjectPomUpdater; -import org.springframework.cloud.release.internal.ReleaserProperties; import org.springframework.cloud.release.internal.pom.TestPomReader; import org.springframework.cloud.release.internal.pom.TestUtils; import org.springframework.util.FileSystemUtils; @@ -21,7 +20,7 @@ import static org.assertj.core.api.BDDAssertions.then; /** * @author Marcin Grzejszczak */ -public class AcceptanceTests { +public class PomUpdateAcceptanceTests { @Rule public TemporaryFolder tmp = new TemporaryFolder(); TestPomReader testPomReader = new TestPomReader(); @@ -83,11 +82,11 @@ public class AcceptanceTests { } private File file(String relativePath) throws URISyntaxException { - return new File(AcceptanceTests.class.getResource(relativePath).toURI()); + return new File(PomUpdateAcceptanceTests.class.getResource(relativePath).toURI()); } private File pom(String relativePath) throws URISyntaxException { - return new File(new File(AcceptanceTests.class.getResource(relativePath).toURI()), "pom.xml"); + return new File(new File(PomUpdateAcceptanceTests.class.getResource(relativePath).toURI()), "pom.xml"); } private String asString(File file) throws IOException { diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitRepoTests.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitRepoTests.java index 607e6119..aef5a0a3 100644 --- a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitRepoTests.java +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitRepoTests.java @@ -4,19 +4,15 @@ import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintStream; -import java.net.MalformedURLException; import java.net.URISyntaxException; import java.nio.file.Files; import java.util.List; import org.eclipse.jgit.api.CloneCommand; import org.eclipse.jgit.api.Git; -import org.eclipse.jgit.api.RemoteRemoveCommand; -import org.eclipse.jgit.api.RemoteSetUrlCommand; import org.eclipse.jgit.api.errors.GitAPIException; import org.eclipse.jgit.lib.Ref; import org.eclipse.jgit.revwalk.RevCommit; -import org.eclipse.jgit.transport.URIish; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -26,6 +22,8 @@ import org.springframework.cloud.release.internal.pom.TestUtils; import static org.assertj.core.api.Assertions.fail; import static org.assertj.core.api.BDDAssertions.then; import static org.assertj.core.api.BDDAssertions.thenThrownBy; +import static org.springframework.cloud.release.internal.git.GitTestUtils.clonedProject; +import static org.springframework.cloud.release.internal.git.GitTestUtils.setOriginOnProjectToTmp; /** * @author Marcin Grzejszczak @@ -133,7 +131,7 @@ public class GitRepoTests { @Test public void should_push_changes_to_master_branch() throws Exception { - File origin = clonedProject(); + File origin = clonedProject(this.tmp.newFolder(), this.springCloudReleaseProject); File project = this.gitRepo.cloneProject(this.springCloudReleaseProject.toURI()); setOriginOnProjectToTmp(origin, project); createNewFile(project); @@ -149,7 +147,7 @@ public class GitRepoTests { @Test public void should_push_changes_to_current_branch() throws Exception { - File origin = clonedProject(); + File origin = clonedProject(this.tmp.newFolder(), this.springCloudReleaseProject); File project = this.gitRepo.cloneProject(this.springCloudReleaseProject.toURI()); setOriginOnProjectToTmp(origin, project); createNewFile(project); @@ -165,7 +163,7 @@ public class GitRepoTests { @Test public void should_push_a_tag_to_new_branch_in_origin() throws Exception { - File origin = clonedProject(); + File origin = clonedProject(this.tmp.newFolder(), this.springCloudReleaseProject); File project = this.gitRepo.cloneProject(this.springCloudReleaseProject.toURI()); setOriginOnProjectToTmp(origin, project); createNewFile(project); @@ -182,31 +180,11 @@ public class GitRepoTests { } } - private void setOriginOnProjectToTmp(File origin, File project) - throws GitAPIException, MalformedURLException { - try(Git git = openGitProject(project)) { - RemoteRemoveCommand remove = git.remoteRemove(); - remove.setName("origin"); - remove.call(); - RemoteSetUrlCommand command = git.remoteSetUrl(); - command.setUri(new URIish(origin.toURI().toURL())); - command.setName("origin"); - command.setPush(true); - command.call(); - } - } private Git openGitProject(File project) { return new GitRepo.JGitFactory().open(project); } - private File clonedProject() throws IOException { - File anotherFolder = this.tmp.newFolder(); - GitRepo projectRepo = new GitRepo(anotherFolder); - projectRepo.cloneProject(this.springCloudReleaseProject.toURI()); - return anotherFolder; - } - private void createNewFile(File project) throws Exception { File newFile = new File(this.tmpFolder, "newFile"); newFile.createNewFile(); diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitTestUtils.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitTestUtils.java new file mode 100644 index 00000000..0a6e35db --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/GitTestUtils.java @@ -0,0 +1,41 @@ +package org.springframework.cloud.release.internal.git; + +import java.io.File; +import java.io.IOException; +import java.net.MalformedURLException; + +import org.eclipse.jgit.api.Git; +import org.eclipse.jgit.api.RemoteRemoveCommand; +import org.eclipse.jgit.api.RemoteSetUrlCommand; +import org.eclipse.jgit.api.errors.GitAPIException; +import org.eclipse.jgit.transport.URIish; + +/** + * @author Marcin Grzejszczak + */ +public class GitTestUtils { + + public static void setOriginOnProjectToTmp(File origin, File project) + throws GitAPIException, MalformedURLException { + try(Git git = openGitProject(project)) { + RemoteRemoveCommand remove = git.remoteRemove(); + remove.setName("origin"); + remove.call(); + RemoteSetUrlCommand command = git.remoteSetUrl(); + command.setUri(new URIish(origin.toURI().toURL())); + command.setName("origin"); + command.setPush(true); + command.call(); + } + } + + public static Git openGitProject(File project) { + return new GitRepo.JGitFactory().open(project); + } + + public static File clonedProject(File baseDir, File projectToClone) throws IOException { + GitRepo projectRepo = new GitRepo(baseDir); + projectRepo.cloneProject(projectToClone.toURI()); + return baseDir; + } +} diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/ProjectGitUpdaterTests.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/ProjectGitUpdaterTests.java index 400163df..a00fc8b8 100644 --- a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/ProjectGitUpdaterTests.java +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/git/ProjectGitUpdaterTests.java @@ -46,6 +46,22 @@ public class ProjectGitUpdaterTests { then(this.gitRepo).should().pushTag(any(File.class), eq("v1.0.0.RELEASE")); } + @Test + public void should_commit_when_snapshot_version_is_present_with_post_release_msg() { + this.updater.commitAfterBumpingVersions(this.file, new ProjectVersion("1.0.0.BUILD-SNAPSHOT")); + + then(this.gitRepo).should().commit(any(File.class), eq("Bumping versions after release")); + then(this.gitRepo).should(never()).tag(any(File.class), anyString()); + } + + @Test + public void should_not_commit_when_non_snapshot_version_is_present() { + this.updater.commitAfterBumpingVersions(this.file, new ProjectVersion("1.0.0.RELEASE")); + + then(this.gitRepo).should(never()).commit(any(File.class), eq("Bumping versions after release")); + then(this.gitRepo).should(never()).tag(any(File.class), anyString()); + } + @Test public void should_not_revert_changes_for_snapshots() { this.updater.revertChangesIfApplicable(this.file, new ProjectVersion("1.0.0.BUILD-SNAPSHOT")); diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/pom/TestUtils.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/pom/TestUtils.java index c77075a2..184687c4 100644 --- a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/pom/TestUtils.java +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/pom/TestUtils.java @@ -9,6 +9,7 @@ public class TestUtils { public static void prepareLocalRepo() throws IOException { prepareLocalRepo("target/test-classes/projects/", "spring-cloud-release"); + prepareLocalRepo("target/test-classes/projects/", "spring-cloud-consul"); } private static void prepareLocalRepo(String buildDir, String repoPath) throws IOException { diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/.gitignore b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/.gitignore new file mode 100644 index 00000000..8db262c5 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/.gitignore @@ -0,0 +1,16 @@ +*~ +#* +*# +.#* +.classpath +.project +.settings/ +.springBeans +target/ +_site/ +.idea +*.iml +*.ipr +.factorypath +*.swp +/consul \ No newline at end of file diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/COMMIT_EDITMSG b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/COMMIT_EDITMSG new file mode 100644 index 00000000..5852f446 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/COMMIT_EDITMSG @@ -0,0 +1 @@ +Initial commit diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/HEAD b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/HEAD new file mode 100644 index 00000000..cb089cd8 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/HEAD @@ -0,0 +1 @@ +ref: refs/heads/master diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/config b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/config new file mode 100644 index 00000000..6c9406b7 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/config @@ -0,0 +1,7 @@ +[core] + repositoryformatversion = 0 + filemode = true + bare = false + logallrefupdates = true + ignorecase = true + precomposeunicode = true diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/description b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/description new file mode 100644 index 00000000..498b267a --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/description @@ -0,0 +1 @@ +Unnamed repository; edit this file 'description' to name the repository. diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/index b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/index new file mode 100644 index 00000000..fcccf6d7 Binary files /dev/null and b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/index differ diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/logs/HEAD b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/logs/HEAD new file mode 100644 index 00000000..8fc76092 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/logs/HEAD @@ -0,0 +1 @@ +0000000000000000000000000000000000000000 2e289de071592d4d361957e59cc0485c5e1941a0 Marcin Grzejszczak 1489136624 +0100 commit (initial): Initial commit diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/logs/refs/heads/master b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/logs/refs/heads/master new file mode 100644 index 00000000..8fc76092 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/logs/refs/heads/master @@ -0,0 +1 @@ +0000000000000000000000000000000000000000 2e289de071592d4d361957e59cc0485c5e1941a0 Marcin Grzejszczak 1489136624 +0100 commit (initial): Initial commit diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/objects/2e/289de071592d4d361957e59cc0485c5e1941a0 b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/objects/2e/289de071592d4d361957e59cc0485c5e1941a0 new file mode 100644 index 00000000..fe76f9f2 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/objects/2e/289de071592d4d361957e59cc0485c5e1941a0 @@ -0,0 +1,2 @@ +x10 @Q;"0@Ӣ ˜s1jQL:[7D +CV78!FQ1 դvyimcQamZ#˻9N&˙WB \ No newline at end of file diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/objects/3f/e60ad83d20b9fcc485d1f4a07c84f81a4820f9 b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/objects/3f/e60ad83d20b9fcc485d1f4a07c84f81a4820f9 new file mode 100644 index 00000000..c6d94969 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/git/objects/3f/e60ad83d20b9fcc485d1f4a07c84f81a4820f9 @@ -0,0 +1,4 @@ +xUo0+L#ۍV`1ic!^;n sv >ww}*!ӳJ>d2!c68Q7H-A4`fm9` <UzF7 ,9XFWUES;  +i,) ?R)jbidYQNT /uױX 1% -;Tyy"5Fm&P)g[Ak+&<QC +S%<ֽ7}zҽ??Flurd#ng1k g&}*-d"mc"pq' yRTMm uqO*ӈJbۂÉ1uRwٟUmj(\M䑷X0x}V. +4/-,QwOgsHUA!DFWbkC^^!c.4d$'EH2D*K! ǐ0`sҶ5Uj2΀N-[| + + 4.0.0 + + org.springframework.cloud + spring-cloud-consul + 1.2.0.BUILD-SNAPSHOT + pom + Spring Cloud Consul + Spring Cloud Consul + + + org.springframework.cloud + spring-cloud-build + 1.3.1.BUILD-SNAPSHOT + + + + + + 1.3.0.BUILD-SNAPSHOT + 1.2.0.BUILD-SNAPSHOT + 1.3.0.BUILD-SNAPSHOT + 1.3.0.BUILD-SNAPSHOT + 1.0.3.BUILD-SNAPSHOT + Chelsea.BUILD-SNAPSHOT + 2.3.1 + 4.5.2 + 4.4.5 + 2.7 + + + + https://github.com/spring-cloud/spring-cloud-consul + scm:git:git://github.com/spring-cloud/spring-cloud-consul.git + scm:git:ssh://git@github.com/spring-cloud/spring-cloud-consul.git + HEAD + + + + spring-cloud-consul-dependencies + spring-cloud-consul-core + spring-cloud-consul-config + spring-cloud-consul-discovery + spring-cloud-consul-binder + spring-cloud-consul-sample + spring-cloud-starter-consul + spring-cloud-starter-consul-bus + spring-cloud-starter-consul-config + spring-cloud-starter-consul-discovery + spring-cloud-starter-consul-all + docs + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + 1.7 + 1.7 + + + + + + + + + org.springframework.cloud + spring-cloud-consul-dependencies + ${project.version} + import + pom + + + org.springframework.cloud + spring-cloud-deployer-local + ${spring-cloud-deployer.version} + test + + + org.springframework.cloud + spring-cloud-stream-binder-test + ${spring-cloud-stream.version} + test + + + org.springframework.cloud + spring-cloud-stream-dependencies + ${spring-cloud-stream.version} + pom + import + + + org.springframework.cloud + spring-cloud-bus-dependencies + ${spring-cloud-bus.version} + pom + import + + + org.springframework.cloud + spring-cloud-commons-dependencies + ${spring-cloud-commons.version} + pom + import + + + org.springframework.cloud + spring-cloud-config-dependencies + ${spring-cloud-config.version} + pom + import + + + org.springframework.cloud + spring-cloud-netflix-dependencies + ${spring-cloud-netflix.version} + import + pom + + + + com.google.code.gson + gson + ${gson.version} + + + + org.apache.httpcomponents + httpclient + ${httpclient.version} + + + org.apache.httpcomponents + httpcore + ${httpcore.version} + + + joda-time + joda-time + ${joda-time.version} + + + + + + + org.springframework.boot + spring-boot-configuration-processor + true + + + + + spring + + + spring-snapshots + Spring Snapshots + https://repo.spring.io/libs-snapshot-local + + true + + + false + + + + spring-milestones + Spring Milestones + https://repo.spring.io/libs-milestone-local + + false + + + + spring-releases + Spring Releases + https://repo.spring.io/release + + false + + + + + + spring-snapshots + Spring Snapshots + https://repo.spring.io/libs-snapshot-local + + true + + + false + + + + spring-milestones + Spring Milestones + https://repo.spring.io/libs-milestone-local + + false + + + + spring-releases + Spring Releases + https://repo.spring.io/libs-release-local + + false + + + + + + diff --git a/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/spring-cloud-starter-consul/pom.xml b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/spring-cloud-starter-consul/pom.xml new file mode 100644 index 00000000..3fe60ad8 --- /dev/null +++ b/spring-cloud-release-tools-core/src/test/resources/projects/spring-cloud-consul/spring-cloud-starter-consul/pom.xml @@ -0,0 +1,57 @@ + + + 4.0.0 + + org.springframework.cloud + spring-cloud-consul + 1.2.0.BUILD-SNAPSHOT + .. + + spring-cloud-starter-consul + Spring Cloud Starter Consul + Spring Cloud Starter Consul + https://projects.spring.io/spring-cloud + + Pivotal Software, Inc. + https://www.spring.io + + + ${basedir}/../.. + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.cloud + spring-cloud-commons + + + org.springframework.cloud + spring-cloud-context + + + org.springframework.cloud + spring-cloud-consul-core + + + com.ecwid.consul + consul-api + + + + com.google.code.gson + gson + + + org.apache.httpcomponents + httpclient + + + org.apache.httpcomponents + httpcore + + +