SQL CI

Build and test step failing when using a FILESTREAM column

SQL CI build step and test step will fail on their default setting if your database contains any tables with a FILESTREAM column. The error message will contain the following:

Error message

...Default FILESTREAM filegroup is not available in database...

Cause

During the build and test steps, SQL CI makes a copy of your database on a temporary server. By default, it uses LocalDB for this. However, LocalDB doesn't support FILESTREAM.

Fix

Instead of using the default option of LocalDB for the copy of your database, you can specify a blank database on an alternative temporary server that supports FILESTREAM.

If you're using the SQL CI command

You can use the following switches to specify the details of the temporary database:

  •  /temporaryDatabaseServer
  • /temporaryDatabaseName
  • /temporaryDatabaseUserName
  • /temporaryDatabasePassword

See Using the build command or Using the test command to learn more about using these switches.

If you're using the plugin for TeamCity or TFS Build

Edit the build or test step and use the Temporary database server and Advanced Options to specify the details of the temporary database.

If you're using the TFS MSBuild scripts

You can use the following properties in the MSBuild task to specify the details of the temporary database:

  • TemporaryDatabaseServer
  • TemporaryDatabaseName
  • TemporaryDatabaseUserName
  • TemporaryDatabasePassword

Didn't find what you were looking for?