cookbook 'cabot', '~> 1.1.0', :supermarket
cabot (2) Versions 1.1.0 Follow0
Installs and configures Cabot
cookbook 'cabot', '~> 1.1.0'
knife supermarket install cabot
knife supermarket download cabot
cabot-cookbook
Cabot is a self-hosted watchdog for your websites and infrastructure. This cookbook installs and configures a basic setup.
Supported Platforms
Made with love for Ubuntu (12.04, 14.04)
Dependencies
This cookbook depends on community versions of the following cookbooks:
- build-essential
- git
- nginx
- nodejs
- npm
- python
- redis
Additionally, it will install Ruby from default APT repos, and Foreman.
Attributes
All keys below live under the <tt>cabot</tt> namespace. Eg. <tt>user</tt> is available as <tt>node[:cabot][:user]</tt>
<table> <tr> <th>Key</th> <th>Type</th> <th>Description</th> <th>Default</th> </tr> <tr> <td><tt>user</tt></td> <td>String</td> <td>User to run Cabot as</td> <td><tt>cabot</tt></td> </tr> <tr> <td><tt>group</tt></td> <td>String</td> <td>Group to run Cabot as</td> <td><tt>cabot</tt></td> </tr> <tr> <td><tt>home_dir</tt></td> <td>String</td> <td>Home dir</td> <td><tt>/opt/cabot</tt></td> </tr> <tr> <td><tt>log_dir</tt></td> <td>String</td> <td>Log dir</td> <td><tt>/var/log/cabot</tt></td> </tr> <tr> <td><tt>repo_url</tt></td> <td>String</td> <td>GitHub repository to pull Cabot code from.</td> <td><tt>https://github.com/arachnys/cabot.git</tt></td> </tr> <tr> <td><tt>environment</tt></td> <td>String</td> <td>Sets the environment type (development or production). This sets whether to use SQLite or PostgreSQL databases.</td> <td><tt>production</tt></td> </tr> <tr> <td><tt>database_url</tt></td> <td>String</td> <td>Sets the Django database URL</td> <td><tt>sqlite:///cabot.db</tt></td> </tr> <tr> <td><tt>port</tt></td> <td>Integer</td> <td>Sets the port on which Cabot UI listens for requests</td> <td><tt>5000</tt></td> </tr> <tr> <td><tt>admin_email</tt></td> <td>String</td> <td>Emails sent from Django are sent to</td> <td><tt>you@example.com</tt></td> </tr> <tr> <td><tt>from_email</tt></td> <td>String</td> <td>From address to send emails with</td> <td><tt>cabot@example.com</tt></td> </tr> <tr> <td><tt>ical_url</tt></td> <td>String</td> <td>URL of calendar to synchronise rota with</td> <td><tt>http://www.google.com/calendar/ical/example.ics</tt></td> </tr> <tr> <td><tt>celery_broker_url</tt></td> <td>String</td> <td>Django setting</td> <td><tt>redis://:yourrediskey@localhost:6379/1</tt></td> </tr> <tr> <td><tt>django_secret_key</tt></td> <td>String</td> <td>Django setting</td> <td><tt>2FL6ORhHwr5eX34pP9mMugnIOd3jzVuT45f7w430Mt5PnEwbcJgma0q8zUXNZ68A</tt></td> </tr> <tr> <td><tt>graphite_api_url</tt></td> <td>String</td> <td>Hostname of Graphite server instance</td> <td><tt>http://graphite.example.com/</tt></td> </tr> <tr> <td><tt>graphite_username</tt></td> <td>String</td> <td>Username used to authenticate with Graphite</td> <td><tt>username</tt></td> </tr> <tr> <td><tt>graphite_password</tt></td> <td>String</td> <td>Password used to authenticate with Graphite</td> <td><tt>password</tt></td> </tr> <tr> <td><tt>hipchat_room_id</tt></td> <td>String</td> <td>Hipchat room ID (find it at https://hipchat.com/admin/rooms)</td> <td><tt>123456</tt></td> </tr> <tr> <td><tt>hipchat_api_key</tt></td> <td>String</td> <td>Hipchat API key (get one at https://hipchat.com/admin/api)</td> <td><tt>your_hipchat_api_key</tt></td> </tr> <tr> <td><tt>jenkins_api_url</tt></td> <td>String</td> <td>Jenkins server URL</td> <td><tt>https://jenkins.example.com/</tt></td> </tr> <tr> <td><tt>jenkins_username</tt></td> <td>String</td> <td>Username used to authenticate with Jenkins (optiona/td> <td><tt>username</tt></td> </tr> <tr> <td><tt>jenkins_password</tt></td> <td>String</td> <td>Password used to authenticate with Jenkins</td> <td><tt>password</tt></td> </tr> <tr> <td><tt>smtp_host</tt></td> <td>String</td> <td>SMTP hostname to use for sending emails</td> <td><tt>email-smtp.us-east-1.amazonaws.com</tt></td> </tr> <tr> <td><tt>smtp_username</tt></td> <td>String</td> <td>SMTP username</td> <td><tt>username</tt></td> </tr> <tr> <td><tt>smtp_password</tt></td> <td>String</td> <td>SMTP password</td> <td><tt>password</tt></td> </tr> <tr> <td><tt>smtp_port</tt></td> <td>String</td> <td>SMTP port</td> <td><tt>465</tt></td> </tr> <tr> <td><tt>twilio_account_sid</tt></td> <td>String</td> <td>Your Twilio account SID</td> <td><tt>your_twilio_account_sid</tt></td> </tr> <tr> <td><tt>twilio_auth_token</tt></td> <td>String</td> <td>Your Twilio auth token</td> <td><tt>your_twilio_auth_token</tt></td> </tr> <tr> <td><tt>twilio_outgoing_number</tt></td> <td>String</td> <td>Your Twilio number for outbound calls</td> <td><tt>+1234567890</tt></td> </tr> <tr> <td><tt>www_http_host</tt></td> <td>String</td> <td>Used for pointing links back in alerts, etc.</td> <td><tt>localhost</tt></td> </tr> <tr> <td><tt>www_scheme</tt></td> <td>String</td> <td>Which URL scheme to use (http or https)</td> <td><tt>http</tt></td> </tr> <tr> <td><tt>www_port</tt></td> <td>Integer</td> <td>Port to set reverse proxy on</td> <td><tt>80</tt></td> </tr> </table>
Usage
cabot::default
Include cabot
in your node's run_list
:
{
"run_list": [
"recipe[cabot::default]"
]
}
cabot::proxy
Include cabot::proxy
in your node's run_list
to have Nginx as a reverse proxy to Cabot on port 80.
Contributing
- Fork the repository on Github
- Create a named feature branch (i.e.
add-new-recipe
) - Write your change
- Write tests for your change (if applicable)
- Run the tests, ensuring they all pass
- Submit a Pull Request
License and Authors
Author:: Rafael Fonseca (rafael.magu@gmail.com)
Dependent cookbooks
ubuntu ~> 1.1.6 |
redis ~> 3.0.4 |
python ~> 1.4.6 |
npm ~> 0.1.2 |
nodejs ~> 1.3.0 |
nginx ~> 2.7.4 |
git ~> 4.0.2 |
build-essential ~> 2.0.4 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
0.1.0
Initial release of cabot
-
Enhancements
- an enhancement
-
Bug Fixes
- a bug fix
Collaborator Number Metric
1.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
1.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
1.1.0 failed this metric
FC009: Resource attribute not recognised: cabot/recipes/default.rb:50
FC064: Ensure issues_url is set in metadata: cabot/metadata.rb:1
FC065: Ensure source_url is set in metadata: cabot/metadata.rb:1
FC066: Ensure chef_version is set in metadata: cabot/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: cabot/metadata.rb:1
Run with Foodcritic Version 14.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
1.1.0 passed this metric
Publish Metric
1.1.0 passed this metric
Supported Platforms Metric
1.1.0 failed this metric
cabot should declare what platform(s) it supports.
Testing File Metric
1.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
1.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
1.1.0 failed this metric
1.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
1.1.0 failed this metric
FC009: Resource attribute not recognised: cabot/recipes/default.rb:50
FC064: Ensure issues_url is set in metadata: cabot/metadata.rb:1
FC065: Ensure source_url is set in metadata: cabot/metadata.rb:1
FC066: Ensure chef_version is set in metadata: cabot/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: cabot/metadata.rb:1
Run with Foodcritic Version 14.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
1.1.0 passed this metric
Publish Metric
1.1.0 passed this metric
Supported Platforms Metric
1.1.0 failed this metric
cabot should declare what platform(s) it supports.
Testing File Metric
1.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
1.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
1.1.0 failed this metric
FC064: Ensure issues_url is set in metadata: cabot/metadata.rb:1
FC065: Ensure source_url is set in metadata: cabot/metadata.rb:1
FC066: Ensure chef_version is set in metadata: cabot/metadata.rb:1
FC067: Ensure at least one platform supported in metadata: cabot/metadata.rb:1
Run with Foodcritic Version 14.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
1.1.0 passed this metric
Publish Metric
1.1.0 passed this metric
Supported Platforms Metric
1.1.0 failed this metric
cabot should declare what platform(s) it supports.
Testing File Metric
1.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
1.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
1.1.0 passed this metric
1.1.0 failed this metric
cabot should declare what platform(s) it supports.
Testing File Metric
1.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
1.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
1.1.0 failed this metric
1.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