- Uses latest Go
- Embedded realtime front-end
- Automatic multi-platform Github releases
- Compile your favourite command-line tools from the browser
Demo
https://gox.jpillora.com/
Install
BinariesSee the latest release
Source
$ go get -v github.com/jpillora/cloud-gox
Deploy
-
Click this button to deploy cloud-gox for free on Heroku
-
Optionally add HTTP authentication
-
Optionally add your Github authentication
Github web-hooks sent from the specified user tocloud-goxwill create a new Github release inside the source repository for specified tag and then each of the compiled binaries will be uploaded as release assets. Once you've setGH_USER/GH_PASSorGH_TOKENenvironment variables, you can setup any of your repositories for automatic releases:
- Go to
https://github.com/<username>/<repo>/settings/hooks - Click the
Add Webhookbutton - Set the
Payload URLtohttp://<cloud-gox-location>/hook(see optionalparamsbelow) - Again, click the
Add Webhookbutton - Now, pushing git tags will trigger a new release and your app will be cross-compiled and uploaded to Github
/hook?foo=bar). You can set:
- a
versionvarparameter to change the ldflags variable (defaults tomain.VERSION) - a
osarchparameter which provides a comma separated list of build platforms, each platform must be in the formos/arch - a
targetparameter which provides a comma separated list of each command-line tool within your package (e.g.target=cmd/foowill build<repo>/cmd/foo)
- Go to
Todo
- Run parallel builds
- Verify Github signed web-hooks
Notes
I've forked Heroku's Go buildpack in order to keep the local copy of the Go tools (Heroku's version keeps them only in the build cache).from https://github.com/jpillora/cloud-gox

No comments:
Post a Comment