Copied to clipboard

Flag this post as spam?

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

  • Jon Ratcliffe 20 posts 47 karma points
    Jun 17, 2012 @ 21:57
    Jon Ratcliffe

    UBoilerplate - One click project setup...


    After returning from CodeGarden 2012, quite a few of the conversations I had with other Umbraco devs (particularaly in Pete Duncansons open space session) involved: 

    • Problems encountered time and again whilst setting up new projects
    • Tedious steps we repeat for every new project (db setup, IIS Setup, VS integration...)
    • How to maintain consistency and structure across projects

    My idea (which may very well already exist) is to create a PowerShell script (or maybe Windows Console App) that does stuff like:

    • Download latest Umbraco 4.x binaries
    • Create IIS instance and app pool
    • Modify hosts file - adding local dev address for project
    • Create new SQL DB and SQL User Account correct rights for the app pool
    • Execute DB schema scripts
    • Create a Visual Studio 2010 Solution and Web Application project
    • Set Windows folder permissions
    • Setup boilerplate Umbraco objects (DocTypes, Properties, Templates, Macros) using uSiteBuilder
    • Install some essential packages
    • Install commonly used css and js libraries and wire up in master template
    • Setup a "best practices" master template based on something like HTML5 Boilerplate

    I know there is already a certain amount of automation with things like Web Platform Installer and WebMatrix but I personally like to have my Umbraco projects setup in Visual Studio using IIS as the web server. As such this tool would be aimed at the more technical devs that do a lot of custom code rather than new users who are just looking to try out Umbraco. Having said that, if a user has SQL Server and Visual Studio (ie; a .NET Developer) it could still be a good way to get started with Umbraco.

    I know a popular approach is to have a snapshot of an existing project stored in source control which is then cloned for new projects but for me this approach is not ideal:

    • Upgrading Umbraco is more work than it needs to be and HQ tell us to expect more frequent upgrades now that v5 has been dropped.
    • Most of these solutions rely on using SQL CE or SQL scripts which then require further manual work to setup.
    • Folder permissions, IIS, SQL user and hosts file still need setting up manually

    The script would use convention over configuration, the user would supply a project name on the command line which could then be sanitised and used for the naming of all assetts created during the install process. Configuration would be kept to a minimum (ie; just SQL db connection details).

    A tool like this will inevitably be opinionated. There are many, many different ways to setup an Umbraco project and disagreement is inevetible. It may just be that finding a suitable set of defaults for a large group of users is too difficult but it would be good to at least try. It's something I would probably try building for my own use anyway.

    So my questions are:

    Does anyone know of anything already out there that already does some (or all) of this?

    Have you created an install script that you would be willing to share with the community?

    Does this project sound like something you would find useful?

  • Paul Blair 466 posts 731 karma points
    Jun 18, 2012 @ 03:26
    Paul Blair

    Yes, I prefer the IIS/hosts route and I would guess it takes 10-15 minutes each time including downloading, DB setup & HTML5 boilerplate master template.

    A package would be useful but not sure whether the development time is worth it for 15 minutes saved per project. I'm not aware of anything out there at the moment that does it but would be willing to help contribute if you decide to create a new project.



Please Sign in or register to post replies

Write your reply to: