Skip to content
Obevo is a database deployment tool that handles enterprise scale schemas and complexity
Java Kotlin TSQL PLpgSQL PLSQL SQLPL Other
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
dco Optimize Images 610.60kb -> 448.30kb (26.58%) and fix typo (#252) Aug 24, 2019
obevo-bom Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-core Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-db-impls Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-db Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-dbmetadata-impl Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-dependencies Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-dists Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-internal-comparer Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-internal-test-client-01 Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-internal-test-client-02 Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-internal-test-util Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-mongodb Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-site Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
obevo-utils
src/main checkstyle upgrade to avoid security hole Mar 24, 2019
.gitignore Applying checkstyle Jan 28, 2018
.travis-deploy.sh Oracle reverse-engineering fix for Unicode characters (#221) (#223) Feb 7, 2019
.travis.maven.settings.xml Integrating Maven, Docker deploy into build (#209) Dec 2, 2018
.travis.yml Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
CHANGELOG.md Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
CODE_OF_CONDUCT.md Renaming code_of_conduct file to fit Github standards Oct 28, 2017
CONTRIBUTING.md Optimize Images 610.60kb -> 448.30kb (26.58%) and fix typo (#252) Aug 24, 2019
ISSUE_TEMPLATE.md Oracle reverse-engineering fix for Unicode characters (#221) (#223) Feb 7, 2019
LICENSE.txt Applying checkstyle Jan 28, 2018
NOTICE.txt [#29 #57] Fixing bom to not expose third-party dependencies and addin… Jul 23, 2017
Obevo_Javasig.pdf Adding JavaSIG presentation link to site Mar 28, 2019
README.md Supporting MongoDB reverse-engineering Aug 18, 2019
SDLC_NOTES.md Enabling artifact deploys for master and tags Dec 6, 2018
codesigning.asc.enc Integrating Maven, Docker deploy into build (#209) Dec 2, 2018
obevo-parent.iml Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019
pom.xml Upgrade to JDK8 and JGraphT 1.3.0; Improve error message on cycle det… Aug 24, 2019

README.md

Obevo

Documentation abc Build Status abc Maven Central Releases Apache License

Database Deployment Tool for Enterprise Scale and Complexity

Deploying tables for a new application?

Or looking to improve the DB Deployment of a years-old system with hundreds (or thousands) of tables, views, stored procedures, and other objects?

Obevo has your use case covered.

Supported platforms: DB2, H2, HSQLDB, Microsoft SQL Server, MongoDB, Oracle, PostgreSQL, Redshift (from Amazon), Sybase ASE, Sybase IQ

NoSQL (MongoDB) platforms also supported!

Obevo can be used for more than just relational databases.

MongoDB support is now being piloted by end-users with version 7.2.0.

This is the first non-RDBMS platform supported, which shows that the object-based management pattern described here can be applicable elsewhere.

Feel free to reach out to us if you'd like to apply our core algorithm onto a new use case.

Quick Links

Getting Started
Documentation
Quickstart Examples (Setup a new database or Onboard an existing database)
NY JavaSIG Presentation
InfoQ Publication - Introducing Obevo: Get Your Database SDLC under Control
APIs Build Integration
Java API Maven
Command Line API Gradle

Docker image is available at Docker Hub: shantstepanian/obevo

How to Contribute?

Please see the Contribution Guide.

Why Use Obevo?

Organized maintenance of all your DB object files to handle all use cases

By allowing your DB files to be maintained per DB object (as you would with classes in application code), db file maintenance becomes much easier compared to DB Deployment tools that require a new file or change definition per migration:

  • Changes for a particular table can be reviewed in one place
  • Stateless objects like stored procedures and views can be edited in place without specifying any new incremental change files
  • All of this is possible without having to define the complete order of your file deployments; Obevo figures it out for you (a la a Java compiler compiling classes)

Click here for more information on how Obevo works and how its algorithm compares to what most other DB Deployment tools do

1 file per object structure

In-memory and integration testing

How do you test your DDLs before deploying to production?

Obevo provides utilities and build plugins to clean and rebuild your databases so that you can integrate that step into your integration testing lifecycle.

Obevo can take that a step further by converting your DB table and view code into an in-memory database compatible format that you can use in your tests. The conversion is done at runtime, so you do not have to maintain separate DDLs just for in-memory testing

Easy onboarding of existing systems

Hesitant about getting your existing database schema under SDLC control due to how objects your application has built up over the years? Obevo has been vetted against many such cases from applications in large enterprises.

Versatile to run

Obevo can be invoked via:

Obevo is designed to allow your DB code to be packaged and deployed alongside your application binaries.

Treat your DB code like you would treat your application code!

Acquiring Obevo

You can’t perform that action at this time.