ipf


Nameipf JSON
Version 1.7.1 PyPI version JSON
download
home_pagehttps://github.com/access-ci-org/ipf
SummaryThe Information Publishing Framework
upload_time2024-01-24 17:52:11
maintainer
docs_urlNone
authorEric Blau, Warren Smith
requires_python
licenseApache
keywords monitoring information gathering publishing glue2
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
# access-ci-org/ipf %VER%-%REL%
# README

## Overview

The Information Publishing Framework (IPF) is a generic framework used by resource operators to gather and publish
dynamic resource information in [GLUE 2 serialized format](http://www.ogf.org/documents/GFD.147.pdf). IPF was used
by the TeraGrid, XSEDE, and XSEDE 2 programs, and is currently being used by the ACCESS-CI program to publish
high-performance compute cluster information.

IPF gathers and publishes information using simple workflows. These workflows are defined using JSON (see the
etc/workflows directory) and steps in the workflows are implemented as Python classes. Each step in the
workflow can require input Data, can produce output Data, and can publish Representations of Data. A typical
workflow consists of a number of information gathering steps and a few steps that publish representations to
files or to remote services (e.g. REST, messaging).

Workflow steps specify what Data they require and what Data they produce. This allows IPF to construct
workflows based on partial information - in the case where there are not steps that produce the same Data, an
entire workflow can be constructed from a single publish step and its required input Data. At the other
extreme, workflows can be exactly specified with specific steps identified and the outputs of steps bound to
the inputs of other steps. A typical workflow (e.g. GLUE 2) specifies what steps to include but lets IPF
automatically link outputs to inputs of these steps.

Workflows can run to completion relatively quickly or they can continuously run. The first type of workflow
can be used to run a few commands or look at status files and publish that information. The second type of
workflow can be used to monitor log files and publish entries written to those files. Workflows are typically
run periodically as cron jobs. The program libexec/run_workflow.py is for executing workflows that complete
quickly and the program libexec/run_workflow_daemon.py is used to manage long-running workflows. The daemon

## License

This software is licensed the Apache License Version 2.0.

## Installation

Quickstart instructions are in [docs/Quickstart.md](docs/Quickstart.md).
More comprehensive instructions are in [docs/INSTALL.md](docs/INSTALL.md).

## Support Information

This software is currently maintained by the ACCESS CONECT project.

The source is maintained in the [ACCESS-CI GitHub](https://github.com/access-ci-org/ipf).  ACCESS-CI resource
providers and other members of the ACCESS-CI community are encourage to contribute bug fixes and improvements.

Software bugs may be reported as GitHub issues.  ACCESS-CI related support requests should be submitted through
the ACCESS-CI ticket system.

## Acknowledgements

This work was supported by the TeraGrid, XSEDE, FutureGrid, XSEDE 2, and ACCESS CONECT projects under
National Science Foundation grants 0503697, 1053575, 0910812, 1548562, and 2138307.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/access-ci-org/ipf",
    "name": "ipf",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "monitoring information gathering publishing glue2",
    "author": "Eric Blau, Warren Smith",
    "author_email": "blau@anl.gov",
    "download_url": "https://files.pythonhosted.org/packages/b5/ff/debc271b37d427710ef178b31ded585624534fea393a0fc1463710f3ba54/ipf-1.7.1.tar.gz",
    "platform": null,
    "description": "\n# access-ci-org/ipf %VER%-%REL%\n# README\n\n## Overview\n\nThe Information Publishing Framework (IPF) is a generic framework used by resource operators to gather and publish\ndynamic resource information in [GLUE 2 serialized format](http://www.ogf.org/documents/GFD.147.pdf). IPF was used\nby the TeraGrid, XSEDE, and XSEDE 2 programs, and is currently being used by the ACCESS-CI program to publish\nhigh-performance compute cluster information.\n\nIPF gathers and publishes information using simple workflows. These workflows are defined using JSON (see the\netc/workflows directory) and steps in the workflows are implemented as Python classes. Each step in the\nworkflow can require input Data, can produce output Data, and can publish Representations of Data. A typical\nworkflow consists of a number of information gathering steps and a few steps that publish representations to\nfiles or to remote services (e.g. REST, messaging).\n\nWorkflow steps specify what Data they require and what Data they produce. This allows IPF to construct\nworkflows based on partial information - in the case where there are not steps that produce the same Data, an\nentire workflow can be constructed from a single publish step and its required input Data. At the other\nextreme, workflows can be exactly specified with specific steps identified and the outputs of steps bound to\nthe inputs of other steps. A typical workflow (e.g. GLUE 2) specifies what steps to include but lets IPF\nautomatically link outputs to inputs of these steps.\n\nWorkflows can run to completion relatively quickly or they can continuously run. The first type of workflow\ncan be used to run a few commands or look at status files and publish that information. The second type of\nworkflow can be used to monitor log files and publish entries written to those files. Workflows are typically\nrun periodically as cron jobs. The program libexec/run_workflow.py is for executing workflows that complete\nquickly and the program libexec/run_workflow_daemon.py is used to manage long-running workflows. The daemon\n\n## License\n\nThis software is licensed the Apache License Version 2.0.\n\n## Installation\n\nQuickstart instructions are in [docs/Quickstart.md](docs/Quickstart.md).\nMore comprehensive instructions are in [docs/INSTALL.md](docs/INSTALL.md).\n\n## Support Information\n\nThis software is currently maintained by the ACCESS CONECT project.\n\nThe source is maintained in the [ACCESS-CI GitHub](https://github.com/access-ci-org/ipf).  ACCESS-CI resource\nproviders and other members of the ACCESS-CI community are encourage to contribute bug fixes and improvements.\n\nSoftware bugs may be reported as GitHub issues.  ACCESS-CI related support requests should be submitted through\nthe ACCESS-CI ticket system.\n\n## Acknowledgements\n\nThis work was supported by the TeraGrid, XSEDE, FutureGrid, XSEDE 2, and ACCESS CONECT projects under\nNational Science Foundation grants 0503697, 1053575, 0910812, 1548562, and 2138307.\n",
    "bugtrack_url": null,
    "license": "Apache",
    "summary": "The Information Publishing Framework",
    "version": "1.7.1",
    "project_urls": {
        "Homepage": "https://github.com/access-ci-org/ipf"
    },
    "split_keywords": [
        "monitoring",
        "information",
        "gathering",
        "publishing",
        "glue2"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8423886eb416b356a780b3859faa23e26fd088cfb4f5c0d5adaedf7ab7a6dc70",
                "md5": "1af7368be08093f9ada98149abfb2a5b",
                "sha256": "4a7fca37edaf43e985c6f58d014d8c22d06537b2a2f8ab29427f0b351b879cc1"
            },
            "downloads": -1,
            "filename": "ipf-1.7.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1af7368be08093f9ada98149abfb2a5b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 204441,
            "upload_time": "2024-01-24T17:52:09",
            "upload_time_iso_8601": "2024-01-24T17:52:09.621990Z",
            "url": "https://files.pythonhosted.org/packages/84/23/886eb416b356a780b3859faa23e26fd088cfb4f5c0d5adaedf7ab7a6dc70/ipf-1.7.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b5ffdebc271b37d427710ef178b31ded585624534fea393a0fc1463710f3ba54",
                "md5": "c645fc35c9070fc33fa849ebcf0405ef",
                "sha256": "5c5a8ef52be82e7f12f7e2739034c961f9bee259365c2112ae20892d341ece08"
            },
            "downloads": -1,
            "filename": "ipf-1.7.1.tar.gz",
            "has_sig": false,
            "md5_digest": "c645fc35c9070fc33fa849ebcf0405ef",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 148634,
            "upload_time": "2024-01-24T17:52:11",
            "upload_time_iso_8601": "2024-01-24T17:52:11.731049Z",
            "url": "https://files.pythonhosted.org/packages/b5/ff/debc271b37d427710ef178b31ded585624534fea393a0fc1463710f3ba54/ipf-1.7.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-24 17:52:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "access-ci-org",
    "github_project": "ipf",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "ipf"
}
        
Elapsed time: 0.17893s