Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Extension to allow manage the applications deployed on Trinidad, ala Tomcat manager but built with Sinatra
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Type||Name||Latest commit message||Commit time|
|Failed to load latest commit information.|
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