Skip to content

Commit

Permalink
Update for 3 install methods
Browse files Browse the repository at this point in the history
This is a combination of 5 commits.
1st commit message:
===================

CTT-221 create an install-from-repo method

create prep script
new script ipf_configure_modules
config file for ipf_configure_modules removes need for cmdline options
all steps in QUICKSTART can be cut-n-paste
configure_extmodules looks for multiple conf files
wfm - WorkFlow Manager
wfm - use init.d files
wfm - update init-WORKFLOW template, assume running as non-root
new script to save_configs
prep will restore config links
add FAQ

This is the commit message #2:
==============================

CTT-303 Add version to IPF Quick Install

fixes #15
update FAQ

This is the commit message #3:
==============================

CTT-304 backwards compatible quick install

fixes #14

This is the commit message #4:
==============================

Update README for 3 install methods

Summary of changes to be committed:

modified:   README.md
  - Now a short overview, 3 install methods, and support info

new file:   docs/history.md
  - The old, long overview from README

deleted:    docs/Quickstart.md
  - broken into the following files...
new file:   docs/best-practices.md
new file:   docs/configure-workflows.md
new file:   docs/install-from-pip.md
  - Just the PIP parts
new file:   docs/testing.md

renamed:    QUICKSTART.md -> docs/install-from-github.md
renamed:    FAQ.md -> docs/install-from-github-FAQ.md

renamed:    docs/INSTALL.md -> docs/install-from-rpm.md
  - in all it's original glory, no changes made

All of the following still have 'xsede' at the top
assuming no updates have been made for ACCESS
and these should probably go away, eventually
renamed:    docs/COMMUNITY_SOFTWARE_PROVIDER.md -> docs/xsede/COMMUNITY_SOFTWARE_PROVIDER.md
renamed:    docs/COMMUNITY_SOFTWARE_SP_SETUP.md -> docs/xsede/COMMUNITY_SOFTWARE_SP_SETUP.md
renamed:    docs/Configuring.Service.Files.OLD.md -> docs/xsede/Configuring.Service.Files.OLD.md
renamed:    docs/Configuring.Service.Files.md -> docs/xsede/Configuring.Service.Files.md
renamed:    docs/GENERIC_PUBLISHER.md -> docs/xsede/GENERIC_PUBLISHER.md
renamed:    docs/INSTALL.OLD -> docs/xsede/INSTALL.OLD
  • Loading branch information
andylytical committed Jan 7, 2025
1 parent d053580 commit 7471ab1
Show file tree
Hide file tree
Showing 34 changed files with 1,116 additions and 474 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@
build/
dist/
ipf.egg-info/
*.swp
54 changes: 22 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,48 +4,38 @@

## 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
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.

## 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).
Three install methods are available and listed below in ease of use order.

1. [Install from Github](docs/install-via-github.md)
1. [Install via Pip](docs/install-from-pip.md)
1. [Install via RPM](docs/install-from-rpm.md) (deprecated)


## Configure Workflows

After installing IPF, [Configure Workflows](docs/configure-workflows.md)

## Additional Information

* [Best Practices](docs/best-practices.md)
* [Testing](docs/testing.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.
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.

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

This software is licensed the Apache License Version 2.0.

## Acknowledgements

Expand Down
Loading

0 comments on commit 7471ab1

Please sign in to comment.