1. Don’t listen to us, listen to our fans

    People seem to really love DeployButton. When we first created it for RailsRumble back in October, we didn’t fathom that it could strike such a chord with the continuous deployment crowd. Here’s just a quick review of what people have said about DeployButton since we’ve launched it:

    1 year ago  /  0 notes

  2. Niall O’Higgins on Making a tactile Deploy Button

    The following blog post is by Niall O’Higgins. Niall is an author and software developer. He wrote the book MongoDB and Python for O’Reilly and is also the developer of Strider, an open source continuous deployment platform. Twitter: @niallohiggins

    I went to the Voxer Node.JS hardware hack event over the weekend. Attendees were given access to Arduinos, bread boards and tons of sensors, LEDs, shields etc to build cool stuff. Some folks had existing projects (CNC machines, coffee roasters) which they brought and hacked on, while others such as myself brainstormed fun stuff.

    Knowledgable hardware hackers were on hand to give advice, teach about electronics, and generally help out.

    I had never done anything with Arduino before and so this was a great learning opportunity to see what is possible. I was very impressed by the Node.JS libraries people have developed. Johnny Five in particular was very easy to get up and running with.

    After getting my Arduino board talking to my laptop with Firmata and figuring out how to turn on LEDs with JavaScript, I decided to try to hack a physical “deploy button”. Folks often talk about making “push button” deploys so I figure why not try to implement a literal manifestation of it?

    My goal was to hook up an arcade button and two LEDs for status (one red, one green). When you press the deploy button, my laptop should kick off a deploy to Heroku and blink the red LED to indicate deploy-in-progress. Based on ultimate success or failure of the Heroku deploy, a green or red LED should then light solid.

    It turns out this is very easy to do with Arduino, Node.JS and Johnny Five. These really make it easy to do event-driven programming with hardware which fits quite naturally (e.g. on button press, do this) into JavaScript. The electronics and circuitry side are the most challenging, but I was fortunate to have access to awesome documentation, components and people which sped things up a lot.

    Here is a photo of the device: https://raw.github.com/niallo/arduino-deploybutton/master/deploybuttonbig.png

    You can see the full source to my app here: https://github.com/niallo/arduino-deploybutton/

    —— DeployButton team:
    Pretty cool work, Niall! We’re excited about builders in the Open source, arduino, and hardware hobbyist community creating awesome little hacks like this to improve continuous delivery for people… and maybe even make it a little fun. If you have a project that you’d like us to highlight, pass it on and we’d love to share it.w

    1 year ago  /  4 notes

  3. Now announcing BitBucket Support

    Since we started DeployButton about a month ago now, we’ve received tons of requests for supporting deploys with Atlassian BitBucket. For the uninitiated, BitBucket supports both Git and Mercurial Source code management tools.

    While we here at DeployButton and Lizi/Labs tend to use Git and Github, Bitbucket has some nice advantages to it. Currently, it has support for unlimited private repositories, which many small groups of developers take advantage of.

    If you are one of the 22,000 teams that rely on Bitbucket to get your work done, please consider using DeployButton as your continuous delivery tool.

    1 year ago  /  0 notes

  4. We now support Github Post-commit hooks

    We’ve received many requests from our users to add Github post commit hooks (and this is one of the ways that we’re using DeployButton to deploy our own projects). We’re proud to be part of the “continuous deployment" movement that’s changing software development in startups and agile enterprises all over.

    So without further ado, here are some instructions. This information is also located on the DeployButton wiki, available here.

    Add a Github Postcommit Hook

    What are webhooks?

    Webhooks were created to allow web applications to become more extensible, customizable, and ultimately more useful. Webhooks let you develop “instant” push notifications. A push notification is simply a HTTP POST, that is triggered by some action. In this case, the action is checking into a particular branch of your source code repository over at Github. In order to set webhooks for your repository, you need to be the owner (**administrator**) of the repository. Please check and make sure you are the admin on your repository before sending us a support ticket.


    • From your DeployButton Project page, click on “Integrations”: Click on integrations
    • Copy the URL provided in the modal box. Copy this URL
    • Visit the repository you’re trying to set up deploy hooks for in Github or your source code versioning tool.
    • From the left hand sidebar menu, select “Service Hooks”.
    • From the Available Service hooks, choose “Webhook URLs
    • Enter the correct Webhook URL from your DeployButton page.
    You’re all set to automatically deploy as soon as you’ve pushed to the correct branch of your repository that your DeployButton is set to.

    1 year ago  /  0 notes

  5. Winning RailsRumble 2012: Deploy Button

    We (@ashbhoopathy, @railsjedi, and @richlengsavath) won both the Public Favorite and 3rd place in this year’s Rails Rumble.  We are flattered and honored by the outpouring of community support for our simple idea.

    When we started building DeployButton, we wanted to scratch our own itch and solve for our own needs.   This summer, our team at Lizi decided that we needed a less expensive web host for our site(s).   Like many of you, we’re a fast moving consumer web team that likes to iterate and put lots of new things out to “Build”, “Measure”, and “Learn" to validate that we’re making something people want™.  

    Jacques, aka “@railsjedi”, created a really sweet system to power our continuous deployment, using Github, Linode, and Opscode Chef.   I’ll save the more technical post for later, but for the layperson, this essentially means that as soon as someone has committed working code into a master branch of a source code repository, it automatically gets deployed to the server, and the whole team is notified.  

    Our team relies on a few tools for group communication, one of them being Hipchat.   Hipchat allows for  deploy hooks that can notify us when different things happen, like code being checked in, and deploys starting/completing.   This is a great way for the team to 1) stay abreast of what’s going on with the code base, and 2) know which “application state” users are looking at in the event that an error occurs (Errors also have http hooks that notify us in the chat).  

    Little did we know, but the night that we finished and submitted our final version to the RailsRumble repo, we got to the front page of HackerNews.   Soon thereafter, we had over 15K visitors come to our site, and over 6K who’ve used the product already!  We knew then that our product had struck a nerve and might fulfill a need for a wide assortment of people: independent Wordpress builders, small-midsized web consulting shops, to weekend hobbyist Rails devs.

    Over the next few months, we’ll be improving DeployButton to have many creature comforts that we’d want to see in a product like this, since we need it anyway.  

    Follow along in our progress here, @DeployButton, and tweet to tell us how you use continuous deployment at your startups and enterprises.

    Oh, and if this is still “cool” to do, Like us on Facebook and we’ll let you know first about beta releases to our product :-)

    1 year ago  /  2 notes