views:

37

answers:

1

Are there any recommended methods for automating configuring DotnetNuke settings? We will have several instances of our DNN application (prod, beta, qa, dev, local, etc) and need to be able to configure them all the same and be able to make updates to them all with our future releases. The settings currently needed to be configured include Host Settings, Portal Settings and User Profile Definitions.

Here are some approaches I have come up with so far:

1) Create a Configuration module and use SQL scripts for all the settings? Is it generally safe to manipulate the DNN tables directly? Often it is recommended to use APIs with many frameworks.

2) Create a Configuration module and implement IUpgradeable.UpgradeModule and programatically set the settings?

3) Create a PortalTemplate from a portal with the settings all set. I believe this will only work for creating new portals. I will not be able to update existing portals.

+2  A: 

I'd say that pursuing option #2 or #3 would be your best bet (try to stay away from option #1 for the reasons you mentioned).

For #3 you can use the Admin -> Site Wizard to reconfigure an existing portal with a portal template. I'd recommend giving this a whirl and see where your pain points are.

Either option #2 or #3 seem pretty reasonable - although you may want to decide based on what your deployment plan looks like. Would you be using a site template anyway? Are you deploying packaged modules only? Are you performing manual deployment steps? You may want to weigh options #2 or #3 based on the answers to those questions.

Ian Robinson
Thanks! I have started playing with option 2 and it looks pretty straight forward. I wasn't aware of using the Site Wizard with a portal template. I will check it out. It might be a lot less work.
Joosh21