Update README

* Fix 80-chars wrap
* Address TODOs
* Add details for the MAINTAINERS file

Change-Id: Ia78633b5fbf8d73776a19ff9343270c34fa83c54
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
This commit is contained in:
Bogdan Dobrelya 2015-11-25 11:50:56 +01:00
parent ae564d690b
commit 05c44e7802
1 changed files with 48 additions and 12 deletions

View File

@ -15,7 +15,8 @@
## Overview
-----------
The fuel-library is collection of Puppet modules and related code used by Fuel to deploy OpenStack environments.
The fuel-library is collection of Puppet modules and related code used by Fuel
to deploy OpenStack environments.
## Structure
@ -28,6 +29,7 @@ fuel-library
├── CHANGELOG
├── LICENSE
├── README.md
├── MAINTAINERS
├── debian
├── deployment
├── files
@ -38,19 +40,31 @@ fuel-library
### root
The root level contains important repository documentation and license information.
The root level contains important repository documentation and license
information.
### MAINTAINERS
This is repository level MAINTAINERS file. One submitting a patch should
contact the apropriate maintainer or invite her or him for the code review.
Note, core reviewers are not the maintainers. Normally, cores do reviews
after maintainers.
### debian/
This folder contains the required information to create fuel-library debian packages.
This folder contains the required information to create fuel-library debian
packages.
### deployment/
This folder contains the fuel-library Puppet code, the Puppetfile for upstream modules, and scripts to manage modules with [librarian-puppet-simple](https://github.com/bodepd/librarian-puppet-simple).
This folder contains the fuel-library Puppet code, the Puppetfile for
upstream modules, and scripts to manage modules with
[librarian-puppet-simple](https://github.com/bodepd/librarian-puppet-simple).
### files/
This folder contains scripts and configuration files that are used when creating the packages for fuel-library.
This folder contains scripts and configuration files that are used when
creating the packages for fuel-library.
### specs/
@ -62,34 +76,56 @@ This folder contains our testing scripts for the fuel-library.
### utils/
This folder contains scripts that are useful when doing development on fuel-library
This folder contains scripts that are useful when doing development on
fuel-library
## Granular Deployment
----------------------
TODO.
The [top-scope puppet manifests](deployment/puppet/osnailyfacter/modular)
(sometimes also refered as the composition layer) represent the known
deploy paths (aka supported deployment scenarios) for the
[task-based deployment](https://docs.mirantis.com/openstack/fuel/fuel-6.1/reference-architecture.html#task-based-deployment).
## Upstream Modules
-------------------
In order to be able to pull in upstream modules for use by the fuel-library, the deployment folder contains a Puppetfile for use with [librarian-puppet-simple](https://github.com/bodepd/librarian-puppet-simple). Upstream modules should be used whenever possible. For additional details on the process for working with upstream modules, please read the [Fuel library for Puppet manifests](https://wiki.openstack.org/wiki/Fuel/How_to_contribute#Fuel_library_for_puppet_manifests) of the [Fuel wiki](https://wiki.openstack.org/wiki/Fuel).
In order to be able to pull in upstream modules for use by the fuel-library,
the deployment folder contains a Puppetfile for use with
[librarian-puppet-simple](https://github.com/bodepd/librarian-puppet-simple).
Upstream modules should be used whenever possible. For additional details on
the process for working with upstream modules, please read the
[Fuel library for Puppet manifests](https://wiki.openstack.org/wiki/Fuel/How_to_contribute#Fuel_library_for_puppet_manifests)
of the [Fuel wiki](https://wiki.openstack.org/wiki/Fuel).
## Testing
----------
Testing is important for the fuel-library to ensure changes do what they are supposed to do, regressions are not introduced and all code is of the highest quality. The fuel-library leverages existing Puppet module rspec tests, [bats](https://github.com/sstephenson/bats) tests for bash scripts and noop tests for testing the module deployment tasks in fuel-library.
Testing is important for the fuel-library to ensure changes do what they are
supposed to do, regressions are not introduced and all code is of the highest
quality. The fuel-library leverages existing Puppet module rspec tests,
[bats](https://github.com/sstephenson/bats) tests for bash scripts and noop
tests for testing the module deployment tasks in fuel-library.
### Puppet module tests
TODO.
Puppet rspec tests should be provided for an every module's directory included.
All of the discovered tests will be automatically executed by the
`rake spec` command issued from the repository root path.
### Bats: Bash Automated Testing System
TODO.
Shell scripts residing in the `./files` directories should be
covered by the [BATS](https://github.com/sstephenson/bats) test cases.
These should be put under the `./tests/bats` path as well.
Here is an [example](https://review.openstack.org/198355) bats tests
written for the UMM feature.
See also the [bats how-to](https://blog.engineyard.com/2014/bats-test-command-line-tools).
### fuel-library noop
TODO.
The Noop testing framework is used for testing of the known deploy paths
with existing modular tasks. For details, see the [README](tests/noop/README.rst)
## Development
--------------