Module to manage Puppet control repository hosted on Github
Project description
Py Control Repository is SDK for Pyththon which allows developpers to manage a Puppet Control Repository based on GitHub.
Install
$ pip install py-control-repository
Usage
Get Puppet Environment
control_repository = ControlRepository('myorga', 'my_control_repository', 'token')
puppet_environment = control_repository.get_environment('production')
Get all Puppet Environment
Returns the list of all Puppet Environment.
control_repository = ControlRepository('myorga', 'my_control_repository', 'token')
puppet_environments = control_repository.get_environments()
Get all Puppet Environment names
Returns the list of all Puppet Environment names.
control_repository = ControlRepository('myorga', 'my_control_repository', 'token')
puppet_environment_names = control_repository.get_environment_names()
Create a Puppet Environment
Returns the new Puppet Environment.
control_repository = ControlRepository('myorga', 'my_control_repository', 'token')
new_puppet_environments = control_repository.create_environment('source_environment_name',
'new_environment_name')
Get Puppetfile
puppetfile = puppet_environment.get_puppetfile()
List Puppet modules in Puppetfile
module_list = puppetfile.list_modules()
Add a forge module
puppetfile.add_forge_module('puppetlabs/apache', version='0.10.1')
Update a forge module
puppetfile.update_forge_module('puppetlabs/apache', '0.11.0')
Remove a forge module
puppetfile.remove_forge_module('puppetlabs/apache')
Add a git module
With no version spicified, it will install the current master branch.
puppetfile.add_git_module('custom_module', 'https://url.my.git/orga/custom_module')
You can specify a specific git reference. Supported are :
branch
ref
tag
commit
puppetfile.add_git_module('custom_module',
'https://url.my.git/orga/custom_module',
reference_type='commit',
reference='ae1fe')
Update a git module
Bump module version
puppetfile.update_git_module('mymodule', '12.0.2')
You can also change a module reference type and its value.
For example you have a module deployed by its master branch and want to track it by a specific tag.
puppetfile.update_git_module('mymodule', '1.0.0', reference_type='tag')
Remove a git module
puppetfile.remove_git_module('apache')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file py_control_repository-1.0.0-py3-none-any.whl.
File metadata
- Download URL: py_control_repository-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
59fbd68c006679f072082c671b4a6f70221681fd94ffa03604dc1b94b1f4fb90
|
|
| MD5 |
740c72954134da26db02d2f6199a78df
|
|
| BLAKE2b-256 |
796d64ab341c58b873ef9cd2696dce039518c6ce1ff1da1a075e9bdc6f114b53
|