dbup-cli-2
2.0.0
See the version list below for details.
dotnet tool install --global dbup-cli-2 --version 2.0.0
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local dbup-cli-2 --version 2.0.0
#tool dotnet:?package=dbup-cli-2&version=2.0.0
nuke :add-package dbup-cli-2 --version 2.0.0
DbUp Command Line Interface
This project is inspired and based on DbUp project... and forked from drwatson1/dbup-cli after Sergey was no longer able to maintain it.
How DbUp authors describe their project:
DbUp is a .NET library that helps you to deploy changes to SQL Server databases. It tracks which SQL scripts have been run already, and runs the change scripts that are needed to get your database up to date. from official documentation
It does exactly that and does it pretty well, except that it supports not only SQL Server, but some other databases too. That is a great project that helps you a lot when you want to deploy database changes to your server, and you are a developer. Because it is merely a library and this is your responsibility to create an executable to run it. Of course, you can use PowerShell, but it is for fans only. Though it is pretty simple, however in every new project you have to create a new executable to deploy changes, and after the fifth project, it becomes a little annoying.
However, what if you are not a developer, or you are a lazy developer (in a good sense) who doesn't want to do the same thing in every new project? You can use DbUp-CLI that is already do it.
The tool has almost all the features the DbUp has, but without a single line of code, so I do not list them here, just the features of the tool itself.
Features
- Almost all of the DbUp features
- Cross-platform (dotnet needed)
- Easy to install - can be installed as a dotnet global tool
- Minimum command line options
- Uses a configuration file to store deploy options, so you can put it along with your SQL scripts under your favorite source control system
- Uses YAML format for a configuration file to improve readability
- Quick start:
- Creates a configuration file with default options for you
- Default configuration is suitable for the most cases, so you should set only a connection string to your database to run the first migration
- The configuration file contains all options with default values and a brief explanation
Documentation
- Installation
- Getting Started
- Supported DB Providers
- Configuration File
- Command Line Options Reference
- Original DbUp Documentation
Supported Databases
- MS SQL Server
- AzureSQL
- PostgreSQL
- MySQL
- CockroachDB (by @lbguilherme)
Release Notes
Date | Version | Description |
---|---|---|
2024-01-18 | 2.0.0 | Support net8 & net9, dropping all older frameworks. Upgrade DbUp to v6.0.4. See DbUp releases for additional behavior changes From 4.5.0 to 6.4.0. DbUp support for Postgres is beta for v6. Drop Coachroach as dbup package is outdated. It can be added back if someone provides an updated package. |
2023-06-12 | 1.8.1 | Improve error reporting |
2023-01-18 | 1.8.0 | Add support of .Net 7.0 |
2022-06-11 | 1.7.0 | Add support of CockroachDB, thanks to @lbguilherme |
2022-05-10 | 1.6.6 | Add support of .Net 6 |
2022-02-14 | 1.6.5 | Support of DisableVars |
2022-02-06 | 1.6.4 | Support of drop and ensure for Azure SQL |
2022-02-02 | 1.6.3 | Support of AzureSQL integrated security |
2022-01-30 | 1.6.2 | PostgreSQL SCRAM authentication support interim fix |
2022-01-29 | 1.6.1 | BUGFIX: 'version' and '--version' should return exit code 0 |
2021-10-03 | 1.6.0 | Add a 'journalTo' option to dbup.yml |
2021-03-28 | 1.5.0 | Add support of .Net Core 3.1 and .Net 5.0 |
2021-03-27 | 1.4.0 | Add script naming options<BR>Load .env.local after .env |
2020-05-30 | 1.3.0 | Support of MySQL, improve stability of integration tests |
2020-03-20 | 1.2.0 | Add a connectionTimeoutSec option |
2019-08-27 | 1.1.2 | Minor fixes |
2019-04-11 | 1.1.0 | PostgreSQL support |
2019-03-25 | 1.0.1 | Initial version (DbUp 4.2) |
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. |
This package has no dependencies.