cookbook 'dashing', '~> 0.1.0'
dashing (1) Versions 0.1.0 Follow1
Installs/Configures dashing - http://shopify.github.io/dashing/
cookbook 'dashing', '~> 0.1.0', :supermarket
knife supermarket install dashing
knife supermarket download dashing
dashing Cookbook
Installs Dashing and configures dashboards to run as services.
Tested with Ubuntu 12.04.
License
MIT License
Requirements
In order to use the Dashing cookbook, you need to have Ruby installed, and some sort of JavaScript
engine.
Dashing is written in Ruby, and requires Ruby to run. In order to make your installation as
flexible as possible, the Dashing cookbook does not explicitly install Ruby; you can have a
system-wide ruby installed, or use rvm or
rbenv to install Ruby. If you are not using a globally
accessible version of ruby, or don't want to use the system default, then set
node["dashing"]["ruby_env"]
to a set of bash commands to set up your environment appropriately.
(e.g. `'source /etc/profile.d/rvm.sh && rvm use ruby-1.9.3-p385')
Dashing also requires a JavaScript framework installed, as it relies on
execjs to compile coffee-script
widgets. We recommend using node.js, but you can use whatever you like. As with Ruby, there exists
a node["dashing"]["js_env"]
attribute you can use to set up your javascript enviroment
(e.g. 'source /usr/local/src/nvm/nvm.sh && nvm use v0.8.16'
)
Attributes
dashing::default
<table>
<tr>
<th>Key</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr>
<tr>
<td><tt>["dashing"]["ruby_env"]</tt></td>
<td>String</td>
<td>Bash commands to set up ruby environemnt.</td>
<td><tt>""</tt></td>
</tr>
<tr>
<td><tt>["dashing"]["js_env"]</tt></td>
<td>String</td>
<td>Bash commands to set up js environemnt.</td>
<td><tt>""</tt></td>
</tr>
<tr>
<td><tt>["dashing"]["dashing_exec"]</tt></td>
<td>String</td>
<td>Used to explicitly locate the dashing executable..</td>
<td><tt>"dashing"</tt></td>
</tr>
<tr>
<td><tt>["dashing"]["user"]</tt></td>
<td>String</td>
<td>The user to run dashboards as.</td>
<td><tt>dashing</tt></td>
</tr>
<tr>
<td><tt>["dashing"]["group"]</tt></td>
<td>String</td>
<td>The group to run dashboards as.</td>
<td><tt>dashing</tt></td>
</tr>
<tr>
<td><tt>["dashing"]["service_type"]</tt></td>
<td>String</td>
<td>The service type to install dashboards as.</td>
<td><tt>"upstart" on ubuntu, "init.d" otherwise</tt></td>
</tr>
</table>
LWRPs
See "Usage" below for examples.
dashing_dashboard
Actions:
-
:nothing
- Standard do-nothing action. -
:create
- Creates a service which runs the given dashboard automatically at system startup. This will also runbundle
in the dashboard's directory. If the dashboard already is configured as a service,:create
will not restart it. -
:restart
- Like:create
, but this will always restart the service - handy if you're going to usenotifies
on whatever resource you're using to deploy your dashboard. -
:delete
- Stops and removes the service for a dashboard. This won't actually delete the directory the dashboard is stored in.
Attributes:
-
path
- The path to the dashboard (if not specified, the name of the resource is used.) -
port
- Optional - The port to run thethin
webserver on. Note that dashing has no security, so some sort of firewall is recommended. Defaults to8080
. -
service_type
- Optional - Defaults tonode["dashing"]["service_type"]
, although you can use this if, for some crazy reason, you want some of your dashboards to be managed by upstart, and some by init.d.
Usage
Including dashing
in your node's run_list
will install Dashing:
{ "name":"my_node", "run_list": [ "recipe[dashing]" ] }
This cookbook also provides the dashing_dashboard
LWRP for setting up dashboards as system
services:
# Install dashing
include_recipe 'dashing'
# Fetch our dashboard from git
git "/opt/dashing/my_dashboard" do
repository "git://github.com/benbria/dashboard.git"
reference "master"
action :sync
end
# Configure the dashboard as a service.
dashing_dashboard "/opt/dashing/my_dashboard" do
action :restart
port 9090
end
Contributing
Fork and pull request, please! :)
License and Authors
Authors:
* Jason Walton
Dependent cookbooks
This cookbook has no specified dependencies.
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
Collaborator Number Metric
0.1.0 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.1.0 failed this metric
FC021: Resource condition in provider may not behave as expected: dashing/providers/dashboard.rb:206
FC064: Ensure issues_url is set in metadata: dashing/metadata.rb:1
FC065: Ensure source_url is set in metadata: dashing/metadata.rb:1
FC066: Ensure chef_version is set in metadata: dashing/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: dashing/metadata.rb:1
FC069: Ensure standardized license defined in metadata: dashing/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: dashing/providers/dashboard.rb:165
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.1.0 passed this metric
Testing File Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.1.0 failed this metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
0.1.0 failed this metric
FC021: Resource condition in provider may not behave as expected: dashing/providers/dashboard.rb:206
FC064: Ensure issues_url is set in metadata: dashing/metadata.rb:1
FC065: Ensure source_url is set in metadata: dashing/metadata.rb:1
FC066: Ensure chef_version is set in metadata: dashing/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: dashing/metadata.rb:1
FC069: Ensure standardized license defined in metadata: dashing/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: dashing/providers/dashboard.rb:165
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
0.1.0 passed this metric
Testing File Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.1.0 failed this metric
FC064: Ensure issues_url is set in metadata: dashing/metadata.rb:1
FC065: Ensure source_url is set in metadata: dashing/metadata.rb:1
FC066: Ensure chef_version is set in metadata: dashing/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: dashing/metadata.rb:1
FC069: Ensure standardized license defined in metadata: dashing/metadata.rb:1
FC085: Resource using new_resource.updated_by_last_action to converge resource: dashing/providers/dashboard.rb:165
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
0.1.0 passed this metric
Testing File Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
0.1.0 failed this metric
0.1.0 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number