November 15, 2022
Announcing the new release of Liquibase GitHub Actions
See Liquibase in Action
Accelerate database changes, reduce failures, and enforce governance across your pipelines.
Today, we’re happy to announce the release of our new version of Liquibase Github Actions!
The Origin Story
Back in October 2020, Liquibase held a Hackathon. Our team built the first Liquibase Github Action as a single monolithic action supporting a handful of Liquibase commands. Over time users would file issues for additional commands, global parameters, etc. It quickly became apparent that supporting all of the Liquibase commands in this way was not sustainable.
The Vision
We started with a vision of having Github Actions for every Liquibase command and parameter. We knew we wanted it to be completely automated and to account for new versions of Liquibase that may have new commands and new parameters.
The Process
One of our Senior Developers, Wesley Willard, created the Liquibase Protobuf Generator which will generate a spec file for each Liquibase command. This is the foundation of our house.
From there another one of our Senior Developers, Derek Smart, created the Github Action Generator which uses, of course, Github Actions! This generator takes in the spec file from the protobuf generator, creates a JSON list of the available commands, uses Terraform to create repositories for each action, and creates each individual Liquibase GitHub action.
Since everything is autogenerated, we decided to create a new GitHub Organization to publish these action repositories at https://github.com/liquibase-github-actions Liquibase. GitHub. Action!
We now have every single Liquibase command and parameter available via GitHub Actions. Each action is tagged with the specific version of Liquibase you’d like to use. These actions will support Liquibase version 4.17.0 and up.