Skip to content

Latest commit

 

History

History
199 lines (174 loc) · 4.66 KB

README.md

File metadata and controls

199 lines (174 loc) · 4.66 KB

zendserver Cookbook

This cookbook installs and manages Zend Server

It allows bootstrapping Zend Server in single server mode or cluster mode.

Requirements

Platforms

  • Debian, Ubuntu
  • RHEL, CentOS, Oracle Linux

Cookbooks

  • aptitude
  • yum

Attributes

zendserver::single

Key Type Description Required Default
['zendserver']['version'] string Zend Server version to install Yes 6.2
['zendserver']['phpversion'] string PHP version to install Yes 5.4
['zendserver']['ordernumber'] string The order number part of the license information (if not provided, will bootstrap in enterprise trial) No -
['zendserver']['licensekey'] string The license key part of the license information No -
['zendserver']['production'] boolean Bootstrap Zend Server in production (true)/development(false) mode (See zend server documentation for more details) Yes TRUE
['zendserver']['apikeyname'] string Name for the web API key that the installer creates. The api key is required for all management functionality Yes -
['zendserver']['apikeysecret'] string A 64 character key used for signing API requests Yes -
['zendserver']['adminpassword'] string A 4-20 character password for the admin user (use this to log into the Zend Server GUI). No p2ssw0rd1
['zendserver']['adminemail'] string An email address for the Zend Server admin No -

zendserver::cluster

Requires all the attributes listed for single, plus a valid MySQL database.

Key Type Description Required Default
['zendserver']['dbhost'] string A MySQL database server host address - required for clustering Yes -
['zendserver']['dbusername'] string The MySQL server username, must be able to create a database - required for clustering Yes -
['zendserver']['dbpassword'] string The MySQL server password - required for clustering Yes -

Recipes

zendserver::single

Installs Zend Server, and bootstraps in single server mode

Just include zendserver in your node's run_list:

{
  "name":"my_node",
  "run_list": [
    "recipe[zendserver::single]"
  ]
}

zendserver::cluster

Installs Zend Server, and bootstraps in cluster mode

Just include zendserver in your node's run_list:

{
  "name":"my_node",
  "run_list": [
    "recipe[zendserver::cluster]"
  ]
}

Providers

zendserver_extension - Enabling/disabling extensions

In your cookbook, in a recipe:

include_recipe "zendserver"

zendserver_extension "mongo" do
	action :enable
	notifies :restart, 'service[zend-server]'
end

To enable many extensions without repeating the code block:

include_recipe "zendserver"

["mongo", "memcached", "mssql"].each do |ext|
	zendserver_extension ext do
		action :enable
		notifies :restart, 'service[zend-server]'
	end
end

Notice the notification - By default the action will not restart the server, the recommended way to restart is to add the notification (They will be queued up, and only one restart will occur at the end).

Contributing

e.g.

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