Skip to content

Refactor inventory task base types#394

Merged
kyasbal merged 15 commits into
GoogleCloudPlatform:epic/issue-373from
kyasbal:epic/issue-373-refactor-relationship-task
Dec 3, 2025
Merged

Refactor inventory task base types#394
kyasbal merged 15 commits into
GoogleCloudPlatform:epic/issue-373from
kyasbal:epic/issue-373-refactor-relationship-task

Conversation

@kyasbal

@kyasbal kyasbal commented Dec 3, 2025

Copy link
Copy Markdown
Member

We had RelationshipTask to gather key information such as IP,node names needed in the later task. This is the utility to have multiple tasks which can provide the key information and aggregates them in the merger task.

The consumer of the key information doesn't need to be aware of which provider tasks are available or not.
This task structure itself doesn't necessary to gather relationship-like information, thus I generalized the name to InventoryTask.

In addition to this naming change, The API was hard to use because users needed to set the proper task ID and label with building tasks with calling the right RelationshipTask functions. This change capsules the task construction logics inside of the InventoryTaskBuilder struct to make it easier to use.

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs
…from Cloud Logging (GoogleCloudPlatform#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist
* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs
* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @kyasbal, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request refactors the core task types responsible for gathering and merging inventory data within the inspection system. The previous RelationshipTask has been generalized and renamed to InventoryTask to encompass a wider range of data aggregation scenarios. Additionally, a new InventoryTaskBuilder has been introduced to streamline the creation of these tasks, simplifying the API and improving usability by encapsulating complex task construction logic. This change aims to provide a more flexible and extensible system for associating information from various log sources.

Highlights

  • Task Renaming: The RelationshipTask concept has been generalized and renamed to InventoryTask to better reflect its broader utility beyond just relationship-like information, allowing for more flexible data aggregation.
  • API Simplification: A new InventoryTaskBuilder struct has been introduced to encapsulate the logic for constructing InventoryTask and DiscoveryTask instances. This change simplifies the API, making it easier and safer to use by abstracting away manual task ID and label management.
  • Decoupled Data Handling: The framework now explicitly decouples data consumers from data providers. Consumers can depend solely on the InventoryTask for consolidated data without needing to know about the individual DiscoveryTask providers, promoting a more modular and extensible system.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors RelationshipTask into a more generic InventoryTask and introduces the InventoryTaskBuilder to simplify task creation. This is a good generalization that improves the API's usability. The code is well-structured. My review includes feedback on a potential issue in the discovery task registration logic that could lead to silently dropped results during aggregation, and some minor documentation typos that could improve clarity.

Comment on lines +87 to +96
found := false
for _, ref := range s.discoveryTaskRefs {
if ref.ReferenceIDString() == taskID.ReferenceIDString() {
found = true
break
}
}
if !found {
s.discoveryTaskRefs = append(s.discoveryTaskRefs, taskID.Ref())
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The deduplication logic for discovery tasks in the DiscoveryTask method can lead to incorrect behavior by silently ignoring some tasks. The check ref.ReferenceIDString() == taskID.ReferenceIDString() prevents registration of multiple discovery tasks that share the same base reference ID, even if they have different implementation hashes (e.g., my-discovery#impl1 and my-discovery#impl2). As a result, the InventoryTask will only be aware of the first registered task and won't aggregate results from all intended discovery tasks.

This contradicts the goal of aggregating results from all relevant discovery tasks. A possible fix would involve tracking each unique task implementation, but this may be constrained by the current implementation of coretask.GetTaskResultOptional.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is fine because a task graph won't include multiple implementations of a task after the resolution.

Comment thread pkg/core/inspection/taskbase/inventory_task.go Outdated
kyasbal and others added 2 commits December 3, 2025 10:03
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: kyasbal <kyasbal1994@gmail.com>
@kyasbal kyasbal merged commit 0436439 into GoogleCloudPlatform:epic/issue-373 Dec 3, 2025
7 of 8 checks passed
@kyasbal kyasbal deleted the epic/issue-373-refactor-relationship-task branch December 3, 2025 01:29
kyasbal added a commit that referenced this pull request Dec 4, 2025
…types (#399)

* feat: Dynamically generate Cloud Logging resource name input forms based on active tasks in the task graph. (#374) (#376)

* feat: Dynamically generate Cloud Logging resource name input forms based on active tasks in the task graph.

This is a fix of bug input forms weren't disappeared once it was added even a feature requesting it was turned off.

* fix issue pointed by gemini-code-assist

* Adding several minor changes to improve testability before migrating the existing k8s audit parser to the new audit parser (#375)

* Added NewLogSorterByTimeTask and test utilities for inspectiontaskbase package

* feat: Show orphaned log when no parser associated the log to any timeline and add namespace level timeline

* fix issues pointed out by gemini-code-assist

* Adding tasks for log summary generation and history modifier for error audit logs (#377)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding tasks related to merge manifests from audit logs (#379)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Add ManifestGenerator related tasks

* fix issues pointed by gemini-code-assist

* Adding testchangeset utility (#382)

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Fix flaky test on commonk8slogaudit tasks (#388)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Adding new type definitions in contract, enum values of history data and resourcepaths

This commit includes contract related changes of the later task implementations.

* fix issue pointed by gemini-code-assist

* fix flaky test because of string list order

* Add task IDs, types used in task output, new revision state types and README about the new  k8saudit tasks (#384)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Adding new type definitions in contract, enum values of history data and resourcepaths

This commit includes contract related changes of the later task implementations.

* fix issue pointed by gemini-code-assist

* Revision sort criteria wasn't right (#386)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Adding new type definitions in contract, enum values of history data and resourcepaths

This commit includes contract related changes of the later task implementations.

* fix issue pointed by gemini-code-assist

* fix bug the revision sort criteria was not right

* Added comments on existing task types (#387)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Adding new type definitions in contract, enum values of history data and resourcepaths

This commit includes contract related changes of the later task implementations.

* fix issue pointed by gemini-code-assist

* Add comments on existing tasks

* Adding the basic revision recorder for k8s audit log (#389)

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Adding manifest based history-modifier tasks and manifest utils

* Add the basic revision recording tasks for k8s audit logs

* fix issues pointed by gemini-code-assist

* Migrate pseudo subresource recorder in the previous k8s audit log parser tasks to the newly implemented k8s audit parser (#390)

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Adding manifest based history-modifier tasks and manifest utils

* Add the basic revision recording tasks for k8s audit logs

* fix issues pointed by gemini-code-assist

* Migrate pseudo recorders to the v2 k8s audit log parser tasks

---------

Signed-off-by: kyasbal <ikakeru@google.com>

* Adding new PodPhase recorder and register all defined tasks for k8s audit log parser package (#391)

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* Add podphase task and task registrations for the v2 audit parser

* fix issue pointed by gemini-code-assist

* Remove unused legacy parsers and migrate OSS log parsers to depend on the new audit log parsers (#392)

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Remove the unused legacy parsers and migrated OSS parsers to depend on the new parser

* fix issue pointed by gemini-code-assist

* Refactor inventory task base types (#394)

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Refactored relationship task and now it's named as InventoryTask

* Update pkg/core/inspection/taskbase/inventory_task.go

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: kyasbal <kyasbal1994@gmail.com>

* fix issue pointed by gemini-code-assist

---------

Signed-off-by: kyasbal <kyasbal1994@gmail.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* Adding node name inventory and refactored resource grouping logic (#395)

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Refactored relationship task and now it's named as InventoryTask

* Update pkg/core/inspection/taskbase/inventory_task.go

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: kyasbal <kyasbal1994@gmail.com>

* fix issue pointed by gemini-code-assist

* Adding nodename inventory task and refactored resource groups not to operate raw string

* fix issue pointed by gemini-code-assist

---------

Signed-off-by: kyasbal <kyasbal1994@gmail.com>
Signed-off-by: kyasbal <ikakeru@google.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* Improved container ID discovery tasks and implemented pod uid discovery tasks (#396)

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* fix issue pointed by gemini-code-assist

* Migrate containerID discovery tasks to use the inventory task and implemented resource UID inventory

* Improved containerd,kubelet and controlplane ID matchers to use inventory tasks

* Adding inventory tasks for IP leasing history and NEG names (#397)

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Adding grouping related tasks and tasks for gathering k8s audit logs from Cloud Logging  (#378)

* Added new fieldset related tasks and history modifiers for error audit logs

* fix issues pointed by gemini-code-assist

* Added new fieldset related tasks and history modifiers for error audit logs

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Adding k8s audit log parser tasks

* Added LogSorterTask that sorts logs before ingesting them to the manifest generator
* Added ChangeTargetGrouperTask that groups logs by the resource paths actually modified with the audit log
* Added NonSuccessLogGrouperTask that groups logs by resource paths for non succeeded audit logs

* fix issues pointed by gemini-code-assist

* Added several test asserter for changeset testing

* fix issues pointed by gemini-code-assist

* fix issues pointed by gemini-code-assist

* Implemented inventory for IP leases and NEG names

* fix issues pointed by gemini-code-assist

* bug: deletionGracePeriodSeconds=0 was always treated as completely removed even when finalizers exists (#398)

---------

Signed-off-by: kyasbal <ikakeru@google.com>
Signed-off-by: kyasbal <kyasbal1994@gmail.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants