36 results found
-
Option to run drift script automatically
Our team would like to configure SCA to execute drift scripts automatically on the target database so source control is always used as the source of truth.. We find it a hassle having to run it manually in our multi-tenanted environment. Currently, the drift script must be run manually per environment.
3 votes -
Add SSC database project
The SCA database project only supports the migration approach. I would like to have is support the SSC (state/model approach) style project. My Devs are far more comfortable using Visual Studio to interact with the DB than SSMS+SSC. As long as the correct script is in source control - I don't really care how it gets there and is updated (SSC or VS).
1 vote -
Visual Studio Improvements
I would like to see a few filters added that would make working with the Main table of objects easier.
Filter by Object type: Table, stored procedure, etc
Filter Object name: Ability to type / paste in a partial name.
Filter to show tables with data. With data, without data, allI have a project with 575 objects and growing. My main reason for this is working with tables that include data. It is hard to tell which tables include table data. We need a quick reference to see which ones are under source control. As I go through and…
9 votes -
DevOps plugin - Options to disable cleaning and rebuild
DevOps plugin for tSQLt is cleaning and rebuilding database prior to running tests.
Since test step usually follows a build step, that just cleaned and rebuild the database, there's no need for the test step do it again.Add parameter for disabling this?
3 votes -
file group
DLM Automation (and related, SQL Compare) needs to have support for custom filegroups, as well as other database-level setting definitions. Right now, any database that has a single object that references a custom filegroup fails validation against anything other than a pre-staged validation database with a bunch of the settings already baked in. There's no scenario in which the product can create a new database, from scratch, if there is a dependency on these objects.
The DevOps story the products are trying to tell breaks down at scale if the whole of the database isn't manageable from the tool.
4 votesWe now have a couple of ways to handle additional filegroups and other database settings, which have been added in the years since this was created:
- Pre-deployment scripts allow custom creation of files and filegroups. These can contain dynamic logic to implement the filegroups as well.
- The “Clone as Baseline” feature allows a snapshot of a production database to be used as the basis of builds, and clones may additionally be used for development purposes. For many scenarios this makes existing filegroups “just work” in a build scenario.
Related Links:
-
ReadyRoll .sqlproj please sort the ExcludeObjectsFromSync section
The ReadyRoll .sqlproj file is a regular bugbear for merge conflicts when different work streams combine to create a release. We have old databases with many legacy objects that no longer compile, and these have to be included in the ExcludeObjectsFromSync section. ReadyRoll appears to update the entries in this section in random order. When resolving merge conflicts this makes it very difficult.
Please sort the ExcludeObjectsFromSync section in name sequence, or in name within object type to make it easier to resolve merge conflicts.
1 vote -
Add AzureAD authentication
Add the ability for the DLM process to connect to Azure DBs using Azure AD authentication. To me this makes sense as you have already added this functionality to SQL Compare.
We are moving to Azure and this is the preferred way for us to connect to these databases. Without this functionality, we have to setup a SQL user for our VSTS user so that the DLM process can deploy the database
6 votesSQL Change Automation now supports Azure Active Directory authentication for deployments via a service connection in Azure DevOps: https://documentation.red-gate.com/sca4/deploying-database-changes/add-ons/azure-devops/use-a-service-connection-to-store-target-database-credentials
I believe this meets the request here so I am marking this as completed. Thanks very much for the feedback.
-
Create target database
"DLM Automation works with your CI server and release management system, so you test, build, and release your database alongside your application code." Unfortunately, DLM only allows for the release of updates to existing databases -- suppose the target database doesn't yet exist? Deploying a NuGet package ought to allow for the possibility of initializing a new database.
18 votes -
Allow the Sync cmdlet (or similar) to generate an upgrade script without additional powershell
Allow the Sync cmdlet (or similar) to generate an upgrade script without additional powershell
19 votesThanks for suggesting this.
I believe that this has been completed in the form of the New-DatabaseReleaseArtifact cmdlet in the time since you made this suggestion, so I’m marking this as completed.
-
SQLCompareOptions switch should support SQL Data Compare options.
The SQLCompareOptions switch supports only commandline options from SQL Compare but not from SQL Data Compare that are used for static data compare.
We need the option "Force binary collation" for detect case-sensitively changes on a case-insensitive collation.
74 votesAs of SQL Change Automation Powershell 3.3.19177 you can now tweak static data comparison behaviour by providing SQL Data Compare options to the cmdlets.
-
less verbose logging
Currently the build log contains the status of each object in the database. In large databases (Mine has 22K objects) this creates a very long log file that is difficult to parse through.
4 votesThe SQL Change Automation build cmdlets are now “not verbose” by default, and have the option to be Verbose when desired.
-
Ability to run pre/post deployment scripts
I should be able to run pre/post deployment scripts when doing a deployment with SQL Release.
16 votesPre and Post deployment scripts are now available in SQL Change Automation, both for SQL Change Automation projects and SQL Source Control projects.
-
Support Change Data Capture (CDC)
You can deploy databases featuring CDC using SQL Server Express, but you need to filter out all objects referencing the CDC system table. I want SQL CI to support databases that use CDC.
28 votesThanks for this suggestion.
Change Data Capture is now supported quite well by SQL Change Automation projects which has plugins in both Visual Studio and SSMS. Configuring this does take some careful implementation as I’ll describe here.
When setting up the project, I recommend setting the ‘comparison’ option for “Add object existence checks” to true. This can be done in the graphic project wizard in the SSMS plugin, and this means that any commands regarding the CDC schema, etc in your migration script will be written in an idempotent way that won’t cause errors. (Note: I didn’t see CDC system tables included in the baseline script, which is good.)
It is also helpful to add a pre-deployment script to the project to ensure that cdc is enabled. This will enable project verification against a shadow database and build databases.
If you wish to manage change tracking in your migration…
-
Allow online index operations
Allow online=on option for index creation during deployment process. This is a particular painful problem when deploying to an azure sql database where they have transaction log limits.
42 votesA schema comparison option now exists to support the ONLINE option. This option is set to OFF by default.
False -
Add DLM Dashboard fields to VSTS Extension
I'd like to be able to configure the VSTS extension to update our DLM Dashboard serer. At the moment I have to use a command line task to perform this.
9 votesThe latest VSTS extensions have DLM Dashboard fields available.
-
Sync Scripts to Database
I'd like to be able to sync my database scripts which are stored directly in TFS (source control) as my 'source' db and then specify an actual database server as my 'target' database just like you do in the command line options for redgate sql compare.
6 votes -
Improve error handling when database has syntax errors
When first starting to use SQL Release, it's likely that the target database may have a few syntax errors in it. For example, it could have a sproc that references a table that doesn't exist. Alternatively, the TempDB that SQL Release is using might not support a feature that the target database uses, or the real SQL Database might not support a feature that the target database is using. In any of these cases, the error returned by New-DatabaseRelease is very unhelpful:
new-databaserelease : SQLCompare.exe terminated with the exit code 126: Failed due to a SQL Server error.
SQLCompare.exe produced…1 voteIn the years since this was last updated, many changes have taken place. SQL Change Automation does now give more detailed error messages and I believe this has been resolved.
-
allow passing filters to SQLCI
We have a shared database environment that is usesdby many applications that have different release schedules. We need a way to filter to a specific set of objects (i.e. schema, and/or object name)
3 votesFilters can now be passed to relevant cmdlets using the -FilterPath parameter and to SQLCI.ps1 using the filter parameter.
-
Make Connection Timeout value configurable
I am randomly getting the following error:
'Error: Comparison of 'Scripts.state' and 'MyServer.MyDatabase' failed. Connection Timeout Expired. The timeout period elapsed during the post-login phase. The connection could have timed out while waiting for server to complete the login process and respond; Or it could have timed out while attempting to create multiple active connections.
When I re-run SQL CI with exactly the same parameters, next time it works.
Can you make 'Connection Timeout' value configurable from command-line please?
4 votesDLMAv2 cmdlets now have a timeout parameter so you can specify your own connection timeout.
-
6 votes
- Don't see your idea?