Chef cookbook for Jacobine. Jacobine is a project to analyze different data sources of various open source projects (source code, ecosystem, community) to detect new information about your community and your contribution
Ruby
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
attributes
recipes
templates/default
.gitignore
README.md
metadata.rb

README.md

Jacobine Cookbook

Sets up a working environment for Jacobine

Requirements

A checkout of Jacobine

packages

  • composer
  • database
  • mysql
  • supervisor
  • logrotate
  • apache2
  • apt
  • dotdeb

Attributes

This is the main cookbook to deploy the Jacobine application. Please see attributes/default.rb for all available attributes.

Usage

This is the main cookbook to deploy the Jacobine application. Please see recipes/* for all available recipes. Here is a small list about available recipes:

  • clone: Creates the directory for the application and clones Jacobine in the new directory
  • composer: Executes a composer install command to install all (PHP based) dependencies of Jacobine
  • cron: Adds commands as a cronjob to the crontab of the deployed node
  • database: Sets up the mysql database + user for Jacobine backend and frontend and imports the basic scheme
  • default: Empty recipe to fits Chef needs
  • directories: Creation of various directories for data storage and logs
  • dotdeb-php: Inits dotdeb repository, pins all php5 packages and installs php
  • logrotate: Configures logrotate to rotate written logs by Jacobine
  • php: Installs dotdeb + php. Just a wrapper recipe
  • supervisord: Configures supervisor to take care of our consumers
  • systemuser: Setup of a systemuser to execute Jacobines processes under an own user
  • website: Setup of the Jacobine FE (create directories, clone, deploy webservers vhost, etc.)

jacobine::default

The default cookbook is empty. The normal way is to add every single recipe to your deployment.

The Jacobine ecosystem uses this cookbook to deploy its Vagrant machine + live servers.

jacobine::*

Choose your recipe you want to add to your run list from recipes/* and include it in your node's run_list. E.g. for the database recipe:

{
  "name":"my_node",
  "run_list": [
    "recipe[jacobine::database]"
  ]
}

License

This code is released under the terms of the Apache License in version 2.0.

Contributing

  1. Fork and clone it (git clone https://github.com/andygrunwald/chef-jacobine.git)
  2. Create a named feature branch (git checkout -b my-new-feature)
  3. Write you change (hack hack hack)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Submit a Pull Request using Github