Skip to content

Relationship of convert2rhel json output and the data that Insights ingests

Toshio Kuratomi edited this page Sep 27, 2023 · 1 revision

Background

It is expected that the json output of convert2rhel's pre-conversion assessment report will not be exactly what the Insights Tasks frontend needs to produce its GUI. So there is a need for a transformation layer between convert2rhel and the Insights frontend. As of the Conversions MVP in October, 2023, that layer lives in the script that invokes convert2rhel on the client (in the future this may move into a plugin to Tasks).

However, some changes to the data belong inside of convert2rhel rather than inside of the transformation layer. We should list our criteria here:

Criteria

Over time, we can add more criteria here or decide some things on a case by case basis.

Transformation Layer

  • Does the format make convert2rhel's output more complex for no reason? Examples:
    • Adds fields that we will never populate
    • Uses more complex data structures than what is natural to fit the data convert2rhel exports

Convert2rhel

  • Does the change in format address an incompatibility without changing the shape of the data? Examples:
    • Changing the name of an entry's key.
  • Does the change better fit the convret2rhel data than the current data structure? (In some cases, switching from a list to a dict or vice versa may better fit the convert2rhel data and should be done there).

Time considerations

Due to the fact that convert2rhel has a time-based release schedule whereas Insights, Tasks, and the scripts can be pushed when a feature is judged to be complete, we will sometimes need to make changes to the format in the Translation Layer even if it belongs in convert2rhel. When we do this, we should open a jira ticket to correct the convert2rhel data in the next convert2rhel release.