Skip to main content

vcdextproxy

https://img.shields.io/pypi/v/vcdextproxy.svg https://img.shields.io/travis/lrivallain/vcdextproxy.svg https://img.shields.io/github/workflow/status/lrivallain/vcdextproxy/Tests Documentation Status MIT License

Python based proxy looking at multiple AMQP queues for incoming requests of VMware vCloud Director’s API Extensions and forwarding to specified REST backends.

Features

  • Support multiple queues subscriptions

  • Can address multiple REST endpoints depending on extension(s)

  • 1 REST endpoint is a associated to 1 extension in vCD

  • Backend servers:
    • HTTP + HTTPS support

    • Basic authentication

    • Basic URI rewritting

  • AMQP server:
    • Multiple Exchange/Queue listening

    • Manage Exchange/Queue declarations

    • SSL support

  • Extension lifecyle:
    • Deploy a newly declared extension

    • Redeploy an existing extension

  • vCloud Director:
    • Support vCD from 9.1 to 10.0

    • Can check user’s right based on per extension setting

    • Can check organization’s membership of an user

Planned features

  • #6 - Address some pre-checks like rights management

  • #18 - Check organization’s membership of an user

  • #2 - Manage extension lifecycle (deploy/re-deploy)

User case

In a vCloud Director instance where 2 API extensions are used (example1, example2):

vcdextproxy subscribe to following AMQP queues:

  • example1

  • example2

When a message is sent to example1 queue:

  1. A URI path check is made: is /api/example1 a correct API path for extension named example1 ?

  2. If valid, all fields of the request are converted to REST request (as headers or as body content)

  3. REST endpoint handle the request as a standard REST one (with a lot of vCloud information…)

  4. REST endpoint replies to vcdextproxy

  5. vcdextproxy reformat the reply as an AMQP reply message

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

0.1.x (2019-11-01)

  • First release on PyPI.

Metadata

Release files for vcdextproxy 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vcdextproxy 0.1.1
File Size Uploaded Provenance Actions
vcdextproxy-0.1.1.tar.gz 22.5 kB Without provenance Details for vcdextproxy-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for vcdextproxy 0.1.1
File Interpreter ABI Platform Actions
vcdextproxy-0.1.1-py2.py3-none-any.whl Python 2, Python 3 none any Details for vcdextproxy-0.1.1-py2.py3-none-any.whl

Total release size: 41.1 kB

Release files / vcdextproxy-0.1.1.tar.gz

Download URL vcdextproxy-0.1.1.tar.gz
Size 22.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2a5aaa33918f98a0c87acf9242c3a0d2ad06b4ec775c6d478f63293f78e5a22a
BLAKE2b-256 checksum
How to use checksums
aed8d32e5c3b60fc51d36f7fda62e62ee797bb15cb9222cb5b842001a4e17ecc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.8.0

Release files / vcdextproxy-0.1.1-py2.py3-none-any.whl

Download URL vcdextproxy-0.1.1-py2.py3-none-any.whl
Size 18.6 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
ca17c6f90194afca9c58dca49075df3b768456eb955e22c0b80f78b5a8878a4d
BLAKE2b-256 checksum
How to use checksums
e9a9ea8761af87902ea89177744bc9231c3ec32d39ba75b191ecacc8d65c9dab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.8.0

Security for vcdextproxy 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

0.1.0

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page