You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2012/01/25 22:37:49 UTC
svn commit: r1235962 - in
/openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release:
Release.java cmd/UpdateVersions.java
Author: dblevins
Date: Wed Jan 25 21:37:49 2012
New Revision: 1235962
URL: http://svn.apache.org/viewvc?rev=1235962&view=rev
Log:
A rough sketch of what updating the versions would look like
Added:
openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/UpdateVersions.java
- copied, changed from r1234743, openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/Tck.java
Modified:
openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java
Modified: openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java
URL: http://svn.apache.org/viewvc/openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java?rev=1235962&r1=1235961&r2=1235962&view=diff
==============================================================================
--- openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java (original)
+++ openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/Release.java Wed Jan 25 21:37:49 2012
@@ -16,6 +16,7 @@
*/
package org.apache.openejb.tools.release;
+import com.sun.xml.internal.bind.v2.runtime.Location;
import org.apache.openejb.tools.release.util.Files;
import org.apache.openejb.tools.release.util.Options;
@@ -30,6 +31,7 @@ public class Release {
public static String openejbVersion = "openejb-4.0.0-beta-2";
public static String tomeeVersion = "tomee-1.0.0-beta-2";
+ public static String trunk = "https://svn.apache.org/repos/asf/openejb/trunk/openejb/";
public static String branches = "https://svn.apache.org/repos/asf/openejb/branches/";
public static String tags = "https://svn.apache.org/repos/asf/openejb/tags/";
public static String tckBranches = "https://svn.apache.org/repos/tck/openejb-tck/branches/";
Copied: openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/UpdateVersions.java (from r1234743, openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/Tck.java)
URL: http://svn.apache.org/viewvc/openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/UpdateVersions.java?p2=openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/UpdateVersions.java&p1=openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/Tck.java&r1=1234743&r2=1235962&rev=1235962&view=diff
==============================================================================
--- openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/Tck.java (original)
+++ openejb/trunk/sandbox/release-tools/src/main/java/org/apache/openejb/tools/release/cmd/UpdateVersions.java Wed Jan 25 21:37:49 2012
@@ -20,115 +20,64 @@ import org.apache.openejb.tools.release.
import org.apache.openejb.tools.release.Release;
import org.apache.openejb.tools.release.util.Files;
import org.apache.openejb.tools.release.util.IO;
-import org.codehaus.swizzle.stream.DelimitedTokenReplacementInputStream;
import org.codehaus.swizzle.stream.ReplaceStringInputStream;
-import org.codehaus.swizzle.stream.StringTokenHandler;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.util.List;
import static java.lang.String.format;
import static org.apache.openejb.tools.release.util.Exec.cd;
import static org.apache.openejb.tools.release.util.Exec.exec;
+import static org.apache.openejb.tools.release.util.Files.collect;
/**
* @version $Rev$ $Date$
*/
@Command(dependsOn = Close.class)
-public class Tck {
+public class UpdateVersions {
public static void main(String... args) throws Exception {
- // https://svn.apache.org/repos/tck/openejb-tck/branches/tomee-1.0.0-beta-2
-
- final File dir = new File("/tmp/release/tck");
+ final File dir = new File("/tmp/release/branch");
Files.mkdir(dir);
cd(dir);
- final String branch = Release.tckBranches + Release.tomeeVersion;
+ final String branch = Release.branches + Release.openejbVersion;
// Make the branch
if (exec("svn", "info", branch) != 0) {
- exec("svn", "-m", format("[release-tools] tck branch for %s", Release.tomeeVersion), "cp", Release.tckTrunk.toString(), branch);
+ exec("svn", "-m", format("[release-tools] tck branch for %s", Release.openejbVersion), "cp", Release.trunk, branch);
}
// Checkout the branch
exec("svn", "co", branch);
- final File tck = cd(new File(dir + "/" + Release.tomeeVersion));
-
- updatePom(Release.staging, new File(tck, "pom.xml"));
-
- updateWebProfile(branch, tck, Release.tomeeVersion);
-
- exec("svn", "-m", "[release-tools] update staging repo for " + Release.tomeeVersion, "ci");
- }
-
- private static void updateWebProfile(final String branch, final File dir, String version) throws IOException {
- final File properties = new File(dir, "webprofile.properties");
-
- InputStream in = IO.read(properties);
- in = replaceProperty(in, "project.scmUrl", String.format("scm:svn:%s", branch));
- in = replaceProperty(in, "project.version", version);
+ final File workingCopy = cd(new File(dir + "/" + Release.openejbVersion));
- update(properties, in);
- }
+ updateVersions(workingCopy);
- private static DelimitedTokenReplacementInputStream replaceProperty(InputStream in, final String property, final String value) {
- final String n = System.getProperty("line.separator");
- return new DelimitedTokenReplacementInputStream(in, property, n, new StringTokenHandler() {
- @Override
- public String handleToken(String token) throws IOException {
- return String.format("%s = %s%s", property, value, n);
- }
- });
+ exec("svn", "-m", "[release-tools] update staging repo for " + Release.openejbVersion, "ci");
}
- private static void updatePom(String staging, File pom) throws IOException {
+ private static void updateVersions(File workingCopy) throws IOException {
- System.out.println(pom.getAbsolutePath());
+ final List<File> files = collect(workingCopy, ".*pom.xml");
+ files.addAll(collect(workingCopy, ".*build.xml"));
- final String n = System.getProperty("line.separator");
+ for (File file : files) {
+ InputStream in = IO.read(file);
- final String repositoryDefinition = " <repository>" + n +
- " <id>nexus-staging</id>" + n +
- " <name>Nexus Staging Repository</name>" + n +
- " <url>" + staging + "</url>" + n +
- " <layout>default</layout>" + n +
- " <snapshots>" + n +
- " <enabled>false</enabled>" + n +
- " </snapshots>" + n +
- " <releases>" + n +
- " <enabled>true</enabled>" + n +
- " <checksumPolicy>ignore</checksumPolicy>" + n +
- " </releases>" + n +
- " </repository>";
-
- InputStream in = IO.read(pom);
-
- // Yank any existing nexus-staging repo
- in = new DelimitedTokenReplacementInputStream(in, "<repository>", "</repository>", new StringTokenHandler() {
- @Override
- public String handleToken(String token) throws IOException {
- if (token.contains("<id>nexus-staging</id>")) {
- return "";
- }
-
- return "<repository>" + token + "</repository>";
- }
- });
+ in = new ReplaceStringInputStream(in, "1.0.0-beta-2-SNAPSHOT", "1.0.0-beta-3-SNAPSHOT");
+ in = new ReplaceStringInputStream(in, "4.0.0-beta-2-SNAPSHOT", "4.0.0-beta-3-SNAPSHOT");
- // add the new one
- in = new ReplaceStringInputStream(in, "<repositories>", "<repositories>" + n + repositoryDefinition);
-
- // Yank SNAPSHOT
- in = new ReplaceStringInputStream(in, "-SNAPSHOT", "");
+ update(file, in);
+ }
- update(pom, in);
}
private static void update(File dest, InputStream in) throws IOException {