herogate

command module
v0.0.0-...-b748cd6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2018 License: MIT Imports: 4 Imported by: 0

README

Herogate

GitHub release MIT License

Heroku + AWS Fargate = Herogate 🚀 Deploy and manage containerized applications like Heroku on AWS.

Overview

Herogate wraps management services on AWS and provides a Heroku like interface. All updates are done via CloudFormation, including targeting CodePipleline, CodeBuild, AWS Fargate, CodeCommit etc.

When pushing the new source code to CodeCommit, the Pipeline executes and a new image is built on CodeBuild. Finally, CloudFormation updates Fargate's service with the created image.

For details, you can see internal section in the documentation.

Installation

Currently, you need to build from the source code when installing.

$ go get -d github.com/wata727/herogate
$ cd $GOPATH/src/github.com/wata727/herogate
$ make install

Production Ready?

No. This is a highly experimental project. It should not be used in a production environment.

Currently, we don't provide a migration path from the old version. This means that you cannot bump up version without downtime.

Quick Start

1. Create an app

You can create an app on AWS by the create command:

$ herogate create your-first-app
Creating app... 0%

This process takes about 5 minutes. After that, the remote repository is automatically added locally as herogate.

$ git remote -v
herogate ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/your-first-app (fetch)
herogate ssh://git-codecommit.us-east-1.amazonaws.com/v1/repos/your-first-app (push)
2. Open the app

You can see the created app via browser.

$ herogate open

Congratulations! 🎉 Your first app is now available.

3. Create your Procfile

You can run arbitrary containers by creating Procfile.

$ cat Procfile
web: bundle exec rails server
worker: bundle exec rake jobs:work
4. Deploy new app

You can easily deploy new app with git push.

$ git push herogate master

Deployment logs can be seen with herogate logs. Unlike Heroku, git push is completed soon.

$ herogate logs

Usage

Please check the documentation for details.

Developing

This project requires Go 1.9 or higher. You can build and install with make install.

$ make install

Author

Kazuma Watanabe

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
api
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL