You're Invited: Meet the Socket team at BSidesSF and RSAC - April 27 - May 1.RSVP
Socket
Sign inDemoInstall
Socket

plumbery

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

plumbery

Cloud automation at Dimension Data with Apache Libcloud

17.5.22
PyPI
Maintainers
2

=============================== Plumbery

.. image:: https://img.shields.io/pypi/v/plumbery.svg :target: https://pypi.python.org/pypi/plumbery

.. image:: https://img.shields.io/travis/DimensionDataCBUSydney/plumbery.svg :target: https://travis-ci.org/DimensionDataCBUSydney/plumbery

.. image:: https://coveralls.io/repos/github/DimensionDataCBUSydney/plumbery/badge.svg?branch=master :target: https://coveralls.io/github/DimensionDataCBUSydney/plumbery?branch=master

.. image:: https://readthedocs.org/projects/plumbery/badge/?version=latest :target: http://plumbery.readthedocs.io/en/latest/?badge=latest

.. image:: https://img.shields.io/pypi/l/plumbery.svg?maxAge=2592000 :target: https://pypi.python.org/pypi/plumbery

.. image:: https://img.shields.io/pypi/pyversions/plumbery.svg?maxAge=2592000 :target: https://pypi.python.org/pypi/plumbery

Infrastructure as code at Dimension Data with Apache Libcloud

  • Documentation: Plumbery at ReadTheDocs_
  • Python package: Plumbery at PyPi_
  • Source code: Plumbery at GitHub_
  • Free software: Apache License (2.0)_

Features

  • 50+ tutorials covering popular use cases
  • Read fittings plan in YAML
  • Load parameters in separate YAMl file
  • Use cloud API to create the network infrastructure, and to build nodes
  • Bootstrap nodes with cloud-init configuration directives
  • Inject actual addresses and on-the-fly secrets to contextualisation
  • Create RSA keys and passwords to secure deployments
  • Pass environment variables to target nodes
  • Preserve random secrets across multiple invocations
  • Create network domains and Ethernet networks
  • Reserve public IPv4 addresses
  • Manage network address translation rules
  • Manage firewall rules
  • Create load balancers with pools of nodes
  • All images in libraries are available to new nodes
  • Specify number of CPU, or core per CPU, and CPU speed
  • Specify node memory
  • Add virtual disks and specify tiers of storage
  • Add multiple network interfaces to nodes
  • Set private IPv4 statically
  • Add public IPv4 addresses to nodes
  • Add monitoring to nodes
  • Add backup to nodes
  • Build all blueprints
  • Build a blueprint across multiple locations
  • Start all nodes
  • Start nodes belonging to the same blueprint
  • Polish Linux nodes for quick bootstrapping
  • Build a full inventory of nodes that have been deployed
  • Reflect fittings into a ready-to-use inventory for ansible
  • Stop all nodes
  • Stop nodes belonging to the same blueprint
  • Wipe all nodes
  • Wipe nodes belonging to the same blueprint
  • Destroy part of the setup, or all blueprints
  • You can extend plumbery with your own software, it has been designed for that
  • Run from the command line, or as a python library, or as a container
  • Accept custom actions from the command line too
  • Limit plumbing to some locations if needed

Contributors

  • Bernard Paques_ [Dimension Data employee] (development lead)
  • Anthony Shaw_ [Dimension Data employee]
  • Olivier Grosjeanne_ [Dimension Data employee]
  • Jacques Clément_ [Dimension Data employee]
  • Asim Khawaja_ [Dimension Data employee]
  • Geoffrey Cristallo_
  • Martijn Lohmeijer_

Credits

  • Cloud-Init_
  • Apache Libcloud_
  • netifaces_
  • PyYAML_
  • Cookiecutter_
  • cookiecutter-pypackage_

.. _Plumbery at ReadTheDocs: https://plumbery.readthedocs.org .. _Plumbery at PyPi: https://pypi.python.org/pypi/plumbery .. _Plumbery at GitHub: https://github.com/DimensionDataCBUSydney/plumbery .. _Apache License (2.0): http://www.apache.org/licenses/LICENSE-2.0 .. _Bernard Paques: https://github.com/bernard357 .. _Anthony Shaw: https://github.com/tonybaloney .. _Olivier Grosjeanne: https://github.com/job-so .. _Jacques Clément: https://github.com/jacquesclement .. _Asim Khawaja: https://github.com/asimkhawaja .. _Geoffrey Cristallo: https://be.linkedin.com/in/geoffrey-cristallo-5b506417 .. _Martijn Lohmeijer: https://nl.linkedin.com/in/mlohmeijer .. _Cloud-Init: https://cloudinit.readthedocs.org/en/latest/topics/examples.html .. _Apache Libcloud: https://libcloud.apache.org/ .. _netifaces: https://pypi.python.org/pypi/netifaces .. _PyYAML: https://pypi.python.org/pypi/PyYAML .. _Cookiecutter: https://github.com/audreyr/cookiecutter .. _cookiecutter-pypackage: https://github.com/audreyr/cookiecutter-pypackage

Keywords

plumbery

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts