This website recently got a major rebuild; if you're missing something, let Lorna know.

    Tag: deployment


  1. Amazon Lambda Deployment Workflow For Alexa Skill


    I mentioned in my post about creating a new skill for Alexa that I found the workflow quite clunky. Having tried a bit more and bugged a few people to find out how they hadn't killed anyone trying to develop with a workflow like this, I have some tips to share!

    Read more

  2. Taking on a Database Change Process


    I wrote recently about deployment and I got some followup questions about managing database changes when you've got multiple versions of code hanging around.

    There are two things you need to come to terms with:

    • There is no silver bullet

    • Rigid process is required

    Read more

  3. We Don't Know Deployment: A 4-Step Remedy


    Someone emailed me recently, having read my book and wanting some advice. Here's a snippet of his email:


    So here's my problem.
    We dont know deployment. We work from same copy on one test server through ftp and then upload live on FTP.

    We have some small projects and some big collaborative projects.

    We host all these projects on our local shared computer which we call test server.
    All guys take code from it and return it there. We show our work to clients on that machine and then upload that work to live ftp.

    Do you think this is a good scenario or do we make this machine a dev server and introduce a staging server for some projects as well?

    I wrote him a reply with some suggestions (and my consulting rate) attached, and we had a little email exchange about some improvements that could fit in with the existing setup, both of the hardware and of the team skills. Then I started to think ... he probably isn't the only person who is wondering if there's a better way. So here's my advice, now with pictures!

    Read more

  4. Apache Config: .htaccess or Virtual Hosts?


    How to set apache configuration for your web projects? Some settings have to be in the main apache config or in a virtual host, but for many others you have two good choices; either use an `.htaccess <http://httpd.apache.org/docs/2.2/configuring.html#htaccess>`__ file, or …

    Read more

  5. Idiot-Proof Deployment with Phing


    disclaimer: I am not underestimating the universe's ability to produce idiots, the point I'm trying to make is that I haven't managed to make any deploy mistakes using this approach. Yet.

    Once upon a time, a long time ago, I went onto a conference stage for the very first time and said that I thought I might be the world's ditsiest PHP developer. I actually still think that is pretty true, and if you work with me then you will know that I mostly break and fix things in approximately equal measure. With this in mind, when I launched my own product recently (BiteStats, a thing to automatically email you a summary of your analytics stats every month), I knew that I would need a really robust way of deploying code. I've been doing a few different things for a few years, and I've often implemented these tools with or for other organisations, but I don't have much code in production in my own right, weirdly. I decided Phing was the way to go, got it installed, and worked out what to do next.

    Read more

  6. Script for Database Patching at Deploy Time


    I've written before about a simple way of patching database versions and there's a much more comprehensive article from Harrie on TechPortal as well. I often find though that projects with patching strategies are missing the scripts to apply these automatically when the code is deployed, so I thought I'd share mine.

    My current project (BiteStats, a simple report of your google analytics data) uses a basic system where there are numbered patches, and a patch_history table with a row for every patch that was run, showing the version number and a timestamp. When I deploy the code to production, I have a script that runs automatically to apply the patches.

    Read more

  7. One-Step Symlink Switch


    This is a trick I use when deploying websites so I thought I'd post it here for posterity. Actually, technically I stole it from someone else but for now let's pretend it's mine (thanks @__kb!)

    When I deploy an application, which is almost invariably a PHP application, I like to …

    Read more