Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Carl 5 posts 25 karma points
    Feb 03, 2016 @ 09:54
    Carl
    0

    Visual Studio install via nuget and publish - why is it so complicated?

    I pride myself on being pretty bright and able to work things out, but I'm repeatedly stumped by Umbraco. I'm really keen to get to grips with it to replace Sitecore for a website, but I'm continually banging my head on a wall trying to get basic concepts worked out.

    Why does Umbraco not publish a simple guide to installation and deployment? Or maybe it does but it's in the premium umbraco.tv environment?

    It's one minor hiccup after another... I install via nuget. All good. I run it locally - just fine. I set up web deployment - works fine. I deploy the site - no problem.

    Then I try and run the site remotely. Crash. OK, it's a permissions thing, so I give IUSR modify access and we move on. I then get an error about the connection string being there but no database... OK, I go back to visual studio, "show hidden files" and see the .sdf file is not included in project, so I include it and publish again.

    Next I get "No physical template file was found for template Home" and at that point I just sit back, sigh and wonder if it's worth continuing this process.

    Surely it's not beyond the wit and wherewithal of Umbraco to publish a step by step guide to get us newbies up and running?

    What am I missing now? I'm assuming that I need to "include" some other missing files in the visual studio project?

    I can get to the the management console via mywebsite/umbraco at least.

  • Nik 1591 posts 7148 karma points MVP 6x c-trib
    Feb 03, 2016 @ 10:08
    Nik
    1

    Hi Carl,

    Part of the issue you are seeing is that, and it's a bug bear of mine but I'm yet to see a solution, when you install Umbraco in a project in Visual Studio and run it none of the files that are created are included in the project. This includes the Views folder, JS folder, Css folders etc. Once you've run it for the first time if you want these in your project for source control and deployment purposes you need to manually add them to the project. (via showing hidden folders and then right click include in project.)

    Once you've done this the first time you generally find yourself remembering about this but, and it's a big one. Any templates/views/css/script files you create via the Umbraco Backoffice need to be included as well. I've often found myself falling short and missing a partial view for a macro or a template for a new document type so errors occur on accessing the deployed site.

    I rarely use the SQLCE database option, instead use fully fledge SQL server and as a result I've created a fairly manual deployment process until I find a way to automate it. (Anyone reading this that want's to advise me on ways to automate deployment, it would be greatly appreciated)

    My check list starts with things such as:

    1. Check all contents of the views folder are included in the project
    2. Check all contents of CSS and JS folders are included in the project
    3. Check all code into source control.
    4. Run site on secondary Dev environment (this checks I've not missed any other files).

    Then I start with things like database comparison/deployment (depending if this is a fresh deployment or an upgrade to a live site).

    Finally I publish to a staging folder on the network before manually deploying the files to the webserver.

    I'm not for 1 second saying this is the best approach to work against but I've found it works for me at the moment. Although I would love to automate it some how. Just need the time for figure it out. The biggest issue is Database deployment.

  • Carl 5 posts 25 karma points
    Feb 03, 2016 @ 10:15
    Carl
    0

    Thanks Nik. This is kind of what I mean though - Umbraco have a section on nuget install on their site (https://our.umbraco.org/documentation/Getting-Started/Setup/Install/install-umbraco-with-nuget) and right at the bottom of that they make some reference to deployment but, unless I'm reading it wrong, it says that by default ALL files/folders will be included in deployment? That doesn't seem to be my experience...

    I was just going to ask elsewhere how to set up Umbraco to use SQL server instead of the SQL CE thingy! Have you any hints on what I need to do to set this up please as I'm suspecting there is naff all published by Umbraco themselves telling me how to do this!

  • Paul Griffiths 370 posts 1021 karma points
    Feb 03, 2016 @ 10:48
    Paul Griffiths
    1

    Hi guys,

    Im currently in the process of writing a step by step guide with screenshots that i aim to publish out on to my blog ASAP. It details the process that i have followed to get umbraco succesfully installed via nuget, VS, IIS and SQL DB.

    Im currently working on the Permissions part which is kind of holding me up because i dont want to publish the wrong information etc. I want to ensure that i fully understand the IUSR and IIS_IUSRS permissions before making it available.

    I posted the following on stack to learn about IIS but had no replies but can someone please confirm that the following is correct

    I have installed Umbraco on my local machine but I have some questions regarding IIS and permissions if someone can help verify that I understand it all correctly. My environment is as follows

    • Windows 7 Pro OS

    • IIS 7.5 - I have set up a new site in IIS which has the identity Application Pool Identity for the app pool

    • Umbraco v7.3.0 – The application files are located in C:\Users[myUsername]\Documents\Visual Studio 2013\Projects\InstallingUmbracoDemo\InstallingUmbracoDemo

    Is the following process/understanding correct?

    Add a new website in IIS and the application pool name is automatically updated to reflect my sites name. By default this will use the identity ApplicationPoolIdentity which means that my new sites worker process (w3wp.exe) will run in an application pool that has the same name as my website in IIS By default when I created my new site it will be added to a user group called IISIUSR If I try to access my application files (that are in a folder that doesn’t not grant permission to the IISIUSR user group) it will mean IIS can’t access the resources until I grant the IIS_IUSR user group access The IUSR user group is used for anonymous access and for anything anonymously requesting my website it will be added to this group As Umbraco needs to access the internet to install the application I need to a grant permission to IUSR to allow it to do so

    Partly because I don’t quite fully understand everything I’m quite concerned about the security of granting permission to IUSR on the root folder where the application files reside. Once Umbraco has installed can this user groups full permission be revoked? Does it require full permission?

    I have found the following resource https://our.umbraco.org/wiki/reference/files-and-folders/permissions but if anyone else can provide an overview regarding permissions and the ISUR & IIS_ISUR work and more importantly whether I am understanding this process correctly.

    Once i have done this i will provide a link on this forum. Hopefully it will help new people starting out with umbraco. I know i could of done with it.

    My aim is to publish it and update it if any suggests where things can be done better or where i should provide additional info to make the guide better

    Many thanks

    Paul

  • Carl 5 posts 25 karma points
    Feb 03, 2016 @ 10:58
    Carl
    0

    Sounds useful Paul! I look forward to seeing it. I am no expert on IIS but I found this post handy when looking a year or so back: stackoverflow explanation

    The permissions post you reference (and the one that looks pretty much the same here (Umbraco permissions) seems to indicate that global root folder access is not required. It does detail where permissions only need to be set during installation and configuration and can be changed afterwards, but I've not got that far with my installation that I can check this at the moment.

  • Nik 1591 posts 7148 karma points MVP 6x c-trib
    Feb 03, 2016 @ 11:04
    Nik
    1

    Hi Paul,

    Updated folder permissions for post deployment can be found here:

    https://our.umbraco.org/Documentation/Getting-Started/Setup/Install/permissions

    Personally, I create a new computer user for the site to run as this user then only has access to the website directory and not the rest of the machine. I don't give IUSR or IIS_IUSR access to the website directories so that if other sites are running on the same machine they can't access other website directories but it isn't required.

    There is quite a lot of information for this on the forums and in the documentation, however it's just not easy to find from my experience.

    Don't forget to remind people that different versions of Umbraco may have different requirements for things like permissions.

    Nik

  • Martin 278 posts 662 karma points
    Feb 03, 2016 @ 11:22
    Martin
    0

    Hi Carl, Your post sounds exactly like my experiences when deploying through VS. Ive done the whole missing included folders & files, and its usually the first thing I check for now.

    I used to use the SQLCE for easiness, but setting up a SQL server database is just as easy.

    This is a good article on deploying to Azure. You can follow the first steps to set up a local db and umbraco install.

    http://shermandigital.com/blog/set-up-umbraco-in-visual-studio-with-localdb-and-deploy-to-azure/

    Martin

  • Paul Griffiths 370 posts 1021 karma points
    Feb 16, 2016 @ 09:34
    Paul Griffiths
    1

    Hi All,

    As promised...

    Although my website is not fully completed yet, I have finished a four part blog series that details the process that I followed to get Umbraco 7 installed using visual studio 2013. Hopefully it can be used to provide beginners with useful information that will assist them to get up and running. The blog posts can be viewed here

    1. http://www.paulrgriffiths.co.uk/blog/installing-umbraco-7-part-1-setting-up-visual-studio/
    2. http://www.paulrgriffiths.co.uk/blog/installing-umbraco-7-part-2-setting-up-a-database/
    3. http://www.paulrgriffiths.co.uk/blog/installing-umbraco-7-part-3-setting-up-iis-file-permissions/
    4. http://www.paulrgriffiths.co.uk/blog/installing-umbraco-7-part-4-final-installation-steps/

    I’ve created a separate forum post here https://our.umbraco.org/forum/getting-started/installing-umbraco/75110-installing-umbraco-7-with-visual-studio-2013-information

    Hope it helps ;)

    Paul

  • Robert Smith 18 posts 118 karma points
    Jul 13, 2017 @ 20:46
    Robert Smith
    0

    Great posts.

    I have reviewed the "setting-up" blog. It works for the basics, but every time I try and include the Umbraco specific files in the project I start getting errors. The first one is a config error which shows up when I try and run the site after adding files. At that time, a bunch of errors also appear in the VS error window which suggest there are duplicate assemblies.

    This behavior seems strange to me, but I'm still relatively new to this.

    Of note, if I open as a website vs. open as a project/solution, all the proper folders are present (ie. the ones that are greyed out if I open as a project), and the site works fine.

    So, this may simply be a VS deficiency on my part, but thought I would see if there are other comments.

  • Robert Smith 18 posts 118 karma points
    Jul 13, 2017 @ 21:25
    Robert Smith
    0

    OK, I've narrowed this considerably. The offending files are found in the Models folder which, after being included in the project, causes the builds to fail. The errors relate to:

    all.generated.cs and models.generated.cs

    Examples of errors: ex. duplicate 'ModelsBuilderAssembly' attribute ex. Type 'BlogPost' already defines a member called 'GetModelContentType' with the same parameter types (NOTE:the BlogPost refernc above is likely because the UmbracoCMS NuGet package included the Fanoe starter kit) ex. Type 'Home' already defines a member called 'GetModelContentType' with the same parameter types

    The TEMP folder also throws 2 or 3 errors.

    I'm hoping this is enough information for some genius to tell me why this is happening.

    Again, I have "included in project" a great many other files and folders and this folder (and in particular those two files) is the problem.

  • Robert Smith 18 posts 118 karma points
    Jul 13, 2017 @ 22:29
    Robert Smith
    0

    Sorry for the repeated posts, but I think I have this figured out.

    Go through each file/folder and individually 'include in project'. After each addition, rebuild the solution to ensure no errors.

    When you find an error, try and resolve it using the suggested error code links. For example, the solution for both the all.generated.cs and models.generated.cs files was to change the Build property to "Content" (from "Compile") and the Copy to Output Directory to "Copy if Newer".

    Hope this helps.

  • Paul Seal 524 posts 2889 karma points MVP 6x c-trib
    Jul 14, 2017 @ 06:41
    Paul Seal
    0

    So it seems your trouble is more about deploying than installing.

    Have a look at this guide for deploying an umbraco site http://www.codeshare.co.uk/blog/how-to-deploy-an-aspnet-website-using-umbraco-as-an-example/

    If you want a step by step guid on installing, have a look at this one http://www.codeshare.co.uk/installumbraco

Please Sign in or register to post replies

Write your reply to:

Draft