Files
spring-session-data-mongodb/README.adoc
2018-02-20 10:43:42 -06:00

61 lines
2.9 KiB
Plaintext

image:https://travis-ci.org/spring-projects/spring-session-data-mongodb.svg?branch=master["Build Status", link="https://travis-ci.org/spring-projects/spring-session-data-mongodb"]
= Spring Session MongoDB
Greg Turnquist
Spring Session MongoDB provides a solution for Spring Session in a MongoDB data store.
* Accessing a session from any environment (i.e. web, messaging infrastructure, etc)
* In a web environment
** Support for clustering in a vendor neutral way
** Pluggable strategy for determining the session id
** Easily keep the HttpSession alive when a WebSocket is active
== Building Spring Session MongoDB
. Run `mvn clean package`
This will generate the artifact.
You can also import the project into your IDE.
== Releasing Spring Session MongoDB
Snapshots are published automatically via CI server by doing this:
----
$ USERNAME=<username> PASSWORD=<encrypted password> mvn -Pdistribute,snapshot,docs clean deploy
----
IMPORTANT: Snapshots do NOT include GPG signatures. To do so would require putting a private key on the CI server. The process for releases (below) is manual and DOES include GPG signatures.
To do a release (.RELEASE, .RC?, .M?):
. Check in all changes and ensure there are no edited files.
. Bump up the version in `pom.xml` to the desired version and commit the change.
. `git tag <version>` (like v2.0.1.RELEASE)
. Execute a maven deploy.
* For a milestone: `USERNAME=<user> PASSWORD=<encrypted password> mvn -Pdistribute,milestone,docs clean deploy`
* For a release: `USERNAME=<user> PASSWORD=<encrypted password> mvn -Pdistribute,release,docs clean deploy`
* For a release to maven central: `USERNAME=<user> PASSWORD=<nexus password> mvn -Pdistribute,gpg,central clean deploy -s settings.xml` (At SonaType, *close* and *releases*)
. Bump up the version in `pom.xml` again to the next BUILD-SNAPSHOT.
. Commit the change.
. `git push`
. `git push --tags`
. Inspect handiwork at https://repo.spring.io/ or https://oss.sonatype.org/#stagingRepositories
NOTE: A word about reference documentation. Based upon https://github.com/spring-projects/spring-framework/wiki/gradle-build-and-release-faq#user-content-wiki-docs_schema_dist_publication[this], the `distribute` profile contains an artifactory property that is applied to the ZIP file generated by the `docs` profile. A CRON job will scoop up the zipped up docs and unpack them inside the target location.
== Code of Conduct
This project adheres to the Contributor Covenant link:CODE_OF_CONDUCT.adoc[code of conduct].
By participating, you are expected to uphold this code. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.
= Spring Session Project Site
You can find the documentation, issue management, support, samples, and guides for using Spring Session MongoDB at http://projects.spring.io/spring-session-data-mongodb/
= License
Spring Session is Open Source software released under the http://www.apache.org/licenses/LICENSE-2.0.html[Apache 2.0 license].