Skip to main content

Tools to help developers build services that implement the Action Provider specification.

Reason this release was yanked:

A bug in the scope comparison logic causes most tokens to be rejected

Project description

This is an experimental toolkit to help developers build Action Providers for use in Globus Automate including for invocation via Globus Flows.

As this is experimental, no support is implied or provided for any sort of use of this package. It is published for ease of distribution among those planning to use it for its intended, experimental, purpose.

Basic Usage

Install the base toolkit with pip install globus_action_provider_tools

You can then import the toolkit’s standalone components from globus_action_provider_tools. This is useful in instances where you want to use pieces of the library to perform a function (such as token validation via the TokenChecker or API schema validation via the ActionStatus or ActionRequest) and plug into other web frameworks.

from flask import Flask
from globus_action_provider_tools import ActionProviderDescription

description = ActionProviderDescription(
    globus_auth_scope="https://auth.globus.org/scopes/00000000-0000-0000-0000-000000000000/action_all",
    title="My Action Provider",
    admin_contact="support@example.org",
    synchronous=True,
    input_schema={
        "$id": "whattimeisitnow.provider.input.schema.json",
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Example Action Provider",
        "type": "object",
        "properties": {"message": {"type": "string"}},
        "required": ["message"],
        "additionalProperties": False,
    },
    api_version="1.0",
    subtitle="Just an example",
    description="",
    keywords=["example", "testing"],
    visible_to=["public"],
    runnable_by=["all_authenticated_users"],
    administered_by=["support@example.org"],
)

To install the Flask helpers as well for use specifically in developing Flask based Action Providers, install this library using pip install globus_action_provider_tools[flask]

Reporting Issues

If you’re experiencing a problem using globus_action_provider_tools, or have an idea for how to improve the toolkit, please open an issue in the repository and share your feedback.

Testing, Development, and Contributing

Welcome, and thank you for taking the time to contribute!

To get started, you’ll need to clone the repository and run make install to install the package and its dependencies locally in a virtual environment (.venv/).

Next, activate the virtual environment:

$ source .venv/bin/activate

And that’s it, you’re ready to dive in and make code changes. Run make test to validate there are no breaking changes introduced. Once you feel your work is ready to be submitted, feel free to create a PR.

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

globus_action_provider_tools-0.19.0.tar.gz (32.2 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file globus_action_provider_tools-0.19.0.tar.gz.

File metadata

File hashes

Hashes for globus_action_provider_tools-0.19.0.tar.gz
Algorithm Hash digest
SHA256 07b28d7073c83cef7e8822c89e89cb50b899f5e29e1f67946d331652e8099c5a
MD5 c8a742ea206c25818088c4f06dd2f7cd
BLAKE2b-256 90b5af1b0d614dc3bed7c04f188ef94d29e258dcd3817e2d0db2fee52c47ac91

See more details on using hashes here.

File details

Details for the file globus_action_provider_tools-0.19.0-py3-none-any.whl.

File metadata

File hashes

Hashes for globus_action_provider_tools-0.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9fbeb338a5f6bd193fadd2d9f1c2dd5493ad8db164d46288d6f068eeda8f0b1c
MD5 a0fa68b2538c8b6f4c3a36e8cf674297
BLAKE2b-256 c1b361d9da547b752ada2ba22eb471db4f9c43ba7010578812d472969f37e44a

See more details on using hashes here.

Supported by

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