The latest release of setuptools 61.0 made a breaking change[1] and because of this change 'pip install' fails with the following error. ~~~ error: Multiple top-level packages discovered in a flat-layout: ['lib', 'spec', 'manifests', 'releasenotes']. ~~~ Users that don't set 'packages', 'py_modules', or configuration' are still likely to observe the auto-discovery behavior, which may halt the build if the project contains multiple directories and/or multiple Python files directly under the project root. To disable auto discovery, one can do below in setup.py ~~~ setuptools.setup(..,packages=[],..) ~~~ or ~~~ setuptools.setup(..,py_modules=[],..) ~~~ [1] https://github.com/pypa/setuptools/issues/3197 Note setup.py is not used to install puppet modules. However it is used to generate a release note, thus should be fixed. Signed-off-by: Jiri Podivin <jpodivin@redhat.com> Change-Id: Icb661b0cfe8887c8eb20560839868f334bc22fd8
Team and repository tags
Table of Contents
- Overview - What is the placement module?
- Module Description - What does the module do?
- Setup - The basics of getting started with placement
- Implementation - An under-the-hood peek at what the module is doing
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
- Contributors - Those with commits
Overview
The placement module is a part of OpenStack, 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 placement service for OpenStack.
Module Description
The placement module is a thorough attempt to make Puppet capable of managing the entirety of placement. This includes manifests to provision region specific endpoint and database connections. Types are shipped as part of the placement module to assist in manipulation of configuration files.
Setup
What the placement module affects
- Placement, the placement service for OpenStack.
Installing placement
placement is not currently in Puppet Forge, but is anticipated to be added soon. Once that happens, you'll be able to install placement with:
puppet module install openstack/placement
Beginning with placement
To utilize the placement module's functionality you will need to declare multiple resources.
Implementation
placement
placement is a combination of Puppet manifest and ruby code to delivery configuration and extra functionality through types and providers.
Limitations
- All the placement types use the CLI tools and so need to be ran on the placement node.
Development
Developer documentation for the entire puppet-openstack project.