Repository: usergrid Updated Branches: refs/heads/asf-site 6474c0369 -> 619aff374
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/asf-site Commit: 8063a5aaaffdf3c5354eb6b9799bb538da1227b1 Parents: 595955d Author: Dave Johnson <[email protected]> Authored: Thu Jan 28 10:42:03 2016 -0500 Committer: Dave Johnson <[email protected]> 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
