Introducing Liquibase Labs
Liquibase extensions allow developers to easily create support for all databases. With extensions for MongoDB, Snowflake, SAP HANA, and many more, developers across the world are adding to Liquibase to manage database migrations for their favorite database. Of course, there are many databases that Liquibase supports in the core runtime.
Using the right database for the job
When Liquibase started, the top three databases were Oracle, SQL Server, and MySQL. Since then, the number of databases used by developers has exploded. We now select databases based on the job to be done, not based on an enterprise license agreement. If Oracle is the best choice for an application, developers will use that. The same goes for Couchbase, Cassandra, you name it.
To that end, we need to be stewards of Liquibase so that it evolves to support the databases you use every day. Today, we’re happy to announce the start of Liquibase Labs.
An incubator for Liquibase extensions
Liquibase Labs is an incubator for extensions to help them mature to a point where they can be included in the core Liquibase download. Just like Oracle, SQL Server, MySQL, PostgreSQL, and many more are supported today, we should strive to have the same level of support for all databases.
Liquibase has partnered with individual developers and database vendors to provide a process to bring those extensions into the core Liquibase runtime. To be included in Liquibase core, the extension must meet the following requirements:
- Create a repository in GitHub and build your extension. You can fork an existing extension to begin work or view the documentation to get started.
- Your repository must be in GitHub and licensed with the Apache 2.0 license.
- You must have integration tests for your database. (See the great work the MongoDB and SAP HANA contributors have done with Docker containers.)
- You must have Travis CI build your extension and run the integration tests.
- The Liquibase team will fork your repository into the Liquibase organization in GitHub.
- You will be a maintainer for the fork so that you can approve PRs to the repository.
- Community support/approval and examples of pushing to production with your extension will be necessary to bring into Liquibase core. Partnering with the Liquibase team will be necessary to progress to this step.
Once this is complete, your extension will be released to millions of developers across the world! Learn more about contributing with Liquibase Labs.