Merge branch 'release-2.1.1'
Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/f2126086 Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/f2126086 Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/f2126086 Branch: refs/heads/master Commit: f2126086efb4a249728e074571c2f083f409ed26 Parents: 9250a81 29c287b Author: Michael Russo <[email protected]> Authored: Wed Jun 15 09:24:31 2016 -0700 Committer: Michael Russo <[email protected]> Committed: Wed Jun 15 09:24:31 2016 -0700 ---------------------------------------------------------------------- deployment/pcf/LICENSE | 201 ++++++++ deployment/pcf/README.md | 47 +- deployment/pcf/addBlobs.sh | 25 + deployment/pcf/apache-usergrid-tile-1.6.yml | 510 +++++++++++++++++++ deployment/pcf/config/blobs.yml | 19 + deployment/pcf/config/final.yml | 24 + deployment/pcf/content_migrations.yml | 53 ++ deployment/pcf/createRelease.sh | 24 + deployment/pcf/createTile.sh | 32 ++ deployment/pcf/jobs/delete-all/monit | 17 + deployment/pcf/jobs/delete-all/spec | 44 ++ .../jobs/delete-all/templates/delete-all.sh.erb | 131 +++++ deployment/pcf/jobs/deploy-all/monit | 18 + deployment/pcf/jobs/deploy-all/spec | 145 ++++++ .../jobs/deploy-all/templates/deploy-all.sh.erb | 384 ++++++++++++++ .../pcf/jobs/docker-bosh-cassandra_docker/monit | 23 + .../pcf/jobs/docker-bosh-cassandra_docker/spec | 26 + .../docker-bosh-cassandra_docker.sh.erb | 69 +++ .../jobs/docker-bosh-elasticsearch_docker/monit | 23 + .../jobs/docker-bosh-elasticsearch_docker/spec | 26 + .../docker-bosh-elasticsearch_docker.sh.erb | 69 +++ .../pcf/packages/cassandra_docker/packaging | 26 + deployment/pcf/packages/cassandra_docker/spec | 26 + deployment/pcf/packages/cf_cli/packaging | 26 + deployment/pcf/packages/cf_cli/spec | 25 + deployment/pcf/packages/common/packaging | 23 + deployment/pcf/packages/common/spec | 25 + .../pcf/packages/elasticsearch_docker/packaging | 26 + .../pcf/packages/elasticsearch_docker/spec | 26 + deployment/pcf/packages/usergrid_app/packaging | 27 + deployment/pcf/packages/usergrid_app/spec | 27 + deployment/pcf/run.sh | 25 + deployment/pcf/src/common/utils.sh | 107 ++++ deployment/pcf/src/templates/all_open.json | 6 + deployment/pcf/src/usergrid_app/manifest.yml | 22 + .../main/resources/usergrid-default.properties | 7 +- .../corepersistence/CpEntityManager.java | 2 +- .../corepersistence/CpEntityManagerFactory.java | 249 ++++++--- .../corepersistence/EntityManagerFig.java | 2 +- .../asyncevents/AsyncEventService.java | 6 +- .../asyncevents/AsyncEventServiceImpl.java | 45 +- .../asyncevents/EventBuilder.java | 6 +- .../asyncevents/EventBuilderImpl.java | 46 +- .../model/DeIndexOldVersionsEvent.java | 12 +- .../corepersistence/index/IndexService.java | 23 +- .../corepersistence/index/IndexServiceImpl.java | 86 ++-- .../pipeline/cursor/CursorSerializerUtil.java | 9 - .../pipeline/cursor/RequestCursor.java | 29 +- .../read/search/CandidateEntityFilter.java | 94 +++- .../apache/usergrid/locking/LockManager.java | 5 + .../locking/cassandra/AstyanaxLockImpl.java | 2 +- .../cassandra/AstyanaxLockManagerImpl.java | 113 ++-- .../locking/noop/NoOpLockManagerImpl.java | 5 + .../persistence/entities/Notification.java | 38 +- .../usergrid/persistence/CoreSchemaManager.java | 8 +- .../apache/usergrid/persistence/IndexIT.java | 98 ++++ .../test/resources/usergrid-test-context.xml | 1 + .../collection/EntityCollectionManager.java | 10 +- .../exception/CollectionRuntimeException.java | 11 + .../impl/EntityCollectionManagerImpl.java | 40 +- .../mvcc/stage/write/WriteUniqueVerify.java | 13 +- .../serialization/SerializationFig.java | 5 + .../serialization/impl/LogEntryIterator.java | 128 +++++ .../core/astyanax/CassandraCluster.java | 24 +- .../persistence/core/astyanax/CassandraFig.java | 18 +- .../model/field/value/EntityObject.java | 15 +- .../usergrid/persistence/index/EntityIndex.java | 5 +- .../usergrid/persistence/index/IndexFig.java | 2 +- .../index/impl/EsEntityIndexImpl.java | 64 +-- .../persistence/index/impl/EntityIndexTest.java | 41 -- .../rest/applications/users/UserResource.java | 9 + .../rest/applications/users/UsersResource.java | 9 + .../rest/management/ManagementResource.java | 6 +- .../organizations/OrganizationsResource.java | 18 +- .../rest/management/users/UserResource.java | 25 +- .../rest/management/users/UsersResource.java | 10 +- .../security/SecuredResourceFilterFactory.java | 14 +- .../shiro/filters/BasicAuthSecurityFilter.java | 19 +- .../applications/ApplicationResourceIT.java | 5 +- .../usergrid/rest/applications/SecurityIT.java | 1 - .../collection/CollectionsResourceIT.java | 87 +++- .../collection/users/PermissionsResourceIT.java | 125 ++++- .../queries/SelectMappingsQueryTest.java | 168 ++++++ .../rest/management/ManagementResourceIT.java | 2 +- .../resource/endpoints/CollectionEndpoint.java | 24 +- .../test/resource/endpoints/NamedResource.java | 8 +- .../test/resources/usergrid-test-context.xml | 2 +- .../management/AccountCreationProps.java | 3 +- .../usergrid/management/ManagementService.java | 6 +- .../cassandra/AccountCreationPropsImpl.java | 17 +- .../cassandra/ManagementServiceImpl.java | 32 +- .../apache/usergrid/security/shiro/Realm.java | 6 - .../usergrid/security/shiro/ShiroCache.java | 70 ++- .../shiro/principals/AdminUserPrincipal.java | 4 +- .../principals/ApplicationUserPrincipal.java | 13 +- .../security/shiro/utils/LocalShiroCache.java | 2 +- .../usergrid/services/ServiceManager.java | 8 + .../services/ServiceManagerFactory.java | 12 + .../ApplicationQueueManagerCache.java | 2 +- .../impl/ApplicationQueueManagerImpl.java | 52 +- .../usergrid/management/OrganizationIT.java | 2 +- .../cassandra/ManagementServiceIT.java | 6 +- .../AbstractServiceNotificationIT.java | 26 +- .../test/resources/usergrid-test-context.xml | 1 + .../java/org/apache/usergrid/tools/Cli.java | 2 +- .../org/apache/usergrid/tools/EntityUpdate.java | 3 +- .../org/apache/usergrid/tools/ExportApp.java | 2 +- .../java/org/apache/usergrid/tools/Import.java | 10 +- .../org/apache/usergrid/tools/ToolBase.java | 55 +- 109 files changed, 3941 insertions(+), 514 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/usergrid/blob/f2126086/deployment/pcf/README.md ---------------------------------------------------------------------- diff --cc deployment/pcf/README.md index 47bc408,0a002ed..330d4b8 --- a/deployment/pcf/README.md +++ b/deployment/pcf/README.md @@@ -1,2 -1,44 +1,45 @@@ - pcf - ==== + # Bosh Release + PCF Tile for Apache Usergrid + + This is a bosh release for the apache usergrid. The scripts provided can help create the bosh release and tile for Apache Usergrid. + A version of the tile is available here: https://s3.amazonaws.com/usergrid-v2-public/usergrid_v2.pivotal + + # Components Dependency + * Apache usergrid warfile + Grab the code from: https://github.com/apache/usergrid + Build the war file and save it as ROOT.war + * CF CLI Linux binary + Download the CF CLI linux binary (64 bit) from: https://github.com/cloudfoundry/cli/releases + * ElasticSearch and Cassandra. + Apache Usergrid requires ElasticSearch and Cassandra to search and manage data. + The Bosh release uses dockerized images to run both ElasticSearch and Cassandra. + Create docker images for both elastic search (v1.7) and cassandra (v2.1) and save them locally as tarballs + * Docker Bosh Release + To run docker images within Bosh, we need the docker bosh release. + Download v23 from: http://bosh.io/releases/github.com/cf-platform-eng/docker-boshrelease?all=1 + + # Building Bosh release + * Ensure following files are available at the root of the apache-usergrid-release directory + ``` + cf-linux-amd64.tgz # downloaded from CF cli github repo + ROOT.war # built from usergrid repo + cassandra-2.1.tgz # Saved Cassandra 2.1 docker image + elasticsearch-1.7.tgz # Saved ElasticSearch 1.7 docker image + docker-boshrelease-23.tgz # Docker Bosh release v23 + ``` + * Run addBlobs.sh + Important to ensure the above blobs filenames match the entries inside the addBlobs.sh (& each of the packages/*/packaging file) + * Run ./createRelease.sh + Edit the version as required inside the script + # Building Tile + * Edit the apache-usergrid-tile-1.6.yml to refer to the correct version of release tarball (for docker bosh release and usergrid) + * Run ./createTile.sh + Edit the file names or versions as needed. + The docker-boshrelease-23.tgz file should be present in the directory to create a valid working tile + The script should create the usergrid.pivotal tile file. + + # Notes + * Ensure the usergrid war file is named ROOT.war (or rename all references of ROOT.war with different file name) before running addBlobs.sh + * If newer versions are being used, please check and replace the associated versions inside packages/<package-name>/spec & packages/<packagge-name>/packaging file to deal with correct files. + * Update the tile metadata file if newer release versions are used + * Update the content_migrations.yml if new tile version is being published ++ http://git-wip-us.apache.org/repos/asf/usergrid/blob/f2126086/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/IndexFig.java ----------------------------------------------------------------------
