What would be the best logical way of configuring 2012 SSIS project using the Project Deployment Model?
Consider a scenario of an SSIS Project MyImport-Project
having three packages
The project gets deployed on
Is there a standard method of configuring project parameters ?
I saw quite a few articles on Configuration Files for packages. Is there a way to configure Project Parameters depending on the deployment environment ?
SSIS 2012 project deployment model provides greater flexibility to create Environments and configure environment specific values, which can mapped to project parameters. Here is a sample that illustrates how you can execute a package deployed to Integration Services Catalog
against multiple environments. Ideally, production environment should be on its own server. This example uses all the environments on the same server for simplicity.
Let's assume that you have deployed a package to Integration Services Catalog with two project parameters named Environment
and FilePath
. To run the package under different environments, you can create multiple environments under Integration Services Catalogs \ SSIDB \ Folder name \ Environments
This sample has three Environment folders named DEV
, PRD
and TST
To create variables that should later be mapped to the project parameters, double-click the environment under the Environments folder. This samples shows how to configure values in all environments.
Since, the package has two project parameters named Environment
and FilePath
, we will create two environment variables of the same name. All the environments are configured with same
variable names but with different
values.
To map the environment variables to the project parameters, right-click on the project under the Integration Services Catalog and click Configure...
On the Configure dialog, click References
page and add each environment which should be associated with the project.
On the Configure dialog, click Parameters
page. For each parameter listed under Parameters
tab, you need to click the Ellipsis
button to map the appropriate environment variable.
On the Set Parameter Value dialog, select Use environment variable radiobutton and choose the appropriate variable. Here the parameter being mapped is [Practice.SSDT].[Environment]
. Hence, it is being mapped against the environment variable Environment
.
Once you have mapped the parameter against the appropriate environment variable, you can choose the correct environment during package execution. To execute the package, right-click on the package and click Execute...
On the Execute Package dialog, check Environment
box and select the appropriate environment from which the package should use the values for execution.
The sample package SO_15206184.dtsx
in this example simply inserts the values of project parameters Environment
and FilePath
into a table. Here are the results of the package execution against different environments, even the one including from within SSDT.