Skip to content
This repository has been archived by the owner on Jun 29, 2022. It is now read-only.

Add eap fact that combines all other facts to indicate easily if EAP is installed or not #469

Closed
mdvickst opened this issue Nov 14, 2017 · 4 comments

Comments

@mdvickst
Copy link

Opening a new issue


Specify type:

  • Enhancement

Bug severity (if applicable):

  • Medium

Description:

It would be great to have a eap fact that uses the other EAP facts to determine if EAP is likely installed.

The logic could be something like:
if (count(common-files) > 1 | count(locate-jboss-modules.jar ) > 1 | jboss.eap.packages > 1 | jboss eap.processes > 1 | jboss.eap.running-paths > 1) then "Yes"
elif (eap.jboss-user is present | count(eap.init-files) > 1) then "Maybe"
else "No"


@noahl
Copy link

noahl commented Nov 16, 2017

Just talked with Mark. Here are my notes from the meeting:

  • We need a way to distinguish the community and enterprise versions. They typically use JBossEULA.txt, version.txt, and the manifest file for that. Rho has implemented the first two but not the last one.

  • EAP 5 and 6 are most common. We have been targeting EAP 6 and 7, but we should go backwards and work on 5 too. 4 would be good, but is less important than 5.

  • We would like the last modified date of whatever file we are using to determine the JBoss version.

  • We would like a single fact that sums up information about EAP. It would either have the EAP version (if we've positively identified a version of EAP), just "EAP" if it's an unknown version, or it might say "Maybe" if we're not sure if EAP is on the machine or "No" if we see no indicators of EAP being on the machine.

  • "Maybe" outcomes are difficult, because customers often refuse to go back and investigate a certain machine again. Whenever possible, we should make sure that we get all of the information we need the first time around.

  • In addition to the summary fact, we need to keep the supporting information so we have arguments to back up our assessment.

@mdvickst , please let me know if there's anything I got wrong or missed!

@mdvickst
Copy link
Author

This is perfect!

@kdelee
Copy link

kdelee commented Dec 1, 2017

@noahl @mdvickst

This issue gets at a useability issue that is common among other facts, which is that people consuming these reports want to be able to do things like sort on columns of data, and this is difficult to do with heterogeneous strings that are different from host to host.

For example, here are some facts that could be broken up:

fact data type
jboss.eap.init-files.present boolean
jboss.eap.init-files.list list of string
jboss.eap.jboss-user.present boolean
jboss.eap.jboss-user.list list of string
jboss.eap.processes.count integer
jboss.eap.processes.list list of string (names of processes)

This will make it much easer for users to derive useful information from the reports and make better use some of the hueristic facts, like the users and processes has the potential for false positives, but if they can sort on found or count, they could then use their judgement.

An added benefit is this will make the facts much more testable!

noahl added a commit that referenced this issue Dec 4, 2017
Add summary fact for JBoss EAP information
@noahl noahl mentioned this issue Dec 4, 2017
@noahl
Copy link

noahl commented Dec 4, 2017

PR #503 addressed some of the points in this issue. I just filed #508 and #509 to track other parts, and renamed #440 to cover the full task of detecting EAP 4 and 5. Between them all, I think we have all of Mark's feedback from this issue spread into bite-sized pieces. I plan to close this issue and use the three I mentioned to track the remaining work. @mdvickst please feel free to reopen if you think there is anything I missed, or if you just want this issue.

@noahl noahl closed this as completed Dec 4, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants