https://github.com/liquibase/liquibase-spinnaker-plugin
Spinnaker plugin for configuring and running Liquibase jobs
https://github.com/liquibase/liquibase-spinnaker-plugin
Last synced: 6 months ago
JSON representation
Spinnaker plugin for configuring and running Liquibase jobs
- Host: GitHub
- URL: https://github.com/liquibase/liquibase-spinnaker-plugin
- Owner: liquibase
- License: apache-2.0
- Created: 2022-03-02T16:38:44.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-04-18T19:08:29.000Z (over 3 years ago)
- Last Synced: 2025-02-19T06:03:28.727Z (8 months ago)
- Language: Kotlin
- Homepage:
- Size: 83 KB
- Stars: 2
- Watchers: 17
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Liquibase Spinnaker Job Plugin
Spinnaker plugin for configuring and running Liquibase jobs.- Add Liquibase to the spinnaker plugin list by modifying the halyard config as provided below. Refer: [plugin-v2-configuration](https://spinnaker.io/guides/user/plugins/#plugin-v2-configuration-changes)
```
spinnaker:
extensibility:
plugins:
Liquibase.PreconfiguredJobPlugin:
id: Liquibase.PreconfiguredJobPlugin
enabled: true
extensions: {}
repositories:
spinnaker-plugins-repository:
id: spinnaker-plugins-repository
url: https://raw.githubusercontent.com/liquibase/liquibase-spinnaker-plugin/master/plugins.json
```## Development
The run job plugin has 3 parts: the docker container, the yaml configuration, and the versioned jar for release. Main development will be between the Dockerfile and yaml config. The kotlin file `LiquibasePlugin.kt` contains boilerplate code and loads the `liquibase.yaml` config file. Very little, if any, development should be needed to this file.
#### Dockerfile
Based on the latest `liquibase/liquibase` image, the dockerfile adds a new entry point to setup the container runtime based on passed in environment variables from the yaml config. `entry.sh` checks for expected environment variables and sets up the container before running the standard liquibase entrypoint.
#### liquibase.yaml
Defines all the environment variables passed to container, the container image to use, and also mounts the host kerberos files to the container `/etc` directory.## Releasing
* jdk11 is used for the build
* bump version in `build.gradle`
* run `./gradlew clean releaseBundle`
* upload zip from `./build/distributions/` to artifactory
* update `plugins.json` with contents of `./build/distributions/plugin-info.json`
* add `url` attribute with address of zip file in artifactory## License
View [license information](https://github.com/liquibase/liquibase-spinnaker-plugin/blob/master/LICENSE.txt) for the software contained in this image.LIQUIBASE is a registered trademark of Liquibase Inc.