Git Product home page Git Product logo

giraffe's Introduction

Giraffe Chef Cookbook

Description

Chef cookbook for Giraffe, a graphite dashboard with a long neck.

Usage

This cookbook provides a Giraffe provider which for you to include in your recipes. The Giraffe provider installs and configures the Giraffe application. You will need to configure a webserver to serve the application.

Requirements

Chef

Tested on 11.10.4 but newer and older versions (of 11) should work just fine. File an issue if this isn't the case.

Platform

The following platforms have been tested with this cookbook, meaning that the recipes run on these platforms without error:

  • ubuntu (12.04)
  • centos (6.4)

Please report any additional platforms so they can be added.

Cookbooks

This cookbook depends on the following external cookbooks:

Recipes

default

This recipe installs git, a prerequisite for installing giraffe.

Attributes

  • node[:giraffe][:revision] - git reference (tag/branch/commit) to checkout (defaults to "1.1.0")
  • node[:giraffe][:repository] - uri of git repository to checkout (defaults to "https://github.com/kenhub/giraffe.git")

Resources and Providers

giraffe_instance

Actions

Action Description Default
create Installs Giraffe via git, configures dashboards.js Yes

Attributes

Attribute Description Default Value
path Name attribute: The path for the Giraffe installation. nil
graphite_url The url of the Graphite server for the Giraffe instance to use. nil
dashbords An array of configuration hashes which represent dashboards. []
git_repository The git repository hosting Giraffe source code. nil
git_revision The git revision specifying the revision of Giraffe code to checkout. nil
template_cookbook The cookbook to use when specifying a dashboards.js template. giraffe
template_source The name of the dashboards.js template file in the template_cookbook. dashboards.js.erb

Examples

giraffe_instance "/srv/www/giraffe" do
  graphite_url "http://127.0.0.1"
  dashboards [
    {
      :name => "test",
      :refresh => 5000,
      :description => "test dashboard",
      :metrics => [
        {
          :alias =>  "test",
          :target => "metrics.test.tests",
          :description => "Example metric",
          :summary => "sum",
          :summary_formatter => "d3.format(\",f\")"
        }
      ]
    }
  ]
end

Development

Pull requests are very welcome! Make sure your patches are well tested. Ideally create a topic branch for every separate change you make.

License and Author

Author:: Heavy Water Operations

Copyright 2011, 2012, 2013, 2014 Heavy Water Operations, LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

giraffe's People

Contributors

agoddard avatar fnichol avatar tas50 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.