{"id":15002499,"url":"https://github.com/goldmansachs/obevo","last_synced_at":"2025-04-05T07:06:44.396Z","repository":{"id":19652584,"uuid":"87556817","full_name":"goldmansachs/obevo","owner":"goldmansachs","description":"Obevo is a database deployment tool that handles enterprise scale schemas and complexity","archived":false,"fork":false,"pushed_at":"2023-03-20T19:27:46.000Z","size":5434,"stargazers_count":240,"open_issues_count":97,"forks_count":56,"subscribers_count":33,"default_branch":"master","last_synced_at":"2025-03-29T06:07:41.153Z","etag":null,"topics":["database","database-deployment","database-management","database-migrations","database-schema","db-deployment","db-migrate","db-migration","db2","deployment","in-memory-database","java","maintenance","mongodb","mongodb-deployment","oracle","postgresql","sql-server","stored-procedures","sybase"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/goldmansachs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-07T14:48:56.000Z","updated_at":"2025-03-28T09:20:52.000Z","dependencies_parsed_at":"2024-08-23T01:25:38.030Z","dependency_job_id":null,"html_url":"https://github.com/goldmansachs/obevo","commit_stats":null,"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldmansachs%2Fobevo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldmansachs%2Fobevo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldmansachs%2Fobevo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goldmansachs%2Fobevo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goldmansachs","download_url":"https://codeload.github.com/goldmansachs/obevo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247299832,"owners_count":20916190,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","database-deployment","database-management","database-migrations","database-schema","db-deployment","db-migrate","db-migration","db2","deployment","in-memory-database","java","maintenance","mongodb","mongodb-deployment","oracle","postgresql","sql-server","stored-procedures","sybase"],"created_at":"2024-09-24T18:50:48.538Z","updated_at":"2025-04-05T07:06:44.377Z","avatar_url":"https://github.com/goldmansachs.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Obevo\n\n[![Documentation abc](https://img.shields.io/badge/Documentation-online-brightgreen.svg)](https://goldmansachs.github.io/obevo/) [![Build Status abc](https://travis-ci.org/goldmansachs/obevo.svg?branch=master)](https://travis-ci.org/goldmansachs/obevo) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.goldmansachs.obevo/obevo-parent/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.goldmansachs.obevo/obevo-parent) [![Releases](https://img.shields.io/github/release/goldmansachs/obevo.svg)](https://github.com/goldmansachs/obevo/releases) [![Apache License](https://img.shields.io/badge/License-Apache%202-blue.svg)](LICENSE.txt)\n\n\n\n## Database Deployment Tool for Enterprise Scale and Complexity\n\nDeploying tables for a new application?\n\nOr looking to improve the DB Deployment of a years-old system with hundreds (or thousands) of tables, views, stored procedures, and other objects?\n\nObevo has your use case covered.\n\nSupported platforms: DB2, H2, HSQLDB, Microsoft SQL Server, MongoDB, Oracle, PostgreSQL, Redshift (from Amazon), Sybase ASE, Sybase IQ\n\n\n## NoSQL (MongoDB) platforms also supported!\n\nObevo can be used for more than just relational databases.\n\nMongoDB support is now available and supported for MongoDB versions 4.1.x and greater (i.e. not using the deprecated \"eval\" API).\n\nThis is the first non-RDBMS platform supported, which shows that the object-based management pattern described\n[here](https://www.infoq.com/articles/Obevo-Introduction) can be applicable elsewhere.\n\nFeel free to reach out to us if you'd like to apply our core algorithm onto a new use case.\n\n## Quick Links\n\n|Getting Started|\n|:---|\n|[Documentation](https://goldmansachs.github.io/obevo/)|\n|[Quickstart Examples](https://github.com/goldmansachs/obevo-kata) (Setup a new database or Onboard an existing database)|\n|[NY JavaSIG Presentation - Slides with animations (preferred)](https://docs.google.com/presentation/d/1oe_jjS7VwziLMjX9feCquGAx1FFRIiLek8hpccoll48)|\n|[NY JavaSIG Presentation - PDF](Obevo_Javasig.pdf)|\n|[InfoQ Publication - Introducing Obevo: Get Your Database SDLC under Control](https://www.infoq.com/articles/Obevo-Introduction)|\n\n|APIs|Build Integration|\n|:---|:---|\n|[Java API](https://goldmansachs.github.io/obevo/java-api.html)|[Maven](https://goldmansachs.github.io/obevo/maven-api.html)|\n|[Command Line API](https://goldmansachs.github.io/obevo/command-line-api.html)|[Gradle](https://goldmansachs.github.io/obevo/gradle-api.html)|\n\nDocker image is available at Docker Hub: [shantstepanian/obevo](https://hub.docker.com/r/shantstepanian/obevo/tags/)\n\n## How to Contribute?\n\nPlease see the [Contribution Guide](CONTRIBUTING.md).\n\n\n## Why Use Obevo?\n\n### Organized maintenance of all your DB object files to handle all use cases\n\nBy allowing your DB files to be maintained per DB object (as you would with classes in application code), db file maintenance\nbecomes much easier compared to DB Deployment tools that require a new file or change definition per migration:\n\n* Changes for a particular table can be reviewed in one place\n* Stateless objects like stored procedures and views can be edited in place without specifying any new incremental change files\n* 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)\n\n[Click here](https://goldmansachs.github.io/obevo/design-walkthrough.html) for more information on how Obevo works and how its algorithm compares to what most other DB Deployment tools do\n\n![1 file per object structure](obevo-site/src/site/resources/images/db-kata-file-setup.jpg)\n\n\n### In-memory and integration testing\n\nHow do you test your DDLs before deploying to production?\n\nObevo provides utilities and build plugins to clean and rebuild your databases so that you can integrate that step into\nyour integration testing lifecycle.\n\nObevo can take that a step further by converting your DB table and view code into an [in-memory database compatible format](https://goldmansachs.github.io/obevo/in-memory-db-testing.html)\nthat you can use in your tests. The conversion is done at runtime, so you do not have to maintain separate DDLs\njust for in-memory testing\n\n\n### Easy onboarding of existing systems\n\nHesitant about getting your existing database schema under SDLC control due to how objects your application has built up\nover the years? Obevo has been vetted against many such cases from applications in large enterprises.\n\n\n### Versatile to run\n\nObevo can be invoked via:\n* [Java API](https://goldmansachs.github.io/obevo/java-api.html)\n* [Command Line API](https://goldmansachs.github.io/obevo/command-line-api.html)\n* [Maven](https://goldmansachs.github.io/obevo/maven-api.html)\n* [Gradle](https://goldmansachs.github.io/obevo/gradle-api.html)\n\nObevo is designed to allow your DB code to be packaged and deployed alongside your application binaries.\n\nTreat your DB code like you would treat your application code!\n\n\n\n## Acquiring Obevo\n\n* [Versions](https://github.com/goldmansachs/obevo/releases)\n* [Maven Central](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.goldmansachs.obevo%22)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoldmansachs%2Fobevo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoldmansachs%2Fobevo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoldmansachs%2Fobevo/lists"}