Prepare repository for a Puppet Forge release

Commit updates README.md with a more consistent template for documentation,
  removes travis.yml since we're on stackfoge now, updates the Modulefile
  for the new release, deletes TODO list, CHANGELOGs deleted in favor of
  summarized release notes in README.md, which will show up on Forge,
  and moves examples to tests to adhere with Puppet Labs Style
  Guide(http://docs.puppetlabs.com/guides/style_guide.html#tests)

Change-Id: Iffa30f6f35b996305f635317fc0770f908e9057e
This commit is contained in:
Cody Herriges 2013-05-27 12:40:37 -07:00
parent 1028e92f81
commit 202a27b66a
6 changed files with 113 additions and 128 deletions

View File

@ -1,33 +0,0 @@
language: ruby
bundler_args: --without development
before_script:
- echo $PUPPET_GEM_VERSION | grep '2.6' && git clone git://github.com/puppetlabs/puppetlabs-create_resources.git spec/fixtures/modules/create_resources || true
script: "bundle exec rake spec SPEC_OPTS='--format documentation'"
rvm:
- 1.8.7
- 1.9.3
- ruby-head
branches:
only:
- master
- folsom
- essex
env:
- PUPPET_GEM_VERSION="~> 2.6"
- PUPPET_GEM_VERSION="~> 2.7"
- PUPPET_GEM_VERSION="~> 3.0"
- PUPPET_GEM_VERSION="~> 3.1"
matrix:
allow_failures:
- rvm: ruby-head
exclude:
- rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 2.7"
- rvm: ruby-head
env: PUPPET_GEM_VERSION="~> 2.7"
- rvm: 1.9.3
env: PUPPET_GEM_VERSION="~> 2.6"
- rvm: ruby-head
env: PUPPET_GEM_VERSION="~> 2.6"
notifications:
email: false

View File

@ -1,22 +0,0 @@
* 2013-03-19 1.1.0
- update travis matrix (add ruby 1.9, puppet 3.0)
- implement provider changes for purging
- refactor of glance_image native types
- remove /v1 from endpoints
- allow specifying https for public endpoint
- parse credentials out of apt-paste.conf
* 2012-11-02 1.0.0
- Add travisci support to repo
- Remove essex support
- Add folsom support
- Remove file concat
- Add native types for managing all config file
- Remove password defaults
- update multi-region support for compat with keystone 1.0.0
- switch log_verbose,log_debug to debug,verbose
* 2012-10-08 0.1.0
- add enable param for services
- add basic image management
- allow keystone to be on a different host
* 2012-06-07 0.1.0
- initial release

View File

@ -1,13 +1,13 @@
name 'puppetlabs-glance'
version '1.1.0'
source 'git://github.com/puppetlabs/puppetlabs-glance'
version '2.0.0'
source 'https://github.com/stackforge/puppet-glance'
author 'Puppet Labs'
license 'Apache'
summary 'Glance Puppet Module'
description 'Openstack Glance module for folsom. Tested on Ubuntu Precise and RHEL6'
project_page 'http://github.com/puppetlabs/puppetlabs-glance'
license 'Apache License 2.0'
summary 'Puppet Labs Glance Module'
description 'Puppet module to install and configure the Openstack Glance image service'
project_page 'https://launchpad.net/puppet-openstack'
dependency 'cprice404/inifile', '>= 0.9.0'
dependency 'puppetlabs/keystone', '>= 1.1.0'
dependency 'puppetlabs/mysql', '>= 0.5.0'
dependency 'puppetlabs/stdlib', '>= 2.4.0'
dependency 'cprice404/inifile', '>= 0.10.3'
dependency 'puppetlabs/keystone', '>= 2.0.0'
dependency 'puppetlabs/mysql', '>= 0.6.1'
dependency 'puppetlabs/stdlib', '>= 2.5.0'

164
README.md
View File

@ -1,82 +1,124 @@
# PuppetLabs Glance module
glance
=======
This module can be used to flexibly configure [glance](http://glance.openstack.org/),
the image service of openstack.
#### Table of Contents
It has been tested with a combination of other modules, and has primarily been
developed as a subcomponent of the [openstack module](https://github.com/stackforge/puppet-openstack)
1. [Overview - What is the glance module?](#overview)
2. [Module Description - What does the module do?](#module-description)
3. [Setup - The basics of getting started with glance](#setup)
4. [Implementation - An under-the-hood peek at what the module is doing](#implementation)
5. [Limitations - OS compatibility, etc.](#limitations)
6. [Development - Guide for contributing to the module](#development)
7. [Contributors - Those with commits](#contributors)
8. [Release Notes - Notes on the most recent updates to the module](#release-notes)
It is currently targettting the folsom/grizzly releases of OpenStack.
Overview
--------
## Platforms
The glance module is a part of [Stackforge](https://github.com/stackfoge), an effort by the Openstack infrastructure team to provide continuous integration testing and code review for Openstack and Openstack community projects not part of the core software. The module its self is used to flexibly configure and manage the image service for Openstack.
* Ubuntu 12.04 (Precise)
* RHEL 6
Module Description
------------------
## configurations
The glance module is a thorough attempt to make Puppet capable of managing the entirety of glance. This includes manifests to provision such things as keystone endpoints, RPC configurations specific to glance, and database connections. Types are shipped as part of the glance module to assist in manipulation of configuration files.
Glance is configured with the following classes:
This module is tested in combination with other modules needed to build and leverage an entire Openstack software stack. These modules can be found, all pulled together in the [openstack module](https://github.com/stackfoge/puppet-openstack).
Setup
-----
### configures glance::api service
**What the glance module affects**
class { 'glance::api':
verbose => $verbose,
debug => $verbose,
auth_type => 'keystone',
auth_port => '35357',
auth_host => $keystone_host,
keystone_tenant => 'services',
keystone_user => 'glance',
keystone_password => $glance_user_password,
sql_connection => $sql_connection,
enabled => $enabled,
}
* glance, the image service for Openstack.
### configures the glance registry
### Installing glance
class { 'glance::registry':
verbose => $verbose,
debug => $verbose,
auth_host => $keystone_host,
auth_port => '35357',
auth_type => 'keystone',
keystone_tenant => 'services',
keystone_user => 'glance',
keystone_password => $glance_user_password,
sql_connection => $sql_connection,
enabled => $enabled,
}
example% puppet module install puppetlabs/glance
### Configure file storage backend
### Beginning with glance
class { 'glance::backend::file': }
To utilize the glance module's functionality you will need to declare multiple resources. The following is a modified excerpt from the [openstack module](https://github.com/stackfoge/puppet-openstack). This is not an exhaustive list of all the components needed, we recommend you consult and understand the [openstack module](https://github.com/stackforge/puppet-openstack) and the [core openstack](http://docs.openstack.org) documentation.
### Create the Glance db, this should be configured on your mysql server
**Define a glance node**
class { 'glance::db::mysql':
user => $glance_db_user,
password => $glance_db_password,
dbname => $glance_db_dbname,
allowed_hosts => $allowed_hosts,
}
```puppet
class { 'glance::api':
verbose => 'True',
keystone_tenant => 'services',
keystone_user => 'glance',
keystone_password => '12345',
sql_connection => 'mysql://glance:12345@127.0.0.1/glance',
}
### configures glance endpoints in keystone
should be run on your keystone server
class { 'glance::registry':
verbose => 'True',
keystone_tenant => 'services',
keystone_user => 'glance',
keystone_password => '12345',
sql_connection => 'mysql://glance:12345@127.0.0.1/glance',
}
class { 'glance::keystone::auth':
password => $glance_user_password,
public_address => $glance_public_real,
admin_address => $glance_admin_real,
internal_address => $glance_internal_real,
region => $region,
}
class { 'glance::backend::file': }
```
for full examples, see the examples directory.
**Setup postgres node glance**
in the module, puppet-openstack, the following classes
configure parts of glance:
```puppet
class { 'glance::db::postgresql':
password => '12345',
}
```
- openstack::glance # api, file backend, and registry
- openstack::keystone # sets up endpoints
- openstack::db::mysql # sets up db config
**Setup mysql node for glance**
```puppet
class { 'glance::db::mysql':
password => '12345',
allowed_hosts => '%',
}
```
**Setup up keystone endpoints for glance on keystone node**
```puppet
class { 'glance::keystone::auth':
password => '12345'
public_address => '172.17.0.3',
admin_address => 'admin@example.com',
internal_address => '172.17.1.3',
region => 'example-west-1',
}
```
Implementation
--------------
### glance
glance is a combination of Puppet manifest and ruby code to deliver configuration and extra functionality through types and providers.
Limitations
------------
* Only supports configuring the file and swift storage backends.
Development
-----------
Developer documentation for the entire puppet-openstack project.
* https://wiki.openstack.org/wiki/Puppet-openstack#Developer_documentation
Contributors
------------
* https://github.com/stackforge/puppet-glance/graphs/contributors
Release Notes
-------------
**2.0.0**
* Upstream is now part of stackfoge.
* Added postgresql support.
* Various cleanups and bug fixes.

2
TODO
View File

@ -1,2 +0,0 @@
The glance api file is still massively different between Chris's version and
the version deployed on Precise