Skip to main content

a Python tool to provision, keep in sync and manage FreeBSD boxes and jails.

Project description

Provisioning, keeping in sync and maintaining even a medium-sized pool of FreeBSD boxes and jails can quickly become a time-consuming and complex task. Tools like Ansible , Fabric and ezjail provide welcome help in one aspect or another and it makes sense to integrate them into a Python-based interface that allows centralized, push-oriented and automated interaction.

A project like bsdploy already leverages these tools to great effect albeit in a very inflexible way that cannot easily be applied to an existing deployment. PyBSD-Project aims at providing a fully customizable Python tool that can be used to maintain an existing array of servers as well as set one up and at making available as well as safely, easily and quickly deployable a wide array of pre-configured, clonable and configurable jails to implement, in a DevOps spirit, tools such as:

Somewhere down the line interfacing with tsuru or an equivalent is a goal. On the other hand, once the above shopping list is completed, Docker on FreeBSD will probably be a reality 8P.

Example:

>>> from pybsd import box_01
>>> box_01.ezjail_admin('list')
{
  u'nginx': {
    u'ip': u'10.0.1.41/24',
    u'ips': [
      u'10.0.1.41/24',
      u'2a01:4f8:210:41e6::1:41:1',
      u'127.0.1.41',
      u'::1:41'
    ],
    u'jid': u'1',
    u'root': u'/usr/jails/nginx',
    u'status': u'ZR'
  }
}

Tests can be run like so:

py.test –pdb # or tox

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyBSD-0.0.1.tar.gz (15.1 kB view details)

Uploaded Source

File details

Details for the file PyBSD-0.0.1.tar.gz.

File metadata

  • Download URL: PyBSD-0.0.1.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for PyBSD-0.0.1.tar.gz
Algorithm Hash digest
SHA256 6752b8e320246a0c8bf2a227a81a77080467296f5198015f18857bed58988db3
MD5 07c1df63a1a6b343381520a96a8e3552
BLAKE2b-256 38b6c71663518b907ce88359a343318b86794c27a0e0e69d91fc6d61b505e408

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page