Build and test step failing when using a FILESTREAM column
Published 21 September 2015
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