/crossIndexUpdateTool_from_bentito

Generate a report about operators' ability to be updated across OpenShift indexes

Primary LanguageHTML

Reporting tool, generates HTML reports for operators updating from one EUS OCP index to another.

Install:

Python 3.x (if not already installed) git-lfs (for large file storage in git, to get the indexes) [see: https://docs.github.com/en/repositories/working-with-files/managing-large-files/installing-git-large-file-storage]

Execute:

pip install -r requirements.txt

Run:

python3 crossIndexUpdateTool.py [-h] [--debug DEBUG] start_index target_index [--needs-attention True|False] [--common-only True|False]

For instance:

`python3 crossIndexUpdateTool.py 4.8 4.10`

will run a report for moving from version of OpenShift 4.8 to 4.10

`python3 crossIndexUpdateTool.py 4.8 4.10 --needs-attention True`

will run a report for moving from version of OpenShift 4.8 to 4.10 showing only the operators that would be problem for such an upgrade.

`python3 crossIndexUpdateTool.py 4.8 4.10 --common-only True`

will run a report for moving from version of OpenShift 4.8 to 4.10 showing only the operators that have a common channel across the range.

`python3 crossIndexUpdateTool.py 4.8 4.10 --output=md`

will run a report and output as markdown (--output=html for HTML output, or leave blank as it's the default)

`python3 crossIndexUpdateTool.py 4.8 4.10 --yes-no=True`

will run a report and output simple 'Yes' or 'No' for whether operator is EUS maintained in the range.


In the repo, resource/index contains the Red Hat Operator indexes which are the databases with the package and bundle information.

The indexes are always changing, so if you want a completely up-to-date report, you must download fresh copies of the indexes.

Special instructions for getting 4.11 RH index:

`docker run --rm --entrypoint cat registry.redhat.io/redhat/redhat-operator-index:v4.11 /var/lib/iib/_hidden/do.not.edit.db > index.db.4.11.redhat-operators`

Note: DeprecationWarning: distutils Version classes are deprecated can safely be ignored.