Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

CI Status Documentation Status PyPi Package Compatible Python Versions Code Style

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": "Exmaple 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!

The globus_action_provider_tools package is developed using poetry so to get started you’ll need to install poetry. Once installed, clone the repository and run make install to install the package and its dependencies locally in a virtual environment (typically .venv).

And that’s it, you’re ready to dive in and make code changes. Once you’re satisfied with your changes, be sure to run make autoformat to run the project’s autoformatters on your changes and make test to validate there are no breaking changes introduced. Both these steps must be run for us to accept incoming changes. Once you feel your work is ready to be submitted, feel free to create a PR.

PyPi Releases

Please follow the steps below when creating a new release of the toolkit:

  • Create a new release branch
    • git checkout -b release/X.Y.Z

  • Update the project’s dependencies
    • poetry update

  • Update the project version (follow semantic versioning) in pyproject.toml
    • poetry version patch|minor|major

  • Update the project version in globus_action_provider_tools/__init__.py

  • Create a pull request into the main branch, wait for CI tests to complete

  • Merge the passing pull request

  • Create and publish a git tag for the new release
    • git tag v$(poetry version -s)

    • git push –tags

  • Create a new GH release that references the recently created tag. Provide release notes with information on the changeset. Once the release is created, there’s a GH workflow that will build the toolkit and publish it to pypi.

Metadata

Release files for globus-action-provider-tools 0.13.0b1

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

Source distribution (sdist)

Source distribution for globus-action-provider-tools 0.13.0b1
File Size Uploaded
globus_action_provider_tools-0.13.0b1.tar.gz 30.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for globus-action-provider-tools 0.13.0b1
File Interpreter ABI Platform
globus_action_provider_tools-0.13.0b1-py3-none-any.whl Python 3 none any Details

Total release size: 67.5 kB

Release files / globus_action_provider_tools-0.13.0b1.tar.gz

Download URL globus_action_provider_tools-0.13.0b1.tar.gz
Size 30.8 kB
Tags Source
SHA-256 checksum
How to use checksums
dbaf1f4699b7a1ceb8867b5b21ad93c17ae20fb7a3c03e2f948ae53a6d8aa0ab
BLAKE2b-256 checksum
How to use checksums
891c7c1fcd8918509e99ed34e51ca7510a9e9ea978111d22481f1d359c1f30d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.1 CPython/3.11.1 Linux/5.15.0-56-generic

Release files / globus_action_provider_tools-0.13.0b1-py3-none-any.whl

Download URL globus_action_provider_tools-0.13.0b1-py3-none-any.whl
Size 36.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d8c8b2a51860b474331f0a9f38ed5535e2de02e9fcabdcafe5547add80fed934
BLAKE2b-256 checksum
How to use checksums
f7e40e16d0defbebf450b00cd7c55644be3845456c54c80865480d0b96b217ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.3.1 CPython/3.11.1 Linux/5.15.0-56-generic

Release history Release notifications | RSS feed

0.21.0

2 release files

0.19.1

2 release files

0.19.0

2 release files

0.18.0

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.0

2 release files

0.14.1

2 release files

0.14.0

2 release files

This release

0.13.0b1 This release

2 release files

0.11.5

2 release files

0.11.3

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.5

2 release files

0.10.4

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9

2 release files

0.8.1

2 release files

0.8

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7

2 release files

0.6

2 release files

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