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
CHANGELOG.md
COPYING
README.md
metadata.rb

README.md

mineos Cookbook

This cookbook installs and configures mineos. Refer to http://codeemo.com/mineoswiki/index.php?title=Installing_MineOS for further information.

CAUTION: If you’re upgrading from 1.0.x (mineos 0.5) to 2.x.x (mineos 0.6), please

  • backup your servers (e.g. create an archive via the web ui)
  • remove mineos 0.5 or just setup a new host machine
  • run mineos::default
  • restore your servers (e.g. use the web ui to re-create them from archives)

Requirements

OS

  • potentially any debian-based
  • written for and tested on Ubuntu

packages

  • chef :) (≥11.6.0)

cookbooks

  • logrotate

Attributes

Key Type Description Default
['mineos']['group'] String the group to grant profile editing rights to mineos
['mineos']['basedir'] String base directory to checkout the mineos repo to /srv/mineos
['mineos']['repository'] String the git repo to install mineos from https://github.com/hexparrot/mineos.git
['mineos']['version'] String version to checkout from the git repo; can be any commit identifier (id, branch, tag, …) master
['mineos']['profile_fix']['enable'] Boolean whether to overwrite the standard profile.config with a patched one to include base profiles for newly released minecraft versions false
['mineos']['profile_fix']['versions'] String[] versions to include in the profile fix []
['mineos']['service']['enable'] Boolean whether to enable the webui and “start servers on boot” services true
['mineos']['config']['basedir'] String where to put minecraft server data /var/games/minecraft
['mineos']['config']['locale'] String webui locale (currently, only en and nl seem to be suported) en
['mineos']['config']['mask_password'] Boolean whether to mask passwords on the login page by default false
['mineos']['config']['logfile'] String where to put the mineos log /var/log/mineos.log
['mineos']['config']['host']['address'] String IP address for the webui to listen on 0.0.0.0 (all)
['mineos']['config']['host']['port'] int port for the webui to listen on 8080
['mineos']['config']['commit_delay'] int in seconds 10
['mineos']['config']['ssl']['enable'] Boolean whether to enable SSL encryption for the webui true
['mineos']['config']['ssl']['generate'] Boolean whether to generate a self signed SSL cert for the webui true
['mineos']['config']['ssl']['cert'] String where the webui SSL cert is stored; do not change if self signed cert generation is enabled /etc/ssl/certs/mineos.crt
['mineos']['config']['ssl']['key'] String where the webui SSL private key is stored; do not change if self signed cert generation is enabled /etc/ssl/certs/mineos.key
['mineos']['config']['ssl']['ca'] String where the webui SSL cert ca is stored; do not change if self signed cert generation is enabled <empty>
['mineos']['config']['ssl']['chain'] String where the webui SSL cert chain is stored; do not change if self signed cert generation is enabled <empty>

Usage

Just include mineos in your node's run_list:

{
  "name":"my_node",
  "run_list": [
    "recipe[mineos]"
  ]
}

Then, put all the users that should be granted full access to the webinterface into the ['mineos']['group'] group.

Or, write a recipe :)

node.set['mineos']['config']['ssl']['enable'] = false
node.set['mineos']['config']['ssl']['generate'] = false
node.set['mineos']['repository'] = "https://github.com/kaimi/mineos.git"
node.set['mineos']['mask_password'] = true

include_recipe "mineos"

user "foo" do
  home "/home/foo"
  password 'hashedpassword'
  system true
end

group "mineos" do
  action :modify
  members ["foo"]
end

Contributing

I am using nvie’s git branching model. To contribute you should follow these steps:

  1. Check if your proposed change is already implemented in the develop branch
  2. Fork the repository on Github
  3. Create a named feature branch (like add_component_x)
  4. Write your change
  5. Write tests for your change (if applicable)
  6. Run the tests, ensuring they all pass
  7. Submit a Pull Request against the develop branch using Github

License and Authors

Authors: ka’imi kaimi@kaimi.cc