Planet-Express
Planet Express is a command line utility written in Ruby to deploy code from git repositories.
This project is under developpement. Consider this project not production-ready.
Requirements
- Git > 2.x
- Ruby > 2.x
Installation
For now you can clone this repository and build the gem
git clone [email protected]:yadomi/planet-express.git && cd planet-express
bundle install
rake install
Usage
Initialize your projet with a
Planetfile
:$ planet init
This command created a
Planetfile
at the root of the projet. You may want to edit this file to adapt to your deployment stack.Setup on the remote server:
$ planet setup preprod
This command clone the repo on the remote host to the desired location.
Deploy !
$ planet deploy preprod
This command pull the lastest revision of the specified branch on the remote host and then run hooks in deploy/.
FAQ
TODO
Statut | Task |
---|---|
☑ | Add todos |
☑ | Write tests |
☐ | Keep old releases |
☐ | Auto rollback when deploy fail |
Planetfile API
Planet.configure
config.branch
: the default branch to pull from the repository (default: master)config.repository
: the Git SCP-style URI repository URLconfig.key
: the private SSH key used to connect to the repository (eg: GitHub)
Planet.target
server.ssh
: the deployement target using SCP Style URI.The last part is the path where you want to deploy your project. You can use absolute (eg: /path/to/deploy/location) or or relative path. This mean that deploy/location is the same than /home/ user/deploy/location or ~/deploy/location
server.key
: The private SSH key used to connect to the server