Intro¶
The main idea behind Jeto is to deploy full vagrant machines on all environments. We had two main issues when we begun working on this :
- We could not have a global view of all the vagrant machines installed (global-status didn’t exist at the time)
- Having more than one sysadmin meant having a dedicated machine for this.
We then decided to build Vagrant-Control, now known as Jeto.
The word Ĵeto comes from the esperanto language, which means release. The esperanto language is a constructed language that aims to be political free and unite all people. We saw it fit to use a word in this language.
Ĵeto tries as much as possible to follow the main Unix philosophy : Do One Thing And It Well. For this reason Ĵeto breaks into 4 main modules:
- Ĵeto : the web application providing the nice UI
- nginx-api : python (flask) RESTful application creating/editing nginx sites and reloading nginx.
- htpasswd-api : python (flask) RESTful application creating/editing HTTPDigest password lists.
- vagrant-worker : daemon that runs vagrant commands (up, provision, destroy, etc.) and save results to redis. Also takes care of all the file operation (git clone, unarchive package).
For a complete description of every modules, see their specific pages: