The PDB event is a historical record, it's not a good choice to judge the pdb latest status based on it.
So, use the `stataus` instead of `event` to check it.
Closes: #476
Signed-off-by: Jian Zhang <jiazha@redhat.com>
* feat: added the ability to set a user default AI provider
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: added the ability to set a user default AI provider
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: s3 based caching
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: s3 based caching
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* updated README.md
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* update README.md
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* updated README.md
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* chore: region is a must have
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* chore: clarified remove command
* updated remove.go
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* chore: test fmt causing issues will open another pr
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
---------
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: added the ability to set a user default AI provider
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: added the ability to set a user default AI provider
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* chore: added provider to json output
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
---------
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* gofmt the files
Signed-off-by: Peter Pan <Peter.Pan@daocloud.io>
* add UT and goFMT to PR Gate (Github Action for PR)
Signed-off-by: Peter Pan <Peter.Pan@daocloud.io>
---------
Signed-off-by: Peter Pan <Peter.Pan@daocloud.io>
Co-authored-by: Alex Jones <alexsimonjones@gmail.com>
* fix: stop execution after matching condition in RunAnalysis()
The commit fixes the issue where the RunAnalysis() function continues execution even after matching a condition. The fix ensures that the execution stops at the end of the corresponding if statement, improving the control flow and preventing unnecessary processing.
Signed-off-by: Matthis Holleville <matthish29@gmail.com>
* feat: include filters parameter in AnalyzeRequest initialization
The commit introduces a new feature where the filters parameter is included in the initialization of the AnalyzeRequest. This enhancement allows for more specific analysis by specifying filters during the analysis process.
Signed-off-by: Matthis Holleville <matthish29@gmail.com>
---------
Signed-off-by: Matthis Holleville <matthish29@gmail.com>
Before, the default value set for the `--kubeconfig` flag prevented the
`KUBECONFIG` env variable to be ever taken into consideration. This
behavior has now been fixed.
If `--kubeconfig` flag is set, it takes precedence over the `KUBECONFIG` env
variable.
fixes#331
Signed-off-by: Patrick Pichler <git@patrickpichler.dev>
Co-authored-by: Patrick Pichler <git@patrickpichler.dev>
Before, there was no failure reported by the netpol analyzer, if the
matcher on the policy doesn't match any pods.
Signed-off-by: Patrick Pichler <git@patrickpichler.dev>
Having a pointer to a range variable will always yield the latest value
the loop sees. This leads to subtle bugs. To prevent this from
happening, the range variable was assigned to a temp variable, which is
then referenced as a pointer.
Signed-off-by: Patrick Pichler <git@patrickpichler.dev>
Co-authored-by: Patrick Pichler <git@patrickpichler.dev>
Before the filter inside the func literal was capturing the value from
the outer loop. This is a subtle mistake, since in combination with
running the function literal as go routine, the value of filter could
have already changed at invocation time.
To fix this, the filter is now passed in as an argument to the func
literal.
Signed-off-by: Patrick Pichler <git@patrickpichler.dev>
Co-authored-by: Patrick Pichler <git@patrickpichler.dev>
Instead of storing cached values in the config yaml, they are now stored
under these OS specific locations:
* Linux: `~/.cache/k8sgpt`
* MacOS: `~/Library/Caches`
* Windows: `%LocalAppData%\cache`
Additionally a `Cache` package and interface has been introduced.
Currently there are two implementations:
* Noop - Doesn't do anything
* FileBased - Stores data in files under the locations listed above
fixes#323
Signed-off-by: Patrick Pichler <git@patrickpichler.dev>
* feat: async calls
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: added concurrency settings
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
* feat: added in ability to set max concurrency
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
---------
Signed-off-by: Alex Jones <alexsimonjones@gmail.com>
Co-authored-by: Matthis <99146727+matthisholleville@users.noreply.github.com>
* feat: allow to set a baseURL for OpenAI providers
This allows to run local models that have a compatible OpenAI API, or
for instance use a proxy.
Signed-off-by: mudler <mudler@mocaccino.org>
* feat: allow to set baseURL in the auth subcommand
Signed-off-by: mudler <mudler@mocaccino.org>
---------
Signed-off-by: mudler <mudler@mocaccino.org>
Co-authored-by: Alex Jones <alexsimonjones@gmail.com>
Co-authored-by: Matthis <99146727+matthisholleville@users.noreply.github.com>
* feat: expose metrics path & init analyzer errors metrics
This commit add metrics path & the analyzer error metrics in the codebase. The changes have been made across all analyzers and include the addition of a new metric with label values for the analyzer's name, analyzed object's name, and namespace. The metric's value is set to the length of the analyzer objects failures.
Signed-off-by: Matthis Holleville <matthish29@gmail.com>
* feat: add metric to cronjob & deployment & netpol
Signed-off-by: Matthis Holleville <matthish29@gmail.com>
* feat: expose metric to NodeAnalyzer
Signed-off-by: Matthis Holleville <matthish29@gmail.com>
---------
Signed-off-by: Matthis Holleville <matthish29@gmail.com>