Putting the AppData/Modules and AppData/ModulesRepository in source control

Vote:
 

We have upgraded to EPiServer 7.1 in our development environment through the Add-On UI. Now, what we would like to do is put the updated AppData/Modules and AppData/ModulesRepository directories in source control so that when we deploy to other environments, these folders are automatically deployed as well and there is no need to go to the Add-On UI in each environment and install the 7.1 upgrade as the deployed files will already contain the upgrade.

Are the AppData/Modules and AppData/ModulesRepository directories the only folders that are touched when installing modules or can module installations also do things like upgrade the database? If we source control and deploy these folders to other environments are we setting our selves up for obscure errors in the future?

Thanks

#70813
May 01, 2013 0:36
Vote:
 

I bet it depends on each module. Because EPiServer gives you possibility to execute custom cpode while performaing installation process:

 

http://world.episerver.com/Documentation/Items/Developers-Guide/EPiServer-Framework/7/Add-Ons/Add-ons/#ExtensionPoints

 

And also remember that Addon binaries are copied over to webroot/modulesbin directory as well - this should be added to VSC repository also.

#70831
May 02, 2013 7:38
Vote:
 

Hello Neville,

As Valdis said - it depends on Add-Ons. Those Add-Ons that are part of 7.1 do not touch database structure.

There are four folders used by the Add-Ons system:

  • AppData\Modules
  • AppData\ModulesRepository
  • WebRoot\modules
  • WebRoot\modulesbin

It is safe to put those folders under the source control. However, in the currently released version of the Add-Ons system there is a known issue with update when Add-Ons files have Read-Only attribute set. So if you are using VCS that puts Read-Only attribute on files (like TFS) you need to remove the Read-Only attribute from all files in the Add-Ons folders before running an Add-On update. 

#70841
May 02, 2013 10:53
Vote:
 

I also have those folders in my TFS, and I haven't had any issues with this approach. I find it easier to keep them in TFS so I can ensure that all the other developers working on the project have the same environment, and that whatever I deploy to a server will be the most current that I'm working with.

As Sergii mentioned, before you do the upgrade or install any Add-On, you need to make sure everything the necessary folders are writeable. In the past, specifically when I tried to install the Google Analytics Add-On, I had some issues with installation because some folders were not writable. So before I upgraded to EPiServer 7.1, I checked out the entire project and AppData folder from TFS. With this approach, I didn't have any issues. The upgrade will add new folders, and some previously used folders will no longer be needed, so you can go through and do some cleanup if you want. Then just check everything back in when you know it's working.

#70870
May 02, 2013 16:46
Vote:
 

howdy,

Recently upgraded to 7.6, and I'm a little confused about this AppData folder. See http://www.karolikl.com/2014/03/deploying-site-that-has-been-upgraded.html

We have our site load balanced across 2 servers, and the blob and search index folders on a separate server. My questions are:

1. Where should the AppData folder be? Do we put this in a shared location too? Or should it be in the root of the site on each server? Or should it be at the same level as the site root?

2. Should we put it under source control? If so, we'll have to make sure the blob and index folders aren't under source control??

3. What should be in the AppData folder? Just Geolocation, Modules, ModulesRepository, TemporaryRepository? blobs and Index are shared, as mentioned.

4. Lastly, should it be called AppData or App_Data (i'm assuming it doesn't matter, but just for consistency sake). This says App_Data: http://world.episerver.com/Documentation/Items/Developers-Guide/EPiServer-CMS/75/Deployment/Deployment-scenarios/Deploying-to-Windows-Servers/

Thanks very much,

e

#88744
Jul 29, 2014 3:35
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.