dsccommunity / xDatabase

MIT License
20 stars 24 forks source link

How to pass variables in post-deployment script #32

Open testlab9000 opened 7 years ago

testlab9000 commented 7 years ago

How can I pass a variable in the DACPAC post-deployment script with xDatabase? For example in the following post-deployment script: EXEC ('ALTER DATABASE [$(DatabaseName)] MODIFY FILE (NAME = [$(DatabaseName)], SIZE = 100MB, MAXSIZE = UNLIMITED, FILEGROWTH = 20%)');

I can pass $(DatabaseName) by referencing it in

        {
            Ensure = 'Present'
            SqlServer = 'localhost'
            SqlServerVersion = '2014'
            DatabaseName = $DatabaseName
            Credentials = $Credential
            DacPacPath =  'C:\DatabaseTest.dacpac'
            DacPacApplicationName =  $DatabaseName
            DacPacApplicationVersion =  '1.0'
        }

But how can I pass $(databaseSizeSQLCMD) in the following script? EXEC ('ALTER DATABASE [$(DatabaseName)] MODIFY FILE (NAME = [$(DatabaseName)], SIZE = $(databaseSizeSQLCMD), MAXSIZE = UNLIMITED, FILEGROWTH = 20%)');

johlju commented 6 years ago

It doesn't seem possible to run post-deployment scripts with the current implementation. Maybe new properties in the schema is needed to handle this.