update the README after refactoring and align it with other cookbooks

* also removed the empty default recipe

Change-Id: I17784d1e6fd79b083243590cbedd532bdc36e895
This commit is contained in:
Jan Klare 2016-04-22 10:03:52 -05:00 committed by Christoph Albers
parent c96631c992
commit 99ef0ca301
3 changed files with 37 additions and 111 deletions

125
README.md
View File

@ -1,113 +1,61 @@
Description Description
=========== ===========
Installs the OpenStack Dashboard service **Horizon** as part of the OpenStack reference deployment Chef for OpenStack. The http://github.com/mattray/chef-openstack-repo contains documentation for using this cookbook in the context of a full OpenStack deployment. Horizon is currently installed from packages. Installs the OpenStack Dashboard service **Horizon** as part of the OpenStack
reference deployment Chef for OpenStack. The
https://github.com/openstack/openstack-chef-repo contains documentation for using
this cookbook in the context of a full OpenStack deployment. Horizon is
currently installed from packages.
http://horizon.openstack.org http://docs.openstack.org/mitaka/config-reference/dashboard.html
Requirements Requirements
============ ============
* Chef 0.10.0 or higher required (for Chef environment use). - Chef 12 or higher
- chefdk 0.9.0 for testing (also includes berkshelf for cookbook dependency
resolution)
Platform
========
- ubuntu
- redhat
- centos
Cookbooks Cookbooks
--------- =========
The following cookbooks are dependencies: The following cookbooks are dependencies:
* apache2 - 'apache2', '~> 3.1'
* openstack-common - 'openstack-common', '>= 13.0.0'
- 'openstack-identity', '>= 13.0.0'
Usage
=====
horizon
-------
Sets up the packages needed to run the Horizon dashboard and its dependencies.
Will be included from the `server` recipe.
apache2-server
--------------
Installs the Apache webserver and sets up an `mod_wsgi` container to run the
Horizon dashboard. Will be included from the `server` recipe.
server
------
Sets up the Horizon dashboard and a webserver of type `['openstack']['dashboard']['server_type']`
to run it, default type is 'apache2'.
```json
"run_list": [
"recipe[openstack-dashboard::server]"
]
```
Attributes Attributes
========== ==========
* `openstack['dashboard']['server_type']` - Selects the type of webserver to install Please see the extensive inline documentation in `attributes/*.rb` for
* `openstack['dashboard']['db']['username']` - Username for horizon database access descriptions of all the settable attributes for this cookbook.
* `openstack['dashboard']['server_hostname']` - Sets the ServerName in the webserver config
* `openstack['dashboard']['allowed_hosts']` - List of host/domain names we can service (default: '\[\*\]')
* `openstack['dashboard']['dash_path']` - Base path for dashboard files (document root)
* `openstack['dashboard']['wsgi_path']` - Path for wsgi dir
* `openstack['dashboard']['wsgi_socket_prefix']` - Location that will override the standard Apache runtime directory
* `openstack['dashboard']['ssl_offload']` - Set SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTOCOL', 'https') flag for offloading SSL
* `openstack['dashboard']['plugins']` - Array of plugins to include via INSTALED\_APPS
* `openstack['dashboard']['simple_ip_management']` - Boolean to enable or disable simplified floating IP address management
* `openstack['dashboard']['password_autocomplete']` - Toggle browser autocompletion for login form ('on' or 'off', default: 'off')
* `openstack['dashboard']['ssl_no_verify']` - Disable SSL certificate checks (useful for self-signed certificates)
* `openstack['dashboard']['ssl_cacert']` - The CA certificate to use to verify SSL connections
* `openstack['dashboard']['misc_local_settings']` - Additions to the local_settings conf file
* `openstack['dashboard']['hash_algorithm']` - Hash algorithm to use for hashing PKI tokens
For listen addresses and ports, there are http and https bind endpoints defined in Common. Note that all attributes are in the `default['openstack']` "namespace"
Identity Recipes
-------- =======
* `openstack['dashboard']['identity_api_version']` - Force a specific Identity API version ('2.0' or '3', default: '2.0')
* `openstack['dashboard']['volume_api_version']` - Force a specific Cinder API version (default: '2')
* `openstack['dashboard']['keystone_multidomain_support']` - Boolean to enable multi-Domain support
* `openstack['dashboard']['keystone_default_domain']` - Default Domain if using API v3 and on a single-domain model (default: 'Default')
* `openstack['dashboard']['keystone_default_role']` - Default Keystone role assigned to project members (default: '_member_')
* `openstack['dashboard']['keystone_backend']['name']` - Keystone backend in use ('native' or 'ldap', default: 'native')
* `openstack['dashboard']['keystone_backend']['can_edit_user']` - Boolean to allow some user-related identity operations (default: true)
* `openstack['dashboard']['keystone_backend']['can_edit_group']` - Boolean to allow some group-related identity operations (default: true)
* `openstack['dashboard']['keystone_backend']['can_edit_project']` - Boolean to allow some project-related identity operations (default: true)
* `openstack['dashboard']['keystone_backend']['can_edit_domain']` - Boolean to allow some domain-related identity operations (default: true)
* `openstack['dashboard']['keystone_backend']['can_edit_role']` - Boolean to allow some role-related identity operations (default: true)
Certificate ## openstack-dashboard::horizon
----------- - Sets up the packages needed to run the Horizon dashboard and its dependencies.
* `openstack['dashboard']['use_ssl']` - Toggle for using ssl with dashboard (default: true) Will be included from the `server` recipe.
* `openstack['dashboard']['ssl']['dir']` - Directory where ssl certs are stored on this system (default: platform dependent)
* `openstack['dashboard']['ssl']['cert']` - Name to use when creating the ssl certificate
* `openstack['dashboard']['ssl']['cert_url']` - If using an existing certificate, this is the URL to its location
* `openstack['dashboard']['ssl']['key']` - Name to use when creating the ssl key
* `openstack['dashboard']['ssl']['key_url']` - If using an existing certificate key, this is the URL to its location
By default the openstack-dashboard cookbook ships with a self-signed certificate from a fake organization. ## openstack-dashboard::apache2-server
It is possible to use a real production certificate from your organization by putting that certificate - Installs the Apache webserver and sets up an `mod_wsgi` container to run the
somewhere where the cookbook can download it from then simply passing in the URL of the certificate, and its Horizon dashboard. Will be included from the `server` recipe.
corresponding key, using the 'cert_url' and 'key_url' attributes.
Testing ## openstack-dashboard::server
===== - Sets up the Horizon dashboard and a webserver of type
`['openstack']['dashboard']['server_type']` to run it, default type is
'apache2'.
Please refer to the [TESTING.md](TESTING.md) for instructions for testing the cookbook.
Berkshelf
=====
Berks will resolve version requirements and dependencies on first run and
store these in Berksfile.lock. If new cookbooks become available you can run
`berks update` to update the references in Berksfile.lock. Berksfile.lock will
be included in stable branches to provide a known good set of dependencies.
Berksfile.lock will not be included in development branches to encourage
development against the latest cookbooks.
License and Author License and Author
================== ==================
@ -131,7 +79,8 @@ License and Author
| **Author** | Eric Zhou (<iartarisi@suse.cz>) | | **Author** | Eric Zhou (<iartarisi@suse.cz>) |
| **Author** | Jens Rosenboom (<j.rosenboom@x-ion.de>) | | **Author** | Jens Rosenboom (<j.rosenboom@x-ion.de>) |
| **Author** | Mark Vanderwiel (<vanderwl@us.ibm.com>) | | **Author** | Mark Vanderwiel (<vanderwl@us.ibm.com>) |
| **Author** | Jan Klare (<j.klare@x-ion.de>) | | **Author** | Jan Klare (<j.klare@cloudbau.de>) |
| **Author** | Christoph Albers (<c.albers@x-ion.de>) |
| | | | | |
| **Copyright** | Copyright (c) 2012, Rackspace US, Inc. | | **Copyright** | Copyright (c) 2012, Rackspace US, Inc. |
| **Copyright** | Copyright (c) 2012-2013, AT&T Services, Inc. | | **Copyright** | Copyright (c) 2012-2013, AT&T Services, Inc. |

View File

@ -6,10 +6,6 @@ description 'Installs/Configures the OpenStack Dashboard (Horizon)'
long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
version '13.0.0' version '13.0.0'
recipe 'openstack-dashboard::horizon', 'Sets up the Horizon dashboard.'
recipe 'openstack-dashboard::apache2-server', 'Sets up an Apache `mod_wsgi` container to run the dashboard.'
recipe 'openstack-dashboard::server', 'Sets up the Horizon dashboard and webserver to run it.'
%w(ubuntu redhat centos).each do |os| %w(ubuntu redhat centos).each do |os|
supports os supports os
end end

View File

@ -1,19 +0,0 @@
# encoding: UTF-8
#
# Cookbook Name:: openstack-dashboard
# Recipe:: default
#
# Copyright 2012, Rackspace US, Inc.
#
# 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.
#