Barman (Backup and Recovery Manager) is an open-source administration tool for disaster recovery of PostgreSQL servers written in Python. It allows your organisation to perform remote backups of multiple servers in business critical environments to reduce risk and help DBAs during the recovery phase.
Barman is distributed under GNU GPL 3 and maintained by 2ndQuadrant, a platinum sponsor of the PostgreSQL project.
You run tests more than once
It makes sense to automate anything you repeat 10+ times.
Taurus improves experience of JMeter, Selenium and others.
pyzzer is a simple tool for creating Python-runnable zip archives from Python package and module sources. It uses Python’s standard library zipfile module to construct runnable .zip files. There are several elements to making archives runnable:
docopt creates beautiful command-line interfaces
nacho is a django based web application for managing ldap accounts and groups.
it provides a simple interface for account-registration, self service (editing
profile information) and password reset as well as an interface for
administration of accounts.
Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.
- Python Fire is a simple way to create a CLI in Python. [1]
- Python Fire is a helpful tool for developing and debugging Python code. [2]
- Python Fire helps with exploring existing code or turning other people's code into a CLI. [3]
- Python Fire makes transitioning between Bash and Python easier. [4]
- Python Fire makes using a Python REPL easier by setting up the REPL with the modules and variables you'll need already imported and created. [5]
phpipam-pyclient is a REST-client CLI tool to interface with phpipam REST API. phpipam-pyclient leverages python fire and requests under the hood, some high level functions have been implementend to allow the user to quickly query certain information about the devices on phpipam. In addition, you can use this library to build your Ansible inventory by filtering a field/column of the devices on phpipam.
confluence-vim
A vim plugin for taking notes in markdown and storing them in a confluence wiki.
It's really simple, I hope you like it.
You need to install html2text, markdown, and requests, and your vim needs to be compiled with python support. You also need to write your credentials in your .netrc file.
Snimpy is aimed at being the more Pythonic possible. You should forget that you are doing SNMP requests. Snimpy will rely on MIB to hide SNMP details. Here are some "features":
MIB parser based on libsmi (through CFFI)
SNMP requests are handled by PySNMP (SNMPv1, SNMPv2 and SNMPv3 support)
scalars are just attributes of your session object
columns are like a Python dictionary and made available as an attribute
getting an attribute is like issuing a GET method
setting an attribute is like issuing a SET method
iterating over a table is like using GETNEXT
when something goes wrong, you get an exceptionThis tutorial provides a basic Python programmer’s introduction to working with gRPC.
By walking through this example you’ll learn how to:
Define a service in a .proto file.
Generate server and client code using the protocol buffer compiler.
Use the Python gRPC API to write a simple client and server for your service.
It assumes that you have read the Overview and are familiar with protocol buffers. Note that the example in this tutorial uses the proto3 version of the protocol buffers language, which is currently in beta release: you can find out more in the proto3 language guide and Python generated code guide, and see the release notes for the new version in the protocol buffers Github repository.
This tutorial provides a basic Python programmer's introduction to working with protocol buffers. By walking through creating a simple example application, it shows you how to
Define message formats in a .proto file.
Use the protocol buffer compiler.
Use the Python protocol buffer API to write and read messages.
This isn't a comprehensive guide to using protocol buffers in Python. For more detailed reference information, see the Protocol Buffer Language Guide, the Python API Reference, the Python Generated Code Guide, and the Encoding Reference.
The Tooz project aims at centralizing the most common distributed primitives like group membership protocol, lock service and leader election by providing a coordination API helping developers to build distributed applications.
Almost any sensor yields more interesting results if mounted on a moving platform. Remember scanning thermometer? It’s time to mount TOF LIDAR (Time Of Flight / Light Imaging, Detection, And Ranging) on two precision rotary stages arranged for pan and tilt operation. Rig provides real-time position data along with distance to an obstacle. Using simple math we can calculate position in Cartesian coordinate system. Data is collected point by point to reconstruct 3D object model.
Six provides simple utilities for wrapping over differences between Python 2 and Python 3. It is intended to support codebases that work on both Python 2 and 3 without modification. six consists of only one Python file, so it is painless to copy into a project.
Six can be downloaded on PyPi. Its bug tracker and code hosting is on GitHub.
The name, “six”, comes from the fact that 2*3 equals 6. Why not addition? Multiplication is more powerful, and, anyway, “five” has already been snatched away by the (admittedly now moribund) Zope Five project.
Gunicorn 'Green Unicorn' is a Python WSGI HTTP Server for UNIX. It's a pre-fork worker model. The Gunicorn server is broadly compatible with various web frameworks, simply implemented, light on server resources, and fairly speedy.
Graph-tool is an efficient Python module for manipulation and statistical analysis of graphs (a.k.a. networks). Contrary to most other python modules with similar functionality, the core data structures and algorithms are implemented in C++, making extensive use of template metaprogramming, based heavily on the Boost Graph Library. This confers it a level of performance that is comparable (both in memory usage and computation time) to that of a pure C/C++ library.