Skip to content

liquibase/liquibase-package-manager

Repository files navigation

lpm - Liquibase Package Manager

GitHub Release Date GitHub release (latest by date) GitHub all releases GitHub Workflow Status GitHub go.mod Go version

Easily manage external dependencies for Database Development. Search for, install, and uninstall liquibase drivers, extensions, and utilities.

lpm is experimental and not officially supported

lpm is an experimental project. Issues can be reported here, but there is no guarantee of support.

Installation

lpm is distributed as a single binary. Install lpm by downloading, unzipping, and moving it to a directory included in your system's PATH. Releases are available here.

Setup

lpm will make a best effort to locate the location of the liquibase lib directory. It is recommended to set the LIQUIBASE_HOME environment variable.

Examples:

export LIQUIBASE_HOME=/usr/local/opt/liquibase/libexec
echo  'export LIQUIBASE_HOME=/usr/local/opt/liquibase/libexec' >> ~/.bashrc 

Usage

lpm <command>

Available Commands

  • add
  • completion
  • dedupe
  • help
  • install
  • list
  • remove
  • search
  • update
  • upgrade

Autocompletion

lpm can generate shell completions for multiple shells. The following shells are available:

bash

Generate the autocompletion script for lpm for the bash shell. To load completions in your current shell session: source <(lpm completion bash)

To load completions for every new session, execute once:

  • Linux:
lpm completion bash > /etc/bash_completion.d/lpm
  • MacOS:
lpm completion bash > /usr/local/etc/bash_completion.d/lpm

zsh

To load completions in your current shell session: source <(lpm completion zsh)

To load completions for every new session, execute once: lpm completion zsh > "${fpath[1]}/_lpm"

fish

To load completions in your current shell session: lpm completion fish | source

To load completions for every new session, execute once: lpm completion fish > ~/.config/fish/completions/lpm.fish

You will need to start a new shell for this setup to take effect.

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.

This project also includes software governed by the Mozilla Public License, v. 2.0.

Releasing LPM

For instructions on releasing LPM, see RELEASING.md.