Getting Started with Umbraco Courier 2.5

Home » ASP.NET MVC » Getting Started with Umbraco Courier 2.5
Umbraco Logo

I have recently been working on an Umbraco project, and have evaluated Courier in order to deploy changes from an internal test site to live.

While Courier does the job, I am not very impressed overall. There are a mass of missing links, and next to no information on the web on how to get started. So this is my record which hopeefully will help someone (and myself the next time I have to do this).

The only resource I could find on the web was a fairly amateur Youtube video on Courier, which wasn’t all that helpful. You can’t see whats on the screen just the back of peoples heads. It isn’t really worth watching, it just warns you that not all component types are supported. I was only looking to deploy content and media, so hopefully this warning doesn’t apply to me – it certainly worked out that way during testing.

This is the official Umbraco Courier 2.5 link, which has a lot of incomplete documentation and missing links at the time of writing.

So, on to my findings:

Firstly its necessary to install Courier on both test and live. I made two test sites on my local dev machine, localhost:1600 and localhost:1601. The idea being to deploy from 1600 to 1601. I then installed the Courier package on both of these sites. When asked to specify a location during installation I specified the other site, e.g. on 1600 I typed in localhost:1601. If I didn’t do this there appears to be no way to enter it later, you have to uninstall and re-install again.

When installed, Umbraco Courier gives you a new icon on the admin login, and also an additional option on the action menus within Umbraco. I will explain both methods below:

Deployment from the Content Tree

When logged on as admin, you choose the appropriate part of the tree and then click the Elipsis, then click Do Something Else.

Select Courier from Umbraco Content Tree

Select Courier from Umbraco Content Tree

You then choose “Courier” and the following page appears:

Deploying from Content Tree

Deploying from Content Tree

After some thinking, the following page appears:

Deploying from the Content Tree

Deploying from the Content Tree

Deployment from the Courier Menu

This is more complicated. From what I can tell (there are no video or other links available to tell me exactly how this is supposed to work, even the link from the Courier dashboard gives a 404), this is how its supposed to work:1. You create a revision.

Umbraco Courier Dashboard

Umbraco Courier Dashboard

2. When you create a revision, you have to specify what is in it. For us, choosing the appropriate Document content in the tree (or all documents) plus the correct level of dependancies was all that was required:

Selecting Content in Revision

Selecting Content in Revision

3. This is the revision page before you press “Package Selected” to create the revision:

Revision page before pressing "Package Selected"

Revision page before pressing “Package Selected”

4. Once it has been created you press Transfer to transfer it to the target machine:

Transfer to Target Server

Transfer to Target Server

5. Enter the target server from the drop down and press “Transfer”:

Press Transfer to copy to the Target Server

Press Transfer to copy to the Target Server

6. Log into the target server and find the revision in the Courier dashboard (or press Reload nodes if you are already logged in). Click on that revision, then click “Compare and Install”:

Installing on Target Server

Installing on Target Server

7. You then should press “Install Revision” to complete the process:

Press Install Revision to complete

Press Install Revision to complete

Things to Watch out For

  1. Firstly, I was unhappy about the sheer number of missing links everywhere I looked and lack of information generally. This is quite an important component for Umbraco because unless you are deploying to Azure and setting up Azure Staging as described in the link, you need something like this to be able to view your test site before going live.
  2. Secondly, it uses webservice technology and I have read warnings that large files may not transfer correctly and cause the process to crash. What can you do about this? Ensure your upload sizes are big enough on both sites, and transfer large files manually. It appears the Umbraco developers don’t know about how to reliably transfer large files using WCF, either by streaming or chunking the file into 64k blocks.
  3. I think the second process could be a lot easier, I don’t think my users are going to use it, because we don’t really want them logging onto the live site and accidentally making changes that then get overwritten (or risk transferring the wrong way).
  4. There is also a risk that certain data may not transfer and developer customisation is required to ensure this. This could be quite complex, especially for my customer, as they are using the Umbraco Hybrid Framework. Hopefully because they are using this and deploying deeper objects via Visual Studio, it might not be a problem, we will have to wait and see.
  5. Oh and then don’t get me started on the difficulties of getting the licence to install…

Maybe there is an opportunity for a product here that does a better job than this rather rough and ready product…

About Phil

I have been working as a software developer since 1983. This blog could have been called “From Fortran 77, C and Cobol to C# in 20 (not so) easy years”, but it doesn’t sound quite right somehow. Besides I’m talking about what’s happened since 2003, not before!

Leave a Reply

Your email address will not be published.


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">




Top Posts & Pages

Categories

Recent Posts

Recent Comments

Archives

Blogroll

  • Mike Cohn's Blog
  • Scott Hanselman's Blog
- mike@mountaingoatsoftware.com

Scrum teams have too many meetings is perhaps the most common criticism of Scrum. But is it valid? [...]

- mike@mountaingoatsoftware.com

Here are five key lessons I learned that were instrumental in my career. See if learning them could [...]

- mike@mountaingoatsoftware.com

A team’s sprints should be the same length every sprint. Here are four reasons why. [...]

- mike@mountaingoatsoftware.com

Read this special Halloween post about five things in agile transitions that are can seem as scary a [...]

- mike@mountaingoatsoftware.com

If you want to overcome problems and improve how you work with user stories, register now through Oc [...]

- Scott Hanselman

In 2016 and 2015 I made a list of best Christmas STEM Toys for kids! If I may say so, they are still [...]

- Scott Hanselman

I'm glad you have a 1080p 60fps accelerated graphics setup, but I'm old school. Impress me [...]

- Scott Hanselman

Visual Studio Code has a HUGE extension library. There's also almost two dozen very nice Azure [...]

- Scott Hanselman

I got an email this week asking how to download some of my Azure Friday video podcast videos from ht [...]

- Scott Hanselman

There's a couple of great utilities that have come out in the last few weeks in the .NET Core w [...]

Meta