RFC: sysinfo collectibles dynamically defined per job #3601
Replies: 12 comments
-
@willianrampazzo not sure, but maybe this is related to the new assets architecture, right? |
Beta Was this translation helpful? Give feedback.
-
I'm not sure. This seems a list of commands to be executed during a stage of the job, not a requirement that is needed but the test to run. We need to elaborate more on the idea to decide that. |
Beta Was this translation helpful? Give feedback.
-
@willianrampazzo ok, not a problem. I thought that the requirements modules would include files in the system too. |
Beta Was this translation helpful? Give feedback.
-
@beraldoleal yes, it includes files, but as far as I could understand, the proposal here is to execute a list of commands during the sysinfo. The list of commands may fit into the requirements for the test, it is just a matter of specifying what is needed and how it can fit as a requirement for the resolver. The proposal here, for me, seems a little vague. |
Beta Was this translation helpful? Give feedback.
-
@willianrampazzo The idea here is to have sysinfo collectibles per test. We have many tests across categories, and the sysinfo for those are defined for all tests. We need a way to have specific sysinfo per test, and defining them in the test was something I could think of. |
Beta Was this translation helpful? Give feedback.
-
@willianrampazzo @beraldoleal @clebergnu This was dormant for a while now. Let me rephrase the requirement. When we define the sysinfo collectibles, they are common for all tests. But we do not need them for all tests. So, collect all needed sysinfo for all tests, with the current model, we are forced to do one of these 2:
The proposal here is: How and where do we define it, is the next thing to decide, if this approach looks fine. |
Beta Was this translation helpful? Give feedback.
-
@narasimhan-v I got it now. I think having sysinfo per test is a valid use case. I like the approach of test docstrings, but it needs to be easy to use and easy to parse. This looks really similar to what I'm working in the Requirements Resolver, but with a different objective. To make it easier to parse, I would go with something more specific. We could try the same proposed approach from the BP002 (https://avocado-framework.readthedocs.io/en/80.0/blueprints/BP002.html#requirements-representation-as-metadata-on-test-docstring) like:
The natural evolution could be to add support to other representations, just like in the BP002 for Requirements (https://avocado-framework.readthedocs.io/en/80.0/blueprints/BP002.html#requirements-representations). |
Beta Was this translation helpful? Give feedback.
-
@willianrampazzo Sure, that sounds interesting and way better to handle all requirements. How far along are we ? Is there any way I can also pitch in ? |
Beta Was this translation helpful? Give feedback.
-
What I mean was that the representation of the sysinfo could be the same as the requirements, but I don't think this would fit the requirements resolver. I think the sysinfo collection is related to pre and post execution of a test, while the requirements feature is a pre test task. I can see both features implemented independently. The Requirements Resolver is on hold until we advance with the N(ext)Runner development, but I can see the development of sysinfo plugin in the way you need right now without any dependency. |
Beta Was this translation helpful? Give feedback.
-
@willianrampazzo I assume the implementation of the requirements is going to be independent of whether it is pre or post ? If so, why don't we have pre/post tag also part of the requirement and handle it wherever needed ? |
Beta Was this translation helpful? Give feedback.
-
I think that is possible. My suggestion to have your plugin developed now, independent of any other thing, is to speed up the availability, as the requirements resolver development is on hold for now. |
Beta Was this translation helpful? Give feedback.
-
Sure, got it @willianrampazzo |
Beta Was this translation helpful? Give feedback.
-
Similar to tags per test, can we have sysinfo (files, commands, profilers) defined per test, and added to the sysinfo files per job basis ?
Example:
Beta Was this translation helpful? Give feedback.
All reactions