You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by sn...@apache.org on 2016/02/05 00:00:40 UTC
[02/42] usergrid git commit: Add Maven assembly for creating a binary
release, plus CHANGELOG entry for 2.1.0.
Add Maven assembly for creating a binary release, plus CHANGELOG entry for 2.1.0.
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/8063a5aa
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/8063a5aa
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/8063a5aa
Branch: refs/heads/release
Commit: 8063a5aaaffdf3c5354eb6b9799bb538da1227b1
Parents: 595955d
Author: Dave Johnson <sn...@apache.org>
Authored: Thu Jan 28 10:42:03 2016 -0500
Committer: Dave Johnson <sn...@apache.org>
Committed: Thu Jan 28 10:42:03 2016 -0500
----------------------------------------------------------------------
CHANGELOG | 13 ++++
README.md | 4 +-
release/README.txt | 6 +-
release/binary-release.sh | 37 ++++++++++++
release/pom.xml | 95 +++++++++++++++++++++++++++++
release/release-candidate.sh | 42 +++++++------
release/release.sh | 32 ++++++----
release/src/main/assembly/binary.xml | 99 +++++++++++++++++++++++++++++++
sdks/html5-javascript/Release.md | 6 --
9 files changed, 294 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/CHANGELOG
----------------------------------------------------------------------
diff --git a/CHANGELOG b/CHANGELOG
index 47a080a..3e5c736 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,16 @@
+Usergrid 2.1.0
+--------------------------------------------------------------------------------
+
+Usergrid 2.1.0 is a major release of Usergrid with a completely rewritten
+persistence, index and query engine based on Cassandra and ElasticSearch.
+The REST API remains the same as in Usergrid 1.x but with the addition of some
+new system APIs for managing the query index and data migrations.
+
+Usergrid 2.1.0 will not work with a Usergrid 1.x database and currently
+there is no migration tool for upgrading a 1.x system to 2.1.
+
+
Usergrid 1.0.2
--------------------------------------------------------------------------------
@@ -24,6 +36,7 @@ New features
Here's the full list of JIRA issues resolved:
https://issues.apache.org/jira/issues/?jql=project%3Dusergrid%20and%20fixVersion%3D1.0.2
+
Usergrid 1.0.1
--------------------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 4f5ba88..07668e4 100644
--- a/README.md
+++ b/README.md
@@ -1,8 +1,6 @@
Apache Usergrid
===============
-__WARNING__: This is the __two-dot-o__ branch and work is underway here on a new persistence system for Usergrid. We refer to the new persistence system as Core Persistence and you can find its modules in the stack/corepersistence directory.
-
Overview
--------
@@ -17,7 +15,7 @@ Apache Usergrid provides all code necessary to build and power modern mobile app
Look for much more detailed README files in their corresponding subdirectories, or check out [our website](http://usergrid.apache.org/) for more info.
-* The server-side stack, a Java 7 + Cassandra codebase that powers all of the features, is located under [`/stack`](stack). You can install dependencies and compile it with maven. See [stack/README.md](stack#requirements) for instructions.
+* The server-side stack, a Java 8 + Cassandra + ElasticSearch codebase that powers all of the features, is located under [`/stack`](stack). You can install dependencies and compile it with maven. See [stack/README.md](stack#requirements) for instructions.
* The admin portal is a pure HTML5+JavaScript app allowing you to register developers and let them manage their apps in a multi-tenant cluster. Located under [`/portal`](portal)
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/release/README.txt
----------------------------------------------------------------------
diff --git a/release/README.txt b/release/README.txt
index 08d6006..d4e890f 100644
--- a/release/README.txt
+++ b/release/README.txt
@@ -12,9 +12,13 @@ These are the important files:
/release/release.sh - create a release
/release/changelog.rb - generate CHANGELOG based on JIRA fixVerison
+NOTE: if you are releasing from a branch other than 'release' then make sure
+the two bash scripts in this directory define RELEASE_BRANCH correctly.
+
To create a release candidate:
-1) Change to the master branch. Set .usergridversion to release version number.
+1) Change to the release branch (usually this is master).
+ Set .usergridversion to release version number.
2) Make sure that all JIRA issues that you want in the CHANGELOG have fixVersion
that matches the release version number in .usergridversion
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/release/binary-release.sh
----------------------------------------------------------------------
diff --git a/release/binary-release.sh b/release/binary-release.sh
new file mode 100755
index 0000000..9886711
--- /dev/null
+++ b/release/binary-release.sh
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+#---------------------------------------------------------------------------
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to you under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See
+# the License for the specific language governing permissions and
+# limitations under the License.
+#---------------------------------------------------------------------------
+
+# Attempt to build Java SDK, Portal, Stack and Tools
+
+pushd ../sdks/java
+mvn -DskipTests=true clean install
+popd
+
+pushd ../portal
+./build.sh
+popd
+
+pushd ../stack
+mvn -DskipTests=true clean install
+cd tools
+mvn -DskipTests=true clean install
+popd
+
+# assemble binary release
+#mvn clean install
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/release/pom.xml
----------------------------------------------------------------------
diff --git a/release/pom.xml b/release/pom.xml
new file mode 100644
index 0000000..c40e8c2
--- /dev/null
+++ b/release/pom.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?><!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>16</version>
+ <relativePath></relativePath>
+ </parent>
+
+ <groupId>org.apache.usergrid</groupId>
+ <artifactId>apache-usergrid</artifactId>
+ <version>2.1.0</version>
+ <packaging>pom</packaging>
+
+ <name>Apache Usergrid Binary Release</name>
+
+ <description>
+ Pre-built binary release of Apache Usergrid with Java Webapp, HTML5 Portal, Tools and JavaScript SDK.
+ </description>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/main/assembly/binary.xml</descriptor>
+ </descriptors>
+ <tarLongFileMode>gnu</tarLongFileMode>
+ </configuration>
+ <executions>
+ <execution>
+ <id>make-assembly</id>
+ <phase>package</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <!-- sign via "mvn clean install -Prelease-sign-artifacts" -->
+ <profile>
+ <id>release-sign-artifacts</id>
+ <activation>
+ <property>
+ <name>performRelease</name>
+ <value>true</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-gpg-plugin</artifactId>
+ <version>1.4</version>
+ <executions>
+ <execution>
+ <id>sign-artifacts</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/release/release-candidate.sh
----------------------------------------------------------------------
diff --git a/release/release-candidate.sh b/release/release-candidate.sh
index 4ed7839..684eef6 100755
--- a/release/release-candidate.sh
+++ b/release/release-candidate.sh
@@ -1,18 +1,22 @@
#!/bin/bash
+#---------------------------------------------------------------------------
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to you under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See
+# the License for the specific language governing permissions and
# limitations under the License.
-#
-#
+#---------------------------------------------------------------------------
+
+
# This script is used to create a release candidate. It will update the current
# .usergridversion as well as creates a branch for the new release candidate and
# publishes the source distrobution and signatures to be voted on.
@@ -23,6 +27,10 @@
# A email template will be generated after successfully generating a release
# candidate which will need to be sent to the dev@ and private@ mailing lists.
#
+
+# for the 2.1.0 release, we will release from 'release' instead of the usual 'master'
+export RELEASE_BRANCH=release
+
set -o errexit
set -o nounset
@@ -92,8 +100,8 @@ base_dir=$(git rev-parse --show-toplevel)
if [[ -n "`git status --porcelain`" ]]; then
echo "ERROR: Please run from a clean git repository."
exit 1
-elif [[ "`git rev-parse --abbrev-ref HEAD`" != "master" ]]; then
- echo "ERROR: This script must be run from master."
+elif [[ "`git rev-parse --abbrev-ref HEAD`" != "$RELEASE_BRANCH" ]]; then
+ echo "ERROR: This script must be run from $RELEASE_BRANCH"
exit 1
fi
@@ -143,7 +151,7 @@ function print_reset_instructions {
cat <<EOF
To roll back your local repo you will need to run:
- git checkout master
+ git checkout $RELEASE_BRANCH
git reset --hard ${current_git_rev}
git branch -D ${current_version_tag}
EOF
@@ -203,9 +211,9 @@ if [[ $publish == 1 ]]; then
echo "Pushing new branch ${current_version_tag} to origin"
cd ${base_dir}
git push origin ${current_version_tag}
- echo "Pushing updated .usergridversion to master"
- git checkout master
- git push origin master
+ echo "Pushing updated .usergridversion to $RELEASE_BRANCH"
+ git checkout $RELEASE_BRANCH
+ git push origin $RELEASE_BRANCH
fi
cd ${base_dir}
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/release/release.sh
----------------------------------------------------------------------
diff --git a/release/release.sh b/release/release.sh
index 102e4d7..acc3b1a 100755
--- a/release/release.sh
+++ b/release/release.sh
@@ -1,21 +1,27 @@
#!/bin/bash
+#---------------------------------------------------------------------------
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to you under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with the
+# License. You may obtain a copy of the License at
#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See
+# the License for the specific language governing permissions and
# limitations under the License.
-#
-#
+#---------------------------------------------------------------------------
+
# This script is used to publish the official release after a successful
# vote of a release-candidate.
+# for the 2.1.0 release, we will release from 'release' instead of the usual 'master'
+export RELEASE_BRANCH=release
+
set -e
set -o nounset
@@ -86,9 +92,9 @@ fi
base_dir=$(git rev-parse --show-toplevel)
# Verify that this is a clean repository
if [[ -n "`git status --porcelain`" ]]; then
- echo "ERROR: Please run from a clean master."
+ echo "ERROR: Please run from a clean $RELEASE_BRANCH"
exit 1
-elif [[ "`git rev-parse --abbrev-ref HEAD`" == "master" ]]; then
+elif [[ "`git rev-parse --abbrev-ref HEAD`" == "$RELEASE_BRANCH" ]]; then
echo "ERROR: This script must be run from the released branch."
exit 1
fi
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/release/src/main/assembly/binary.xml
----------------------------------------------------------------------
diff --git a/release/src/main/assembly/binary.xml b/release/src/main/assembly/binary.xml
new file mode 100644
index 0000000..bf37d8a
--- /dev/null
+++ b/release/src/main/assembly/binary.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+-->
+
+<assembly>
+ <id>binary</id>
+ <formats>
+ <format>zip</format>
+ <format>tar.gz</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <files>
+
+ <!-- Legal and Documentation -->
+ <file>
+ <source>../CHANGELOG</source>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}</outputDirectory>
+ </file>
+ <file>
+ <source>../LICENSE</source>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}</outputDirectory>
+ </file>
+ <file>
+ <source>../NOTICE</source>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}</outputDirectory>
+ </file>
+
+ <!-- Stack -->
+ <file>
+ <source>../stack/rest/target/ROOT.war</source>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}/stack</outputDirectory>
+ </file>
+
+ <!-- Tools -->
+ <file>
+ <source>../stack/tools/target/usergrid-tools-2.1.0-SNAPSHOT.jar</source>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}/tools</outputDirectory>
+ </file>
+
+ </files>
+
+ <fileSets>
+
+ <!-- Portal and source (HTML5/JavaScript and Angular) -->
+ <fileSet>
+ <directory>../portal</directory>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}/portal</outputDirectory>
+ <excludes>
+ <exclude>%ant[**/.idea/**]</exclude>
+ <exclude>%ant[**/node_modules/**]</exclude>
+ <exclude>%ant[**/bower_components/**]</exclude>
+ <exclude>%ant[**/dist/usergrid-portal/**]</exclude>
+ <exclude>%ant[**/dist-cov/**]</exclude>
+ </excludes>
+ </fileSet>
+
+ <!-- HTML5/JavaScript SDK and source -->
+ <fileSet>
+ <directory>../sdks/html5-javascript</directory>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}/sdks/html5-javascript</outputDirectory>
+ <excludes>
+ <exclude>%ant[**/.idea/**]</exclude>
+ </excludes>
+ </fileSet>
+
+ <!-- Java SDK and source -->
+ <fileSet>
+ <directory>../sdks/java</directory>
+ <outputDirectory>${artifact.artifactId}-${artifact.version}/sdks/java</outputDirectory>
+ <excludes>
+ <exclude>%ant[**/.idea/**]</exclude>
+ <exclude>%ant[**/target/classes/**]</exclude>
+ <exclude>%ant[**/target/generated-sources/**]</exclude>
+ <exclude>%ant[**/target/maven-archiver/**]</exclude>
+ <exclude>%ant[**/target/maven-status/**]</exclude>
+ </excludes>
+ </fileSet>
+
+ </fileSets>
+
+</assembly>
+
http://git-wip-us.apache.org/repos/asf/usergrid/blob/8063a5aa/sdks/html5-javascript/Release.md
----------------------------------------------------------------------
diff --git a/sdks/html5-javascript/Release.md b/sdks/html5-javascript/Release.md
deleted file mode 100644
index b388a45..0000000
--- a/sdks/html5-javascript/Release.md
+++ /dev/null
@@ -1,6 +0,0 @@
-Usergrid javascript SDK 0.10.08
- * Added support for Events and Counters
- * Added support for Folders and Assets
- * Improved asynchronous call support
- * Improved callback handling
- * Numerous bug fixes