Tools to help developers build services that implement the Action Provider specification.
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.
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for globus_action_provider_tools-0.16.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 116756e8da12fa383a820cfef9cc7df54567e58101e3a56cb6cc2ca8f34c0b03 |
|
MD5 | b2b492ce451c0647da7291d56bcb9104 |
|
BLAKE2b-256 | 8ae37e9c7fc25c30294572d41c26a18d4da6ef7244ade2817aad2cb7dd05af80 |
Hashes for globus_action_provider_tools-0.16.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee3885cc2ad57c79f55b76fa5467b70f36c6550c84731261f6cae0433e445c61 |
|
MD5 | 29db32504a59860ac21deedc744f8a2c |
|
BLAKE2b-256 | 1462ebc17be16cbf7292511ae086688b3b3f00eee9029c8ef0242743927d1dd0 |