wsalembi / incubator-tinkerpop

Mirror of Apache TinkerPop (Incubating)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TinkerPop3

TinkerPop3

Building and Testing

  • Build Project: mvn clean install

    • Specify specific tests in a TinkerPop Suite to run: mvn test -Dgremlin.tests={test class 1, test class 2…​} - note that including a specific test may require its inner class implementation (e.g. org.apache.tinkerpop.gremlin…​.UnionTest$ComputerTest)

    • Fast-build (does not run neo4j-gremlin tests - use with caution): mvn clean install -DfeelingLucky

    • Clean the .groovy/grapes/org.apache.tinkerpop directory on build: mvn clean install -DcleanGrapes

  • Regenerate test data (only necessary given changes to IO classes): mvn clean install -Dio from tinkergraph-gremlin directory

  • Build AsciiDocs: docs/preprocessor/preprocess.sh && mvn process-resources -Dasciidoc

  • Build JavaDocs: mvn process-resources -Djavadoc

  • Check for Apache License headers: mvn apache-rat:check

  • Deploy AsciiDocs: mvn deploy -Dasciidoc

  • Deploy JavaDocs: mvn deploy -Djavadoc

  • Deploy Zip Archives: mvn deploy -Darchives

  • Integration Tests: mvn verify -DskipIntegrationTests=false

  • Performance Tests: mvn verify -DskipPerformanceTests=false

  • Gatling Load Tests: mvn test -Pgatling -Dhost={hostname}

Travis Automation

  • Auto-Deploy Docs: merge/push to publish-docs branch

    • bin/publish-docs.sh is a doc deployment script which assumes master branch

  • Auto-Deploy to SNAPSHOT repository: push to master when version in pom.xml is marked -SNAPSHOT

Get Started

$ bin/gremlin.sh

         \,,,/
         (o o)
-----oOOo-(3)-oOOo-----
gremlin>

Release Process

  1. mvn apache-rat:check - ensure license headers are present

  2. mvn clean install

    1. mvn verify -DskipIntegrationTests=false

    2. mvn verify -DskipPerformanceTests=false

  3. Update CHANGELOG.asciidoc with release date.

  4. bin/bump.sh "version" to update project files to reference the non-SNAPSHOT version.

  5. git diff and review the updated files (expect all pom.xml files and this README)

  6. git commit -a -m "TinkerPop x.y.z release" and git push

  7. git tag -a -m "TinkerPop x.y.z release" x.y.z and git push --tags

  8. bin/publish-docs.sh

  9. mvn clean install -Dasciidoc -Djavadoc -Dmaven.test.skip=true - generate distributions for the release version with documentation included

  10. mvn deploy -Psonatype-oss-release -Dmaven.test.skip=true

  11. Log into SonaType, close and then release the release.

  12. mvn deploy -Darchives -Dmaven.test.skip=true

  13. Update download links on home page.

    1. s3cmd --acl-public put index.html s3://www.tinkerpop.com/

  14. Email gremlin-users mailing list and tweet.

About

Mirror of Apache TinkerPop (Incubating)

License:Apache License 2.0


Languages

Language:Java 64.4%Language:XML 30.5%Language:Groovy 4.6%Language:Shell 0.3%Language:ApacheConf 0.1%Language:Scala 0.1%