YUNIKORN-439 has added the utility function to retrieve taskGroups from pod annotation.
This task needs to leverage that function to get taskGroups while creating pkg/cache/application object. For normal apps, we directly retrieve the taskGroups info from the first pod seen by the scheduler.
Similarly, we need to parse the `taskGroupName` for each task (from the pod), and add that to pkg/cache/task object.
There are a few assumptions
- If there are multiple pods in one app. The 1st pod must have the taskGroups defined, or all the pods should have same taskGroups definition.
- If there are multiple task groups defined, different pods that belong to different groups need to set “yunikorn.apache.org/taskGroupName” accordingly.
We need to modify amprotocol.go#ApplicationMetadata and TaskMetadata in order to pass those info to the cache.