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?
I bet it depends on each module. Because EPiServer gives you possibility to execute custom cpode while performaing installation process:
And also remember that Addon binaries are copied over to webroot/modulesbin directory as well - this should be added to VSC repository also.
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:
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.
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.
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.htmlWe 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,