Committed by
Gerrit Code Review
Adding packaging on onos*.zip file.
Modified Version.java to allow 3-segment version. Changed onos-next to onos as default for ONOS_ROOT. Change-Id: Ifbde9dfbc7af9a5891e9f41db6932859c0f59660
Showing
6 changed files
with
45 additions
and
23 deletions
... | @@ -17,6 +17,8 @@ package org.onosproject.core; | ... | @@ -17,6 +17,8 @@ package org.onosproject.core; |
17 | 17 | ||
18 | import java.util.Objects; | 18 | import java.util.Objects; |
19 | 19 | ||
20 | +import static com.google.common.base.Preconditions.checkArgument; | ||
21 | +import static com.google.common.base.Strings.isNullOrEmpty; | ||
20 | import static java.lang.Integer.parseInt; | 22 | import static java.lang.Integer.parseInt; |
21 | 23 | ||
22 | /** | 24 | /** |
... | @@ -24,22 +26,27 @@ import static java.lang.Integer.parseInt; | ... | @@ -24,22 +26,27 @@ import static java.lang.Integer.parseInt; |
24 | */ | 26 | */ |
25 | public final class Version { | 27 | public final class Version { |
26 | 28 | ||
27 | - public static final String FORMAT = "%d.%d.%d.%s"; | 29 | + public static final String FORMAT = "%d.%d.%s.%s"; |
30 | + public static final String FORMAT_SHORT = "%d.%d.%s"; | ||
31 | + | ||
32 | + private static final String NEGATIVE = "Version segment cannot be negative"; | ||
28 | 33 | ||
29 | private final int major; | 34 | private final int major; |
30 | private final int minor; | 35 | private final int minor; |
31 | - private final int patch; | 36 | + private final String patch; |
32 | private final String build; | 37 | private final String build; |
33 | 38 | ||
34 | private final String format; | 39 | private final String format; |
35 | 40 | ||
36 | // Creates a new version descriptor | 41 | // Creates a new version descriptor |
37 | - private Version(int major, int minor, int patch, String build) { | 42 | + private Version(int major, int minor, String patch, String build) { |
38 | this.major = major; | 43 | this.major = major; |
39 | this.minor = minor; | 44 | this.minor = minor; |
40 | this.patch = patch; | 45 | this.patch = patch; |
41 | this.build = build; | 46 | this.build = build; |
42 | - this.format = String.format(FORMAT, major, minor, patch, build); | 47 | + this.format = isNullOrEmpty(build) ? |
48 | + String.format(FORMAT_SHORT, major, minor, patch) : | ||
49 | + String.format(FORMAT, major, minor, patch, build); | ||
43 | } | 50 | } |
44 | 51 | ||
45 | 52 | ||
... | @@ -48,11 +55,13 @@ public final class Version { | ... | @@ -48,11 +55,13 @@ public final class Version { |
48 | * | 55 | * |
49 | * @param major major version number | 56 | * @param major major version number |
50 | * @param minor minod version number | 57 | * @param minor minod version number |
51 | - * @param patch version patch number | 58 | + * @param patch version patch segment |
52 | - * @param build build string | 59 | + * @param build optional build string |
53 | * @return version descriptor | 60 | * @return version descriptor |
54 | */ | 61 | */ |
55 | - public static Version version(int major, int minor, int patch, String build) { | 62 | + public static Version version(int major, int minor, String patch, String build) { |
63 | + checkArgument(major > 0, NEGATIVE); | ||
64 | + checkArgument(minor > 0, NEGATIVE); | ||
56 | return new Version(major, minor, patch, build); | 65 | return new Version(major, minor, patch, build); |
57 | } | 66 | } |
58 | 67 | ||
... | @@ -65,7 +74,7 @@ public final class Version { | ... | @@ -65,7 +74,7 @@ public final class Version { |
65 | public static Version version(String string) { | 74 | public static Version version(String string) { |
66 | String[] fields = string.split("[.-]"); | 75 | String[] fields = string.split("[.-]"); |
67 | return new Version(parseInt(fields[0]), parseInt(fields[1]), | 76 | return new Version(parseInt(fields[0]), parseInt(fields[1]), |
68 | - parseInt(fields[2]), fields[3]); | 77 | + fields[2], fields.length == 4 ? fields[3] : null); |
69 | } | 78 | } |
70 | 79 | ||
71 | /** | 80 | /** |
... | @@ -87,11 +96,11 @@ public final class Version { | ... | @@ -87,11 +96,11 @@ public final class Version { |
87 | } | 96 | } |
88 | 97 | ||
89 | /** | 98 | /** |
90 | - * Returns the version patch number. | 99 | + * Returns the version patch segment. |
91 | * | 100 | * |
92 | * @return patch number | 101 | * @return patch number |
93 | */ | 102 | */ |
94 | - public int patch() { | 103 | + public String patch() { |
95 | return patch; | 104 | return patch; |
96 | } | 105 | } |
97 | 106 | ... | ... |
... | @@ -29,10 +29,10 @@ public class VersionTest { | ... | @@ -29,10 +29,10 @@ public class VersionTest { |
29 | 29 | ||
30 | @Test | 30 | @Test |
31 | public void fromParts() { | 31 | public void fromParts() { |
32 | - Version v = version(1, 2, 3, "4321"); | 32 | + Version v = version(1, 2, "3", "4321"); |
33 | assertEquals("wrong major", 1, v.major()); | 33 | assertEquals("wrong major", 1, v.major()); |
34 | assertEquals("wrong minor", 2, v.minor()); | 34 | assertEquals("wrong minor", 2, v.minor()); |
35 | - assertEquals("wrong patch", 3, v.patch()); | 35 | + assertEquals("wrong patch", "3", v.patch()); |
36 | assertEquals("wrong build", "4321", v.build()); | 36 | assertEquals("wrong build", "4321", v.build()); |
37 | } | 37 | } |
38 | 38 | ||
... | @@ -41,7 +41,7 @@ public class VersionTest { | ... | @@ -41,7 +41,7 @@ public class VersionTest { |
41 | Version v = version("1.2.3.4321"); | 41 | Version v = version("1.2.3.4321"); |
42 | assertEquals("wrong major", 1, v.major()); | 42 | assertEquals("wrong major", 1, v.major()); |
43 | assertEquals("wrong minor", 2, v.minor()); | 43 | assertEquals("wrong minor", 2, v.minor()); |
44 | - assertEquals("wrong patch", 3, v.patch()); | 44 | + assertEquals("wrong patch", "3", v.patch()); |
45 | assertEquals("wrong build", "4321", v.build()); | 45 | assertEquals("wrong build", "4321", v.build()); |
46 | } | 46 | } |
47 | 47 | ||
... | @@ -50,17 +50,26 @@ public class VersionTest { | ... | @@ -50,17 +50,26 @@ public class VersionTest { |
50 | Version v = version("1.2.3-SNAPSHOT"); | 50 | Version v = version("1.2.3-SNAPSHOT"); |
51 | assertEquals("wrong major", 1, v.major()); | 51 | assertEquals("wrong major", 1, v.major()); |
52 | assertEquals("wrong minor", 2, v.minor()); | 52 | assertEquals("wrong minor", 2, v.minor()); |
53 | - assertEquals("wrong patch", 3, v.patch()); | 53 | + assertEquals("wrong patch", "3", v.patch()); |
54 | assertEquals("wrong build", "SNAPSHOT", v.build()); | 54 | assertEquals("wrong build", "SNAPSHOT", v.build()); |
55 | } | 55 | } |
56 | 56 | ||
57 | @Test | 57 | @Test |
58 | + public void shortNumber() { | ||
59 | + Version v = version("1.2.3"); | ||
60 | + assertEquals("wrong major", 1, v.major()); | ||
61 | + assertEquals("wrong minor", 2, v.minor()); | ||
62 | + assertEquals("wrong patch", "3", v.patch()); | ||
63 | + assertEquals("wrong build", null, v.build()); | ||
64 | + } | ||
65 | + | ||
66 | + @Test | ||
58 | public void testEquals() { | 67 | public void testEquals() { |
59 | new EqualsTester() | 68 | new EqualsTester() |
60 | - .addEqualityGroup(version("1.2.3.4321"), version(1, 2, 3, "4321")) | 69 | + .addEqualityGroup(version("1.2.3.4321"), version(1, 2, "3", "4321")) |
61 | - .addEqualityGroup(version("1.9.3.4321"), version(1, 9, 3, "4321")) | 70 | + .addEqualityGroup(version("1.9.3.4321"), version(1, 9, "3", "4321")) |
62 | - .addEqualityGroup(version("1.2.8.4321"), version(1, 2, 8, "4321")) | 71 | + .addEqualityGroup(version("1.2.8.4321"), version(1, 2, "8", "4321")) |
63 | - .addEqualityGroup(version("1.2.3.x"), version(1, 2, 3, "x")) | 72 | + .addEqualityGroup(version("1.2.3.x"), version(1, 2, "3", "x")) |
64 | .testEquals(); | 73 | .testEquals(); |
65 | } | 74 | } |
66 | } | 75 | } | ... | ... |
1 | # Environmental defaults for ONOS build, package and test | 1 | # Environmental defaults for ONOS build, package and test |
2 | 2 | ||
3 | # Root of the ONOS source tree | 3 | # Root of the ONOS source tree |
4 | -export ONOS_ROOT=${ONOS_ROOT:-~/onos-next} | 4 | +export ONOS_ROOT=${ONOS_ROOT:-~/onos} |
5 | 5 | ||
6 | # M2 repository and Karaf gold bits | 6 | # M2 repository and Karaf gold bits |
7 | export M2_REPO=${M2_REPO:-~/.m2/repository} | 7 | export M2_REPO=${M2_REPO:-~/.m2/repository} |
... | @@ -24,6 +24,7 @@ export ONOS_BITS=onos-${ONOS_VERSION%~*} | ... | @@ -24,6 +24,7 @@ export ONOS_BITS=onos-${ONOS_VERSION%~*} |
24 | export ONOS_STAGE_ROOT=${ONOS_STAGE_ROOT:-/tmp} | 24 | export ONOS_STAGE_ROOT=${ONOS_STAGE_ROOT:-/tmp} |
25 | export ONOS_STAGE=$ONOS_STAGE_ROOT/$ONOS_BITS | 25 | export ONOS_STAGE=$ONOS_STAGE_ROOT/$ONOS_BITS |
26 | export ONOS_TAR=$ONOS_STAGE.tar.gz | 26 | export ONOS_TAR=$ONOS_STAGE.tar.gz |
27 | +export ONOS_ZIP=$ONOS_STAGE.zip | ||
27 | 28 | ||
28 | # Defaults for ONOS testing using remote machines. | 29 | # Defaults for ONOS testing using remote machines. |
29 | # if [ -n "${ONOS_CELL}" -a -f $ONOS_ROOT/tools/test/cells/${ONOS_CELL} ]; then | 30 | # if [ -n "${ONOS_CELL}" -a -f $ONOS_ROOT/tools/test/cells/${ONOS_CELL} ]; then | ... | ... |
... | @@ -72,5 +72,6 @@ echo $ONOS_VERSION > $ONOS_STAGE/VERSION | ... | @@ -72,5 +72,6 @@ echo $ONOS_VERSION > $ONOS_STAGE/VERSION |
72 | # Now package up the ONOS tar file | 72 | # Now package up the ONOS tar file |
73 | cd $ONOS_STAGE_ROOT | 73 | cd $ONOS_STAGE_ROOT |
74 | COPYFILE_DISABLE=1 tar zcf $ONOS_TAR $ONOS_BITS | 74 | COPYFILE_DISABLE=1 tar zcf $ONOS_TAR $ONOS_BITS |
75 | -ls -l $ONOS_TAR >&2 | 75 | +which -s zip && zip -rq $ONOS_ZIP $ONOS_BITS |
76 | +ls -l $ONOS_TAR $ONOS_ZIP >&2 | ||
76 | rm -r $ONOS_STAGE | 77 | rm -r $ONOS_STAGE | ... | ... |
... | @@ -3,7 +3,7 @@ | ... | @@ -3,7 +3,7 @@ |
3 | # Simply include in your own .bash_aliases or .bash_profile | 3 | # Simply include in your own .bash_aliases or .bash_profile |
4 | 4 | ||
5 | # Root of the ONOS source tree | 5 | # Root of the ONOS source tree |
6 | -export ONOS_ROOT=${ONOS_ROOT:-~/onos-next} | 6 | +export ONOS_ROOT=${ONOS_ROOT:-~/onos} |
7 | 7 | ||
8 | # Setup some environmental context for developers | 8 | # Setup some environmental context for developers |
9 | if [ -z "${JAVA_HOME}" ]; then | 9 | if [ -z "${JAVA_HOME}" ]; then | ... | ... |
... | @@ -6,5 +6,7 @@ | ... | @@ -6,5 +6,7 @@ |
6 | #export JAVA_HOME=${JAVA_HOME:-/usr/lib/jvm/java-7-openjdk-amd64/} | 6 | #export JAVA_HOME=${JAVA_HOME:-/usr/lib/jvm/java-7-openjdk-amd64/} |
7 | export JAVA_OPTS="${JAVA_OPTS:--Xms256m -Xmx2048m}" | 7 | export JAVA_OPTS="${JAVA_OPTS:--Xms256m -Xmx2048m}" |
8 | 8 | ||
9 | -cd /opt/onos | 9 | +ONOS_HOME=/opt/onos |
10 | -/opt/onos/apache-karaf-$KARAF_VERSION/bin/karaf "$@" | 10 | + |
11 | +[ -d $ONOS_HOME ] && cd $ONOS_HOME || ONOS_HOME=$(dirname $0)/.. | ||
12 | +${ONOS_HOME}/apache-karaf-$KARAF_VERSION/bin/karaf "$@" | ... | ... |
-
Please register or login to post a comment