Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

puppetry with objects

Project description

Gitter Twitter

Remote objects, like puppet.

For a small project I need to communicate between two process. In one process I have a class which create an object. The other process should access the functions and variables of this object. The process play with the object like an puppetry.

Install

pip install puppetry

Basic usage

Example class:

class HelloWorld(object):

    def __init__(self, name=''):
        self.name = name

    def hello(self, name=None):
        if name: return 'Hello ' + name
        return 'Hello ' + self.name

Server:

from puppetry import RemoteServer

server = RemoteServer((HOST, PORT), obj=HelloWorld('world'))
server.start()

Client:

from puppetry import RemoteClient

client = RemoteClient((HOST, PORT))
print(client.hello())

client.name = 'puppetry'
print(client.hello())

See more examples in the example folder.

Development

Clone repo:

git clone https://github.com/axju/puppetry.git

Create virtual environment and update dev-tools:

python3 -m venv venv
source venv/bin/activate
pip install --upgrade wheel pip setuptools twine tox

Install local:

pip install -e .

Publish the packages:

python setup.py sdist bdist_wheel
twine upload dist/*

Run some tests:

tox
python setup.py test

Project details


Release history Release notifications

Download files

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

Files for puppetry, version 0.0.1
Filename, size File type Python version Upload date Hashes
Filename, size puppetry-0.0.1-py3-none-any.whl (6.4 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size puppetry-0.0.1.tar.gz (4.5 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page