|
4 | 4 |
|
5 | 5 | ## Overview
|
6 | 6 |
|
7 |
| -The Information Publishing Framework (IPF) is a generic framework used by resource operators to gather and publish |
8 |
| -dynamic resource information in [GLUE 2 serialized format](http://www.ogf.org/documents/GFD.147.pdf). IPF was used |
9 |
| -by the TeraGrid, XSEDE, and XSEDE 2 programs, and is currently being used by the ACCESS-CI program to publish |
10 |
| -high-performance compute cluster information. |
11 |
| - |
12 |
| -IPF gathers and publishes information using simple workflows. These workflows are defined using JSON (see the |
13 |
| -etc/workflows directory) and steps in the workflows are implemented as Python classes. Each step in the |
14 |
| -workflow can require input Data, can produce output Data, and can publish Representations of Data. A typical |
15 |
| -workflow consists of a number of information gathering steps and a few steps that publish representations to |
16 |
| -files or to remote services (e.g. REST, messaging). |
17 |
| - |
18 |
| -Workflow steps specify what Data they require and what Data they produce. This allows IPF to construct |
19 |
| -workflows based on partial information - in the case where there are not steps that produce the same Data, an |
20 |
| -entire workflow can be constructed from a single publish step and its required input Data. At the other |
21 |
| -extreme, workflows can be exactly specified with specific steps identified and the outputs of steps bound to |
22 |
| -the inputs of other steps. A typical workflow (e.g. GLUE 2) specifies what steps to include but lets IPF |
23 |
| -automatically link outputs to inputs of these steps. |
24 |
| - |
25 |
| -Workflows can run to completion relatively quickly or they can continuously run. The first type of workflow |
26 |
| -can be used to run a few commands or look at status files and publish that information. The second type of |
27 |
| -workflow can be used to monitor log files and publish entries written to those files. Workflows are typically |
28 |
| -run periodically as cron jobs. The program libexec/run_workflow.py is for executing workflows that complete |
29 |
| -quickly and the program libexec/run_workflow_daemon.py is used to manage long-running workflows. The daemon |
| 7 | +IPF is a Python program that gathers resource information, formats it in a [GLUE2 standard format (5)](#glue2), and publishes it to a RabbitMQ service. IPF is configured to run one or more “workflows” each defining the steps that IPF executes to collect, format, and publish a specific type of resource information. |
30 | 8 |
|
31 |
| -## License |
32 |
| - |
33 |
| -This software is licensed the Apache License Version 2.0. |
34 | 9 |
|
35 | 10 | ## Installation
|
36 | 11 |
|
37 |
| -Quickstart instructions are in [docs/Quickstart.md](docs/Quickstart.md). |
38 |
| -More comprehensive instructions are in [docs/INSTALL.md](docs/INSTALL.md). |
| 12 | +Three install methods are available and listed below in ease of use order. |
| 13 | + |
| 14 | +1. [Install from Github](docs/install-via-github.md) |
| 15 | +1. [Install via Pip](docs/install-from-pip.md) |
| 16 | +1. [Install via RPM](docs/install-from-rpm.md) (deprecated) |
| 17 | + |
| 18 | + |
| 19 | +## Configure Workflows |
| 20 | + |
| 21 | +After installing IPF, [Configure Workflows](docs/configure-workflows.md) |
| 22 | + |
| 23 | +## Additional Information |
| 24 | + |
| 25 | +* [Best Practices](docs/best-practices.md) |
| 26 | +* [Testing](docs/testing.md) |
39 | 27 |
|
40 | 28 | ## Support Information
|
41 | 29 |
|
42 | 30 | This software is currently maintained by the ACCESS CONECT project.
|
43 | 31 |
|
44 |
| -The source is maintained in the [ACCESS-CI GitHub](https://github.com/access-ci-org/ipf). ACCESS-CI resource |
45 |
| -providers and other members of the ACCESS-CI community are encourage to contribute bug fixes and improvements. |
| 32 | +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. |
| 33 | + |
| 34 | +Software bugs may be reported as GitHub issues. ACCESS-CI related support requests should be submitted through the ACCESS-CI ticket system. |
46 | 35 |
|
47 |
| -Software bugs may be reported as GitHub issues. ACCESS-CI related support requests should be submitted through |
48 |
| -the ACCESS-CI ticket system. |
| 36 | +## License |
| 37 | + |
| 38 | +This software is licensed the Apache License Version 2.0. |
49 | 39 |
|
50 | 40 | ## Acknowledgements
|
51 | 41 |
|
|
0 commit comments