Deploying Go to AppEngine on Codeship.io

I ran into a bunch of trouble over the past few days trying to get codeship.io to deploy a Go app I was playing around with. To save you some debugging time, I found that the appcfg.py codeship uses deploying App Engine Apps (at least the Go app I was using) is incorrectly coming from the Python bundle of GAE utitilies, not the Go bundle. This can result in unexpected dependency errors like:

 --- begin server output ---
 Compile failed:
 2014/10/13 21:59:55 go-app-builder: build timing: 16g (38ms total), 0gopack (0 total), 06l (0 total)
 2014/10/13 21:59:55 go-app-builder: failed running 6g: exit status 1
 main.go:8: can't find import: "github.com/gorilla/mux"
 --- end server output ---
 04:59 AM Rolling back the update.
 Error 422: --- begin server output ---
 --- end server output ---

The fix here is pretty easy. Add a line like export PATH=/home/rof/appengine/go_appengine:$PATH to your Setup Commands via the Settings page. If you ssh into your debug box (which is a really cool feature) you’ll see that $PATH lists the python_appengine folder first, which means the appcfg.py from that folder will take precedence over any others like the second one which is better suited for Go.

Overall, the UI that codeship provides is really nice and I liked the thought of not having to configure my deployment commands but in practice that didn’t work our very well. It would have been useful if their documentation was a bit more transparent what went into the “Updating your Google App Engine application” step. Now to sort out why codeship is trying to healthcheck the non-existent root URL of my application…

One thought on “Deploying Go to AppEngine on Codeship.io

  1. Hey there,

    Wilson from Codeship here! First, I wanted to thank you for writing an article about Codeship and letting your readers know about our product.

    It’s always awesome to see us mentioned in blog articles and give insight for people who’re unfamiliar with Codeship. With that being said, I noticed one instance of a broken link in your article that redirects to codeship.io (our old url) instead of codeship.com (our current url). It would be extremely helpful if you could go back into your article and update the broken homepage link.

    Let me know if you have any questions I can answer for you.

    Best,
    Wilson

Leave a Reply to Wilson Cancel reply

Your email address will not be published. Required fields are marked *