Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

psqlpack   Build Status


Psqlpack is a database development tool that is intended to make working with PostgreSQL databases more productive. It was originally inspired by Microsoft SQL Server sqlpackage and currently supports the following tasks:

  • Extract: Builds a psqlpack package (.psqlpack file) from an existing database target.
  • New: Generate a starting template for a psqlpack project (.psqlproj file) or generate a new publish profile (.publish file) defining properties as to how a database schema should be update.
  • Package: Create a psqlpack package (.psqlpack file) from a source psqlpack project (.psqlproj).
  • Publish: Incrementally update a database schema to match the schema of a source .psqlpack file or .psqlproj project. If the database does not exist on the server, the publish operation will create it. Otherwise, an existing database will be updated.
  • Report: Generate a JSON report of changes that would be made by a publish action.
  • Script: Create an SQL script of the incremental changes that would be applied to the target in order to match the schema of source.

Is it ready to be used?

Probably not. There are many features missing including SQL constructs as well as validations. This project is under development (albeit slowly), so if something is found to be missing then please raise an issue. The following list is a state of feature development:

Data Object Support

Feature Status
Schemas Partial
Tables Partial
Types Partial
Primary and Foreign Keys Partial
Functions Partial
Indexes Partial
Views NotStarted
Materialized Views NotStarted
Security Objects NotStarted
Extensions Supported
Triggers NotStarted


Licensed under either of these:


Unless you explicitly state otherwise, any contribution you intentionally submit for inclusion in the work, as defined in the Apache-2.0 license, shall be dual-licensed as above, without any additional terms or conditions.


A logical database management system for PostgreSQL enabling incremental database deployment.




No packages published