Fast and Easy Continuous Deployment Customization with StriderCD

06 May 2013

Continuous deployment in and of itself doesn’t solve all our development problems. Any continuous deployment solution obviously requires customization and integration with existing tools and services. However, it’s rarely ever a simple matter to drop in a hosted CD solution. What if it could be easy, though? That’s exactly what we at FrozenRidge LLC are trying to do with StriderCD, which is our Open Source continuous integration and deployment server, written entirely in Node.js.

What is StriderCD?

Strider is unique because it focuses on continuous deployment, not just continuous integration. We believe that this focus on CD makes the whole development process easier from beginning to end because continuous deployment allows you to get better, more useful feedback. More feedback means a faster development cycle, as well as fewer issues that need to be resolved at the end of a project.

StriderCD is similar to Travis and Jenkins, but we’ve tried to improve upon those platforms by making Strider highly flexible and extensible. With greater flexibility comes better functionality and a wider range of use cases. While both Jenkins and Travis have their own benefits, they’re not very well-suited to small teams that need the flexibility to change gears at a moment’s notice. After all, just looking at the Jenkins documentation is a trial in human patience.

With Strider, all you need is a grasp of JavaScript and Node.js, and MongoDB on your machine. From that point, installing Strider is a simple matter of running npm install strider. After that, all you have left to do is configure Strider for your project. Strider extensions come in several types (webapp, worker, and template), which you can learn more about over at the GitHub docs for our Strider Extension Loader.

The Benefits of StriderCD

One of the major benefits of Strider is that it doesn’t require learning new tools or languages, which we see as a huge improvement over the majority of testing solutions available right now. Since Strider is written in JavaScript, all you really need is the ability to write in JavaScript. Where web applications are concerned, JS is essentially a universal language at this point, and it’s perfect for event-driven programming.

Another benefit is the ability to infinitely extend and customize Strider to whatever specifications you require through the use of JavaScript plugins. Strider currently has a ready-to-use library of plugins, such as our strider-custom plugin that provides support for custom prepare, test, and deploy phases. As long as you know JS, you can also write and install your own plugins easily in order to extend Strider’s capabilities. Strider’s plugins are NPM modules as well, which also gives you the built-in community and support surrounding npmjs.org.

When we say that Strider is completely customizable, we mean it in every possible sense. There’s no limit to the types of plugins you can create and install. Strider doesn’t just give you control over the back-end--you have full access to front-end customization as well. As long as you can imagine it, you can create it in Strider. For more on that subject, check out our recent blog post, “Custom Testing and Deployment Dashboards in JavaScript with StriderCD.”

Getting Started with StriderCD

If you’d like to learn more about Strider, you can view all of our work over at GitHub, including all the JavaScript plugins that we’ve created to date. You can also head over to the StriderCD site to view our demo video and take a look at our paid plans for Hosted Strider if you’d rather not host it yourself (plans starting at $49/month).

As always, if you’re looking for help with your test, build, or deployment system, send us an email at hello@frozenridge.co. We’re always happy to talk code!