Skip to main content

Python utility library

Project description

https://travis-ci.org/cloudboss/friend.svg?branch=master

What is Friend?

Friend is all of those of utilities you keep reimplementing across your Python projects, that all got together and decided to live in harmony.

Maybe you just parsed some YAML that contained some configuration in “snake_case”, and you want to pass this configuration to a boto3 function which takes the same values but in “PascalCase”. Then you might find snake_to_pascal_obj or one of its variants to come in handy.

with open('conf.yml') as f:
    conf = yaml.load(f)

ec2 = boto3.resource('ec2')
ec2.create_instances(
    ImageId='ami-12345678',
    BlockDeviceMappings=snake_to_pascal_obj(conf['block_device_mappings']),
    ....
)

Or you need to add a retry to that script that keeps breaking your Jenkins job because the corporate proxy fails about 5% of the time. Sure, you can add a try/except and wrap it in a for loop, but putting the retryable decorator on top of that problematic function will do that for you in one configurable line.

@retryable(times=5)
def flaky_function():
    status = requests.get('https://service.corp/v2/status').json()
    if 'error' in status:
        send_important_email(status['error'])

Read the full documentation at http://friend.readthedocs.io.

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

friend-0.1.3.tar.gz (13.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

friend-0.1.3-py2-none-any.whl (10.6 kB view details)

Uploaded Python 2

File details

Details for the file friend-0.1.3.tar.gz.

File metadata

  • Download URL: friend-0.1.3.tar.gz
  • Upload date:
  • Size: 13.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for friend-0.1.3.tar.gz
Algorithm Hash digest
SHA256 9b919f6bc007b3807552586449e5394ebe645383f2624b29143f23c88088ccf6
MD5 21bbfaa75c4460ca943cf0c21d909480
BLAKE2b-256 cb81a5137edb903f4e7f64c1a64740f0152fce3da53d50539529cfdb84fd3307

See more details on using hashes here.

File details

Details for the file friend-0.1.3-py2-none-any.whl.

File metadata

File hashes

Hashes for friend-0.1.3-py2-none-any.whl
Algorithm Hash digest
SHA256 32db9370e45e538f2d312d591c72084100660c6ccc217558c84c628427cfe524
MD5 9f5fdb0677bc1b48d51418b3146455b4
BLAKE2b-256 6b07976a02871d2a28c6f5bf95d65f60bbc4f494f81a05f3ffadb1a2a4e89b2d

See more details on using hashes here.

Supported by

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