I'm really excited and also really nervous
about today, as I officially announce the first public beta of
Courier 2.
Excited because I think we have something really awesome to show
you: a completely rewritten staging and deployment engine for
Umbraco, which can move any piece of functionality (content, media,
macros, templates, you name it) between multiple instances of
umbraco. Built to run outside of umbraco, and not depending on
umbraco's datalayer or HttpContext.
But I'm also nervous, because Courier 2 has been under
development for a long time, and I don't want to disappoint anyone,
or present something that is not done, so we could probably keep on
polishing and adding stuff to make it "just right"
But today I decided that a Beta is ready,
because what we have now, is alread kick-ass, it solves a ton of
really hard problems in regard to moving data back and forth
between installations and it does it in the safest possible way, it
will make your umbraco life so much easier. No more updating
directly on the live server because deployment was too hard, no
more missing types, css, or files, and no more time spend on going
through ever little damn change, to ensure that it works on the new
instance.
So today we launch the public beta, so we can get all
your valuable feedback to make this as stable and flexible as
possible.
What can I do with the beta?
First all, this is a real beta not a "google beta", it will
have bugs, it could even have bugs that wipe out your website or
make your site unstable, so do not use this without a backup, and
never ever on a live site, you been warned.
You can move any umbraco object from one location to another,
either by simply right-clicking the item in the tree UI and select
where you want to put it, or you can build an entire set of objects
you would like to move at once, currently called a "revision"
Now the neat part is that Courier 2 automatically detects
dependencies on which selected Item depends on, so if you for
example select a single content page courier will do this:
- Detect if page has a parent
- Detect if page has a document type
- Detect if page has a template
- Detect if page contains macros, links and
images
Courier will then do the same for all those dependencies and
their dependencies, so we end up with a pretty complex tree of
cross-references. When Courier installs these items on the new
instance, it will then go through this web of dependencies and make
sure they are all installed in the right order.
Whats missing?
Polish! and UI. There is a UI one in place now, but we are not
at all done, making that as clean as we want it. So still a lot to
do there.
There are still a couple of internal look-ups in the different
managers that needs some refactoring, but nothing that will affect
you, it's more to do with making the internals consistent and avoid
any "hacks".
Under the hood...
...Is a ton of public APIs so you can actually write your own
deployment client, look in the developer docs on the build server,
and in the Sample console application source which is up there as
well.
Documentation on how to use these things to the max are under
way, and will be announced as soon as possible.
Download docs here
Report bugs
We need to get the bugs and feedback reported, this is the only
way that we can improve the stability of Courier 2, so it can run
in any setting and fit into any need.
You can report bugs from the Courier UI, or by going to this page.
Download beta builds
The beta is released on our build-server
so it will get daily updates. Chances are that, if you file a bug
report, it will be fixed the next day. Simply keep an eye on the
Courier dashboard in Umbraco which lists the most recent changes
(also
available here)
Download courier beta here