Firstly, the most important news, we've just released Ruby 2.2.0 and Node 0.12.0 on the platform. You can start using these right now.

The rest of this post is a little bit technical, for those who like to understand our platform works and some changes we're making. If you're not too interested and just want things to work, you can stop reading now.

Before I begin, I should explain a little bit of Viaduct terminology.

  • A stack is the environment which your application runs within - think of it like an operating system. We only have one Stack on Viaduct, we call it the Universal stack.

  • A platform is a language which your application needs and that we should make available within the stack. Viaduct has a number of platforms, for example PHP 5.3, Ruby 2.1.5, Node.js 0.10 and more!

Hello Atom

Today we've launched a new stack on the Viaduct platform. We call this the Atom stack. This stack is based on Ubuntu 14.04 and includes a number of development libraries and tools which applications need to run on a regular basis.

When we launched Viaduct, we had a single stack which bundled together all the platforms we offered and each time we wanted to release a new platform, we had to create a new stack. This was a little labour-intensive and we needed to find a way to speed up the process so we can always offer the latest platforms as soon as possible after they're released.

Unlike the Universal stack, the Atom stack is just a barebones stack which doesn't include any of platforms. Instead of installing platforms into the stack itself, we simply create package archives for all the platforms we want to support. When you ask to use any of these, we download the package and make it available to your application's processes. Simple.


One of the biggest benefits of this is that you can now choose multiple platforms per application. If you've got an app which uses Ruby and Node - no problem. If you need a little bit of PHP while you're running a Python app - Bob shall be your uncle.

What should I do now?

You don't have to do anything. All the platforms which were available on the Universal stack are still there and you can continue to use them.

If you'd like to update to the new Atom stack and benefit from multiple platforms per app, you can choose one of the new Atom platforms.

  1. Open up your application in myViaduct
  2. Select Settings and then General.
  3. The Platform menu is now split into sections for each stack. Just choose a new platform from the Atom section. Once you've chosen an Atom platform and saved, you'll be able to add secondary platforms from the same page.
  4. Re-deploy your application.


A few differences

There are a couple of differences which you may notice when switching to the Atom stack. These are all easy to deal with though.

  • The Ruby stack used to provide access to Node.js however on Atom, you need to manually add a Node.js platform as an additional platform if you need to use Node. You may need Node if you're using the Rails Asset Pipeline and need to compile assets when deploying.

  • The Node.js stack used to provide access to Ruby. As above, you need to add an additional Ruby platform to your application to allow.

  • The PHP stack no longer includes Ioncube. If you want to use Ioncube, you can add install yourself in the build phase or bundle the loaders with your application.

If you've got any questions about any of this, do feel free to drop us an e-mail.

Tell us how you feel about this post?