Copied to clipboard

Flag this post as spam?

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


  • Nikhil 54 posts 166 karma points
    Feb 17, 2020 @ 17:21
    Nikhil
    0

    How do you move Umbraco v8 changes from dev to production?

    I am not from the CMS world so please bear with me.

    1) Used visual studio 2019 to get Umbraco.

    2) Pushed it to a Azure VM and configured with SQL Express 2019 (test site).

    3) Now content editors and devs change content on the test site. I can't see what changes I can make in Dev on my local machine as it's a CMS.

    4) Now I want to use source control to save the site and here is what I do:

    a) Zip the directory on the IIS web server.

    b) Copy it to local.

    c) Paste everything into Visual Studio project folder. Include missing or new files into Visual Studio solution.

    d) Check in files.

    e) Right click project and create a new publish profile.

    5) Publish to production or copy all files to production.

    Is this the normal way of deploying a Umbraco v8 site from dev to production?

    What happens if there is already some content in production?

    I don't want to use uSync. What if it misses something?

    Please advise.

  • Kevin Jump 2342 posts 14889 karma points MVP 8x c-trib
    Feb 17, 2020 @ 17:44
    Kevin Jump
    1

    I don't want to use uSync. What if it misses something?

    😢

    • So, If you are not refreshing the DB when you deploy then your content will still be there, but any Umbraco changes (doc-types, etc) will not.

    • You will have to add your Umbraco changes, manually after deployment

    • You will need to make a note of them (at step 3 ?) in a nice notebook.

    • if your templates reference doc-type changes, then the front end of your site may not boot until you make those changes.

    • if you do wipe the DB or copy the DB at any point you will loose all your content and settings as that is where they are stored.


    I would look at using Azure DevOps to mange the deployment of your files, and look at getting your developers to check things into source control.

    You can still have a shared DB between the devs, but this is risky if they change things and break others. so ideally everyone should have their own DB to work from.

    With the setup you have, you really only have one content source, so your content editors should only add content to the one place (and that probably is the live site), and then when you deploy your dev changes you add them to that - maybe with a copy of the live DB taken for your test site so you can test all the steps before you do any deployments to live.

  • Nikhil 54 posts 166 karma points
    Feb 17, 2020 @ 17:54
    Nikhil
    0

    Okay. You are saying that we need to move files and the database content from test to live manually.

    We have this setup as our content authors are not web developers but would add content from different geographical locations.

    Does uSync pull and consolidate all changed files and db entries/modifications?

    If I use uSync then how do I push all changes from the test Umbraco server to production?

    Do developers only check in the uSync folder content or the whole site? What about merge issues?

    In ASP.NET MVC site/ Java site we develop -> checkin -> Raise a pull request (code merge) -> Merge into a release branch -> Deploy onto test -> Test -> Deploy to production.

    The method to do this in Umbraco is still not very crystal clear to me.

  • Kevin Jump 2342 posts 14889 karma points MVP 8x c-trib
    Feb 17, 2020 @ 18:06
    Kevin Jump
    1

    I would say (only based on these posts, so obviously you might have other things going on).

    1. Your content editors should work on the live site, adding content as needed to the bits of the site they are updating - (you can have basic workflow out the box by giving them only "send to publish" permissions if you don't trust them on live)

    2. uSync tracks the changes in the DB and writes them to disk as they happen, if you install uSync.ContentEdition it also does that for content/media, there should be nothing it misses.

    3. Developers would check in their Visual Studio projects and include the uSync folder in that - they should at the very least exclude app_data and if you are installing via nuget, you shouldn't need the Umbraco or Umbraco_Client folders checked in (that's a minimal list!)

    4. Merge issues - the uSync files are xml files with text in them, git will tell you if there is a merge conflict you can resolve it using confict tools.

    5. With some form of deployment process (like azure) i would venture a workflow something like:

    Developers do their work locally on branch -> check-in -> Pull request (code merge) -> merge into release -> release is built (e.g on azure or locally) -> deployed (again maybe from azure?) to test -> deployed to live.

    personal preferences would then dictate:

    1. when you deploy, you can have uSync automatically merge its changes, or you can have someone go to the back end and click report/import - to start with you might be more comfortable with the latter as you get a chance to see what is going to happen.

    2. you probably don't want dev content deploying to the live servers, you can turn off content and media syncing on the servers so only settings changes are pushed up.


    outrageous plug, uSync.Complete allows you to push/pull inside Umbraco so if you want to forgo the processes you can do it all via the UI. see https://www.youtube.com/watch?v=dPTgXE3m3QY&t=1s)

  • Nikhil 54 posts 166 karma points
    Feb 18, 2020 @ 09:16
    Nikhil
    0

    Is uSync and uSync.ContentEdition free for commercial use?

  • Kevin Jump 2342 posts 14889 karma points MVP 8x c-trib
    Feb 18, 2020 @ 09:19
    Kevin Jump
    2

    yes.

  • Nikhil 54 posts 166 karma points
    Mar 02, 2020 @ 15:28
    Nikhil
    0

    Hello Kevin. Is uSync.PeopleEdition free for commercial use?

Please Sign in or register to post replies

Write your reply to:

Draft