Rivet

0.10.0

Rivet is a database migration/change management/versioning tool inspired by Ruby on Rails' Migrations. It creates and applies migration scripts for SQL Server databases. Migration scripts describe changes to make to your database, e.g. add a table, add a column, remove an index, etc. Migrations scripts should get added to your version control system so they can be pac
Rivet is a database migration/change management/versioning tool inspired by Ruby on Rails' Migrations. It creates and applies migration scripts for SQL Server databases. Migration scripts describe changes to make to your database, e.g. add a table, add a column, remove an index, etc. Migrations scripts should get added to your version control system so they can be packaged and deployed with your application's code.
Show more

Minimum PowerShell version

5.1

There is a newer prerelease version of this module available.
See the version list below for details.
The owner has unlisted this package. This could mean that the module is deprecated or shouldn't be used anymore.

Installation Options

Copy and Paste the following command to install this package using PowerShellGet More Info

Install-Module -Name Rivet -RequiredVersion 0.10.0

Copy and Paste the following command to install this package using Microsoft.PowerShell.PSResourceGet More Info

Install-PSResource -Name Rivet -Version 0.10.0

You can deploy this package directly to Azure Automation. Note that deploying packages with dependencies will deploy all the dependencies to Azure Automation. Learn More

Manually download the .nupkg file to your system's default download location. Note that the file won't be unpacked, and won't include any dependencies. Learn More

Owners

Copyright

Copyright 2013 - 2019 WebMD Health Services.

Package Details

Author(s)

  • WebMD Health Services

Tags

sql-server evolutionary-database database migrations

Functions

Add-CheckConstraint Add-DataType Add-DefaultConstraint Add-Description Add-ExtendedProperty Add-ForeignKey Add-PrimaryKey Add-Row Add-RowGuidCol Add-Schema Add-StoredProcedure Add-Synonym Add-Table Add-Trigger Add-UniqueKey Add-UserDefinedFunction Add-View Disable-Constraint Enable-Constraint Export-Migration Get-Migration Get-RivetConfig Invoke-Ddl Invoke-Rivet Invoke-SqlScript Merge-Migration New-BigIntColumn New-BinaryColumn New-BitColumn New-CharColumn New-Column New-DateColumn New-DateTime2Column New-DateTimeColumn New-DateTimeOffsetColumn New-DecimalColumn New-FloatColumn New-HierarchyIDColumn New-IntColumn New-MoneyColumn New-NCharColumn New-NVarCharColumn New-RealColumn New-RowVersionColumn New-SmallDateTimeColumn New-SmallIntColumn New-SmallMoneyColumn New-SqlVariantColumn New-TimeColumn New-TinyIntColumn New-UniqueIdentifierColumn New-VarBinaryColumn New-VarCharColumn New-XmlColumn Remove-CheckConstraint Remove-DataType Remove-DefaultConstraint Remove-Description Remove-ExtendedProperty Remove-ForeignKey Remove-Index Remove-PrimaryKey Remove-Row Remove-RowGuidCol Remove-Schema Remove-StoredProcedure Remove-Synonym Remove-Table Remove-Trigger Remove-UniqueKey Remove-UserDefinedFunction Remove-View Rename-Column Rename-DataType Rename-Index Rename-Object Stop-Migration Update-CodeObjectMetadata Update-Description Update-ExtendedProperty Update-Row Update-StoredProcedure Update-Table Update-Trigger Update-UserDefinedFunction Update-View *

PSEditions

Desktop Core

Dependencies

This module has no dependencies.

Release Notes

## Upgrade Instructions

This version of Rivet is backwards-incompatible. It changes the way plug-ins work. In order to upgrade to this version, you'll need to update your plugins and your rivet.json file.

1. Package your plugins into a PowerShell module. Make sure your plug-in functions are exported by your module.
2. Add the attribute `[Rivet.Plugin([Rivet.Event]::BeforeOperationLoad)]` to any existing `Start-MigrationOperation` functions.
3. Add the attribute `[Rivet.Plugin([Rivet.Event]::AfterOperationLoad)]` to any existing `Complete-MigrationOperation` functions.
4. Change the `PluginsRoot` setting in your rivet.json file to `PluginPaths`. Change its value to the path to the module you created in step 1.

See `about_Rivet_Plugins` for more information.

## Changes

* Created `Export-Migration` function for exporting database objects as Rivet migrations.
* Rivet can now add XML columns that don't have schema associated with them.
* `New-Column` can now be used to create columns on tables that have custom size specifications, are rowguidcol, are identities, custom collations, and are file stream.
* Fixed: `Merge-Migration` doesn't merge `Add-RowGuidCol` and `Remove-RowGuidCol` operations into `Add-Table`/`Update-Table` operations.
* ***Breaking Change***: Rivet plug-ins must now be packaged as/in PowerShell modules. The `PluginsRoot` configuration option has been renamed to `PluginPaths` and should be a list of paths were Rivet can find the PowerShell modules containing your plug-ins. These paths are imported using the `Import-Module` command. See `about_Rivet_Plugins` for more information.
* The `PluginsPath` (fka `PluginsRoot`) configuration setting is now allowed to have wildcards.

FileList

Version History

Version Downloads Last updated
0.23.0-rc1 3 4/18/2024
0.22.0 267 7/6/2023
0.21.1 32 5/24/2023
0.21.0 6 5/24/2023
0.20.0 7 5/19/2023
0.20.0-rc2 13 5/3/2023
0.20.0-rc1 6 5/2/2023
0.19.0 9 4/3/2023
0.18.0 11 2/22/2023
0.18.0-rc1 5 2/18/2023
0.17.0 25 10/26/2022
0.16.0 11 10/18/2022
0.15.0 13 10/11/2022
0.14.0 29 8/29/2022
0.13.0 57 6/23/2022
0.12.0 286 5/5/2020
0.12.0-beta239 14 5/5/2020
0.12.0-beta236 17 5/1/2020
0.12.0-beta233 20 4/27/2020
0.12.0-beta218 22 4/17/2020
0.9.1 24 3/27/2020
0.9.0 81 11/27/2018
0.8.1 248 11/26/2016
Show less