oamg / leapp

Leapp - Application & OS Modernization Framework (For in-place upgrades, follow leapp-repository)
https://oamg.github.io/leapp/
Apache License 2.0
86 stars 69 forks source link

Extend information from leapp saved to leappdb #847

Closed dkubek closed 4 months ago

dkubek commented 10 months ago

Extend leappdb for leapp-inspector

This commit combines multiple additions to the leapp database.

First addition is tracking of entity metadata. The Metadata model stores the metadata of entities such as Actor or Workflow. This data is stored in a new table metadata of the leapp.db file.

  1. metadata of discovered actors.

    For an actor, the metadata stored contain:

    `class_name`    - the name of the actor class
    `name`          - the name given to the actor
    `description`   - the actor's description
    `phase`         - phase of execution of the actor
    `tags`          - names of any tags associated with an actor
    `consumes`      - list of all messages the actor consumes
    `produces`      - list of all messages the actor produces
    `path`          - the path to the actor source file
  2. workflow metadata.

    For a workflow, the metadata stored contain:

    name - name of the workflow short_name - short name of the workflow tag - workflow tag description - workflow description phases - all phases associated with the workflow

Next addition is tracking of dialog question. Previously leapp was not able to detect the actual question asked from the user as it could be generated dynamically when actor is called and depend on the configuration of the user's system.

Last addition includes storing the actor exit status. Exit status is now saved as an audit event actor-exit-status. Exit status 0 represents successful execution or StopActorExecution/StopActorExecutionError, while 1 indicates an unexpected and unhandled exception.

These changes collectively improve the metadata handling capabilities of, ensuring accurate storage and retrieval of essential information for various entities.

github-actions[bot] commented 10 months ago

Thank you for contributing to the Leapp project!

Please note that every PR needs to comply with the Leapp Guidelines and must pass all tests in order to be mergeable. If you want to request a review or rebuild a package in copr, you can use following commands as a comment:

To launch regression testing public members of oamg organization can leave the following comment:

Please open ticket in case you experience technical problem with the CI. (RH internal only)

Note: In case there are problems with tests not being triggered automatically on new PR/commit or pending for a long time, please consider rerunning the CI by commenting leapp-ci build (might require several comments). If the problem persists, contact leapp-infra.

pirat89 commented 4 months ago

/packit copr-build

pirat89 commented 4 months ago

rebased to fix the test execution

pirat89 commented 4 months ago

@dkubek seems good to me :100: I will do some testing yet on rhel8 to be sure and I think we can squash&merge it.

pirat89 commented 4 months ago

/packit copr-build