globus-action-provider-tools


Nameglobus-action-provider-tools JSON
Version 0.17.0 PyPI version JSON
download
home_pageNone
SummaryTools to help developers build services that implement the Action Provider specification.
upload_time2024-04-11 20:13:45
maintainerNone
docs_urlNone
authorGlobus Team
requires_python>=3.8
licenseApache-2.0
keywords globus automation workflow action_provider
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Action Provider Tools Introduction
==================================

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.


.. code-block:: python

    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:

..  code-block:: console

    $ 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
-----
| Full Documentation: https://action-provider-tools.readthedocs.io
| Rendered Redoc: https://globus.github.io/action-provider-tools/
| Source Code: https://github.com/globus/action-provider-tools
| Release History + Changelog: https://github.com/globus/action-provider-tools/releases

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "globus-action-provider-tools",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "globus, automation, workflow, action_provider",
    "author": "Globus Team",
    "author_email": "support@globus.org",
    "download_url": "https://files.pythonhosted.org/packages/ba/b4/5ffed644e38beb282835e797706b33b62e79770aa9fb04f6d6cc7add4097/globus_action_provider_tools-0.17.0.tar.gz",
    "platform": null,
    "description": "Action Provider Tools Introduction\n==================================\n\nThis is an experimental toolkit to help developers build Action Providers for\nuse in Globus Automate including for invocation via Globus Flows.\n\nAs this is experimental, no support is implied or provided for any sort of use\nof this package. It is published for ease of distribution among those planning\nto use it for its intended, experimental, purpose.\n\nBasic Usage\n-----------\n\nInstall the base toolkit with ``pip install globus_action_provider_tools``\n\nYou can then import the toolkit's standalone components from\n``globus_action_provider_tools``. This is useful in instances where you want to\nuse pieces of the library to perform a function (such as token validation via\nthe TokenChecker or API schema validation via the ActionStatus or ActionRequest)\nand plug into other web frameworks.\n\n\n.. code-block:: python\n\n    from flask import Flask\n    from globus_action_provider_tools import ActionProviderDescription\n\n    description = ActionProviderDescription(\n        globus_auth_scope=\"https://auth.globus.org/scopes/00000000-0000-0000-0000-000000000000/action_all\",\n        title=\"My Action Provider\",\n        admin_contact=\"support@example.org\",\n        synchronous=True,\n        input_schema={\n            \"$id\": \"whattimeisitnow.provider.input.schema.json\",\n            \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n            \"title\": \"Example Action Provider\",\n            \"type\": \"object\",\n            \"properties\": {\"message\": {\"type\": \"string\"}},\n            \"required\": [\"message\"],\n            \"additionalProperties\": False,\n        },\n        api_version=\"1.0\",\n        subtitle=\"Just an example\",\n        description=\"\",\n        keywords=[\"example\", \"testing\"],\n        visible_to=[\"public\"],\n        runnable_by=[\"all_authenticated_users\"],\n        administered_by=[\"support@example.org\"],\n    )\n\nTo install the Flask helpers as well for use specifically in developing Flask\nbased Action Providers, install this library using ``pip install\nglobus_action_provider_tools[flask]``\n\nReporting Issues\n----------------\n\nIf you're experiencing a problem using globus_action_provider_tools, or have an\nidea for how to improve the toolkit, please open an issue in the repository and\nshare your feedback.\n\nTesting, Development, and Contributing\n--------------------------------------\n\nWelcome, and thank you for taking the time to contribute!\n\nTo get started, you'll need to clone the repository and run ``make install``\nto install the package and its dependencies locally in a virtual environment (``.venv/``).\n\nNext, activate the virtual environment:\n\n..  code-block:: console\n\n    $ source .venv/bin/activate\n\nAnd that's it, you're ready to dive in and make code changes.\nRun ``make test`` to validate there are no breaking changes introduced.\nOnce you feel your work is ready to be submitted, feel free to create a PR.\n\nLinks\n-----\n| Full Documentation: https://action-provider-tools.readthedocs.io\n| Rendered Redoc: https://globus.github.io/action-provider-tools/\n| Source Code: https://github.com/globus/action-provider-tools\n| Release History + Changelog: https://github.com/globus/action-provider-tools/releases\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Tools to help developers build services that implement the Action Provider specification.",
    "version": "0.17.0",
    "project_urls": null,
    "split_keywords": [
        "globus",
        " automation",
        " workflow",
        " action_provider"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4d16259b455598cb7686fc8ad602b2707cebc5ff564c04310f87ea94e8c636b4",
                "md5": "a468f7515843b926936ef26a13025954",
                "sha256": "0ddbfd20ff0f984807f2d29f62227611d8619d9d24c74ab7e8001971c80a6bb5"
            },
            "downloads": -1,
            "filename": "globus_action_provider_tools-0.17.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a468f7515843b926936ef26a13025954",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 40684,
            "upload_time": "2024-04-11T20:13:42",
            "upload_time_iso_8601": "2024-04-11T20:13:42.533327Z",
            "url": "https://files.pythonhosted.org/packages/4d/16/259b455598cb7686fc8ad602b2707cebc5ff564c04310f87ea94e8c636b4/globus_action_provider_tools-0.17.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bab45ffed644e38beb282835e797706b33b62e79770aa9fb04f6d6cc7add4097",
                "md5": "5193525dcbba88da6efe849bdd88f4fc",
                "sha256": "9235ca22e0e83e9730ad26f0a8aa758ac1987491b2aaa9336bab2cf99ebdd0dc"
            },
            "downloads": -1,
            "filename": "globus_action_provider_tools-0.17.0.tar.gz",
            "has_sig": false,
            "md5_digest": "5193525dcbba88da6efe849bdd88f4fc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 32261,
            "upload_time": "2024-04-11T20:13:45",
            "upload_time_iso_8601": "2024-04-11T20:13:45.180568Z",
            "url": "https://files.pythonhosted.org/packages/ba/b4/5ffed644e38beb282835e797706b33b62e79770aa9fb04f6d6cc7add4097/globus_action_provider_tools-0.17.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-04-11 20:13:45",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "globus-action-provider-tools"
}
        
Elapsed time: 0.24499s