Automated software delivery as fast and easy as possible 🚀
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/ISSUE_TEMPLATE Update issue templates Aug 29, 2018
commands san to sane Dec 16, 2018
config san to sane Dec 16, 2018
log from astrocorp to bloom Sep 30, 2018
providers fixed typos Oct 4, 2018
testdata aws_eb: Start the aws_eb provider Sep 13, 2018
version update version Dec 16, 2018
.flint.toml from astrocorp to bloom Sep 30, 2018
.gitignore aws_eb: Start the aws_eb provider Sep 13, 2018
.rocket.sane san to sane Dec 16, 2018
.travis.yml release Sep 30, 2018
Dockerfile from astrocorp to bloom Sep 30, 2018
LICENSE.txt docs: Add LICENCE.txt Aug 29, 2018
Makefile move documentation to bloom42/opensource Nov 30, 2018
README.md san to sane Dec 16, 2018
ci.sh from astrocorp to bloom Sep 30, 2018
go.mod san to sane Dec 16, 2018
go.sum san to sane Dec 16, 2018
install.sh from astrocorp to bloom Sep 30, 2018
main.go from astrocorp to bloom Sep 30, 2018

README.md

rocket logo

Rocket

Automated software delivery as fast and easy as possible


GoDoc GitHub release Build Status Docker image

rocket is the D in CI/CD: It allows to easily deliver software to a large range of providers from any CI/CD pipeline.

  1. Installation
  2. Docker image
  3. Available providers
  4. Usage
  5. Documentation
  6. Roadmap

Installation

Using go (nightly)

$ go get -u github.com/bloom42/rocket

Latest

curl -sSf https://raw.githubusercontent.com/bloom42/rocket/master/install.sh | sh

Binary releases

https://github.com/bloom42/rocket/releases/latest

Docker image

bloom42/rocket

Available providers

Provider Status Documentation
AWS Elastic Beanstalk aws_eb docs
AWS S3 aws_s3 docs
Custom script script docs
Docker docker docs
Google Firebase firebase 🕐 -
Google Cloud Storage gcs 🕐 -
GitHub releases github_releases docs
Heroku heroku docs
Netlify netlify 🚧 -
NPM npm 🕐 -
SCP scp 🕐 -
SFTP sftp 🕐 -
SSH ssh 🕐 -
ZEIT Now zeit_now docs

✔ = Done 🚧 = in progress 🕐 = planned

Usage

rocket use SANE as configuration format.

Go to your project's root directory then

$ rocket init # create a configuration .rocket.sane file with default configuration
# edit the file with the desired configuration
$ cat .rocket.sane
description = "This is a configuration file for rocket: Deploy software as fast and easily as possible. See https://github.com/bloom42/rocket"

github_releases = {
  assets = [
    "dist/*.zip",
    "dist/rocket_*_sha512sums.txt"
  ]
}

docker = {
  images = [
    "bloom42/rocket:$VERSION",
    "bloom42/rocket:latest"
  ]
}
$ rocket # to deploy

See https://github.com/bloom42/rocket/blob/master/.rocket.sane for an example using both the github_releases and the docker providers.

Help

$ rocket help
Automated software delivery as fast and easy as possible. rocket is the D in CI/CD. See https://github.com/bloom42/rocket

Usage:
  rocket [flags]
  rocket [command]

Available Commands:
  help        Help about any command
  init        Init rocket by creating a .rocket.sane configuration file
  version     Display the version and build information

Flags:
  -c, --config string   Use the specified configuration file (and set it's directory as the working directory
  -d, --debug           Display debug information
  -h, --help            help for rocket

Use "rocket [command] --help" for more information about a command.

Documentation

See https://opensource.bloom.sh/rocket

Roadmap

See https://github.com/bloom42/rocket/projects/2