Trinidad sandbox extension ====== # DESCRIPTION Trinidad's management console and REST api. This extension adds a management console to a Trinidad's instance moreover a rest api to access the applications running on top of it. # INSTALL jruby -S gem install trinidad_sandbox_extension # CONFIGURATION The extension has to be added within the section "extensions" into the Trinidad's configuration file: --- extensions: sandbox: This extension is also a Sinatra web application running on top of Trinidad, so any application configuration parameter is also valid here. For instance, we can modify the context path where is running the console: --- extensions: sandbox: context_path: management # by default the context path is sandbox It also supports basic authentication, we'll have to specify the username and password within our section: --- extensions: sandbox: username: manager password: XXXXXXX We can also use the console in readonly mode, so users can see the applications deployed but they cannot deploy new ones or modify them: --- extensions: sandbox: readonly: true # FEATURES The console as well as the REST api allow to list all the applications managed by that Trinidad's instance and start/stop them. By security reasons the sandbox application is not listed nor can be stopped. # GIT DEPLOYMENT The sandbox console also allows to deploy new applications into Trinidad via Git. By default it uses ssh keys to access to the repository with the user `git`. We can also use git hooks to deploy applications via a POST-Receive callback. In this case we use a token for authentication that must be set in the configuration, then we'll use an url like we show bellow in our hook: --- extensions: sandbox: deploy_token: ULTRA_SECRET_TOKEN POST-Receive url: http://host/sandbox/deploy?deploy_token=ULTRA_SECRET_TOKEN If we want to let users to deploy applications in public git repositories we can also disable the ssh authentication with the option `git_ssh`: --- extensions: sandbox: git_ssh: false # TODO This can be the starting point to a real management console, we could modify application parameters, show statistics... Any improvement or redesign in the UI is welcome.
Sandox console for Trinidad. It allows to manage the applications deployed on Trinidad.