Commit Graph
863 Commits
Author SHA1 Message Date
Darshan Jain 7c75414dfa add @ddjain to CODEOWNERS (#1421)
Signed-off-by: ddjain <darjain@redhat.com>
2026-06-25 08:32:28 -04:00
Shivansh Katiyar 5a76825c57 fix(hogs): correct IO disk space measurement formula (#1402)
The IO hog scenario reported negative disk space values because:
1. disk_space from get_node_resources_info() returns availableBytes
   (free space), not used space
2. The formula subtracted from node_resources_end (misleadingly named,
   actually measured 3s after pod deploy) instead of node_resources_start

When the IO hog writes data, available space decreases. The original
formula (avg - end) produced negative values. The correct formula is
(start - avg) which measures how much available space was consumed.

Tested on AKS (2-node cluster) with io-write-bytes=512m:
- Before: -512.24 MB, -495.16 MB, -23.72 MB (5/5 negative)
- After:  +512.38 MB, +512.23 MB, +500.48 MB (3/3 correct)

Signed-off-by: Shiva <shiva@users.noreply.github.com>
Signed-off-by: SK8-infi <shivansh.katiyar1712@gmail.com>
2026-06-25 17:42:52 +05:30
augmentcode[bot]andlnx01 03416ddbb6 test: migrate node_scenarios to tests_v2 pytest framework (#1400)
* test: add node_scenarios pytest migration under tests_v2

Migrate the node chaos coverage from the legacy CI/tests/test_node.sh into the v2 pytest framework at CI/tests_v2/scenarios/node_scenarios/.

- test_node_scenarios.py (TestNodeScenarios extends BaseScenarioTest): reboot and stop/start happy paths, node_name vs label_selector targeting, node recovery with finalizer, a control-plane safety guard, and negative cases (invalid selector, invalid node, missing actions, unsupported cloud type, unknown action).

- scenario_base.yaml: single node_scenarios entry (cloud_type docker, worker-only) patched per test.

- Register the node_scenarios marker in pytest.ini and document the scenario in CI/tests_v2/README.md.

Part of #1398. The coupled legacy move + workflow edit is left for a maintainer (the bot lacks GitHub App workflows permission); see PR description.

* test: address node_scenarios review feedback

- Reboot happy path now runs with kube_check: True so Krkn waits for the
  node to go Unknown then Ready, eliminating the race where wait_node_ready
  could pass against a stale Ready=True before the disruption propagated.
- Finalizer ensure_node_container_running now polls for Ready (bounded) when
  given k8s_core and logs non-zero 'start' exits, matching the docstring
  contract so a rerun never picks up an unrecovered node.
- Clarify the parallelism note: first/last worker separation only applies on
  multi-worker clusters (CI's 2-worker kind-config.yml); single-worker dev
  clusters share the node and rely on test ordering.

* fix: make node happy-path tests resilient to KinD multi-CP API LB

The reboot/stop_start happy paths failed in the Tests v2 job with
"Response ended prematurely": with kube_check enabled, Krkn's docker node
plugin polls the kube API (wait_for_unknown_status/wait_for_ready_status)
for ~40-50s after the disruption, and krkn-lib does not retry a transient
connection drop from the multi-control-plane KinD haproxy API load balancer.
The docker action itself succeeded in <0.5s.

Run both happy paths with kube_check: False so Krkn performs the action and
exits cleanly, and prove real disruption deterministically via the node
container's State.StartedAt advancing (runtime-level evidence, independent of
node-status timing). Recovery is still verified with the resilient test-side
wait_node_ready poll. README updated to match.

* refactor: move reusable node/container test helpers to lib/utils

Per review feedback, relocate the generic node-level helpers out of the
node_scenarios test module into the shared CI/tests_v2/lib/utils.py so future
node/container tests can reuse them: wait_node_ready, container_runtime,
container_started_at, assert_container_cycled, ensure_node_container_running,
and assert_kraken_marker. The test module now imports them; behavior is
unchanged and all 8 tests still collect.

* docs: fix duplicated word in tests_v2 README scenario list

* test: skip redundant container start in node finalizer to avoid noisy warnings

* test: honor KIND_EXPERIMENTAL_PROVIDER when selecting container runtime

* docs: align node finalizer wording with start-if-stopped behavior

* docs: align node test module docstring with start-if-stopped finalizer

* test: sort schedulable worker nodes for deterministic targeting

* test: assert combined node_stop_start_scenario marker in stop/start happy path

---------

Co-authored-by: augmentcode[bot] <185243770+augmentcode[bot]@users.noreply.github.com>
2026-06-15 14:51:15 +05:30
augmentcode[bot]andlnx01 8265c358d3 test: migrate memory_hog functional test to tests_v2 (closes #1396) (#1397)
* test: migrate memory_hog functional test to tests_v2 (closes #1396)

Add a pytest v2 functional test for the memory hog scenario (hog_scenarios),
mirroring the cpu_hog migration. Covers execution success, node-selector
targeting, duration/memory-size parameter handling, hog pod lifecycle and
cleanup, and graceful failure on invalid selector / invalid config.

- CI/tests_v2/scenarios/memory_hog/test_memory_hog.py: TestMemoryHog with
  functional + memory_hog markers and three no_workload tests.
- CI/tests_v2/scenarios/memory_hog/scenario_base.yaml: flat hog config tuned
  for functional testing (light fixed memory-vm-bytes, short duration).
- Register the memory_hog marker in pytest.ini and document the scenario in
  the tests_v2 README.

* test: extract shared hog-pod/node helpers into tests_v2 lib/utils

Lift the duplicated pod-prefix and schedulable-node helpers out of the cpu_hog and memory_hog test modules into CI/tests_v2/lib/utils.py as parameterized, reusable functions (list_pods_by_prefix, wait_for_scheduled_pod_by_prefix, wait_for_no_pods_by_prefix, schedulable_worker_nodes) and reuse them from both scenarios. Addresses review feedback on #1397.

---------

Co-authored-by: augmentcode[bot] <185243770+augmentcode[bot]@users.noreply.github.com>
2026-06-12 09:02:39 +05:30
augmentcode[bot]andlnx01 3a77f487da test: migrate cpu_hog functional test to tests_v2 (closes #1390) (#1391)
* test: migrate cpu_hog functional test to tests_v2 (closes #1390)

Migrate the legacy CI/tests/test_cpu_hog.sh to the v2 pytest framework
under CI/tests_v2/scenarios/cpu_hog/, preserving parity with the legacy
flow and adding stronger functional and negative coverage.

- Add scenario_base.yaml (flat hog_scenarios config, patched per test)
- Add test_cpu_hog.py with TestCpuHog(BaseScenarioTest):
  - success: hog pod created on node-selector target, run exits 0, pod cleaned up
  - negative: node-selector matching zero nodes fails gracefully
  - negative: missing mandatory hog-type fails at config parsing
- Register cpu_hog marker in pytest.ini
- Document cpu_hog coverage in README.md

* test: kill background Kraken proc on any cpu_hog success-test failure

Broaden the success-path teardown so a poll/assert failure before
proc.communicate() also kills the background Kraken process, preventing
a lingering cpu-hog- pod from stressing the node and racing --reruns.

Addresses Deep Code Review feedback on PR #1391.

---------

Signed-off-by: augmentcode[bot] <185243770+augmentcode[bot]@users.noreply.github.com>
Co-authored-by: augmentcode[bot] <185243770+augmentcode[bot]@users.noreply.github.com>
2026-06-11 21:37:52 +05:30
augmentcode[bot]andlnx01 5a532190aa test: attach krkn execution logs to HTML report and assert scenario executed (#1395)
* test: attach krkn execution logs to HTML report and assert scenario executed

CI/tests_v2 enhancements for observability and false-positive guarding:

- run_kraken fixture stashes stdout/stderr/returncode on request.node so the
  report hook can attach them.
- conftest pytest_runtest_makereport renders the krkn log as a timestamp/level/
  message table via pytest_html.extras for every test (pass or fail).
- conftest pytest_terminal_summary prints an execution-evidence table and writes
  a markdown summary to $GITHUB_STEP_SUMMARY when running in GitHub Actions.
- utils adds SCENARIO_EXECUTION_MARKERS, an EXECUTION_EVIDENCE registry, and
  assert_scenario_executed() that fails happy-path tests when krkn exits 0 but
  no scenario-specific marker is present. Skipped under KRKN_TEST_DRY_RUN=1.
- pod_disruption, storage_throttle, and application_outage happy-path tests now
  call assert_scenario_executed. Negative tests remain exempt.

Closes #1394

* test: stash krkn logs on timeout and add log-path hint to evidence assert

Address Deep Code Review feedback on PR #1395:
- run_kraken now catches subprocess.TimeoutExpired, stashes partial
  stdout/stderr with a synthetic rc=124 so timed-out runs still attach
  logs to the HTML report.
- assert_scenario_executed failure message now includes the
  'Full logs:' tmp_path hint, matching assert_kraken_success/failure.

---------

Co-authored-by: augmentcode[bot] <185243770+augmentcode[bot]@users.noreply.github.com>
2026-06-11 18:41:12 +05:30
Shivansh Katiyar f8c0766ebc Implement Power Outage Rollback Feature (#927)
Signed-off-by: SK8-infi <shivansh.katiyar1712@gmail.com>
2026-06-05 10:16:11 -04:00
Paige Patton a24f4440ec adding shell checks in pvc scenario (#1381)
Assisted By: Claude Code:

Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-06-04 16:45:49 -04:00
Nitesh SinghandPaige Patton 53a81e8e90 feat: Add exec_with_shell_fallback method and fix failing unit tests (#1225)
- Add exec_with_shell_fallback method with retry logic and shell fallback
- Add unit tests for the new method with proper mocking
- All tests now pass as expected

Signed-off-by: NITESH SINGH <niteshkumar121411@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-06-04 16:38:15 -04:00
Naga Ravi Chaitanya Elluri 3b52fc4d5a Update Kraken references to Krkn (#1379)
Signed-off-by: Naga Ravi Chaitanya Elluri <nelluri@redhat.com>
2026-06-04 08:37:55 -04:00
Netram FaranandPaige Patton a8a70fc6a0 fix(node-actions): stop_start_kubelet_scenario calls restart_kubelet_scenario instead of node_reboot_scenario (#1368)
Fixes #1367

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-06-01 10:16:39 -04:00
Netram Faran e63a0b0f5b fix(health-check): derive final record status from status_code instead of hardcoding True (#1370)
Fixes #1369

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>
2026-06-01 09:14:10 -04:00
Paige PattonandClaude Sonnet 4.6 496e866d8b fix: add top-level read-all permissions to release workflow (#1366)
Scorecard Token-Permissions check (alert #4) flags release.yml for
missing top-level permissions, which means GITHUB_TOKEN defaults to
broad write access across all jobs. Adding permissions: read-all at
the top level enforces least privilege by default; the release job
already declares contents: write at job level for the permissions it
actually needs.

Signed-off-by: Paige Patton <prubenda@redhat.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-29 11:34:54 -04:00
Aastha-spec-tech c5f8fb9d36 fix(license): fix check_license.py symlink traversal crash on Windows (#1360)
Signed-off-by: Aastha-spec-tech <explorethings12345@gmail.com>
2026-05-29 11:15:37 -04:00
Paige PattonandClaude Sonnet 4.6 4328c24d28 feat: add label_selector support to kubevirt vm outage and virt health check (#1341)
Allows selecting VMIs by label selector as an alternative to vm_name regex,
making vm_name optional when label_selector is provided.

Signed-off-by: Paige Patton <prubenda@redhat.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-28 17:02:10 -04:00
Paige PattonandClaude Sonnet 4.6 9989fe9b21 fix: pass fine-grained PAT to Scorecard for branch protection check (#1365)
GITHUB_TOKEN cannot read classic branch protection rules regardless of
workflow permissions. Pass a fine-grained PAT (SCORECARD_TOKEN secret)
with Administration:read so the Branch-Protection check can run without
the 'internal error: some github tokens can't read classic branch
protection rules' error.

Ref: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md

Signed-off-by: Paige Patton <prubenda@redhat.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-28 15:56:14 -04:00
Aastha-spec-techandPaige Patton 3eda9f9afa fix(node_actions): replace unstructured print_exc with logging in baremetal reboot (#1335)
Signed-off-by: Aastha-spec-tech <explorethings12345@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-28 15:41:56 -04:00
Aastha-spec-tech 354de0ff53 fix(deps): pin kubernetes client to <36.0.0 to resolve call_api crash (#1363)
Signed-off-by: Aastha-spec-tech <explorethings12345@gmail.com>
2026-05-28 14:26:09 -04:00
Parth AgrawalandPaige Patton c0cf47dfed fix: replace bare except with Exception handler in Kubernetes client init (#1265)
The bare except clause in the Kubernetes client initialization block
caused a NameError crash when initialization failed. If KrknKubernetes()
raised an exception before kubecli was assigned, the except handler
attempted to call kubecli.initialize_clients(None) on an undefined
variable, masking the original error entirely.

Replaced the bare except with except Exception as e to:
- Log the actual initialization error for visibility
- Initialize both kubecli and ocpcli with None kubeconfig as fallback
  so subsequent code referencing these variables does not crash
- Avoid catching SystemExit and KeyboardInterrupt unintentionally

Fixes #1264

Signed-off-by: Parth Agrawal <parth.agrawal4002@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-28 14:08:21 -04:00
ky505andPaige Patton e7ea0ee4c5 added stale workflow from actions repo (#1355)
* added stale workflow from actions repo

Signed-off-by: antedotee <soniyadav2051982@gmail.com>

* added comment

Signed-off-by: antedotee <soniyadav2051982@gmail.com>

---------

Signed-off-by: antedotee <soniyadav2051982@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-28 14:06:23 -04:00
Aastha-spec-tech d6d7edd936 fix(license): add missing copyright and license headers to health checks and storage throttle (#1362)
Signed-off-by: Aastha-spec-tech <explorethings12345@gmail.com>
2026-05-28 08:56:45 -04:00
Netram FaranandPaige Patton 92272f9143 fix(health-check): derive status from previous_status_code instead of hardcoding False (#1354)
* fix(health-check): derive status from previous_status_code instead of hardcoding False

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>

* test(health-check): assert status field on change record in recovery test

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>

---------

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-27 12:55:28 -04:00
Paige Patton 654d701d7d refactor: move needs-rebase to reusable workflow in krkn-chaos/actions (#1330)
Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-27 12:15:27 -04:00
Paige Patton 387a1d7c18 adding how to add to roadmap (#1344)
Assisted By: Claude Code:

Assisted By: Claude Code:

Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-27 11:58:31 -04:00
ky505 0f5b6238b7 added PR size labeler (#1320)
Signed-off-by: antedotee <soniyadav2051982@gmail.com>
2026-05-21 12:27:13 -04:00
7c94a307d0 fixes krkn source dependencies cves and introduces grype scan in GH Action (#1336)
* adding member request information

Signed-off-by: Paige Patton <prubenda@redhat.com>
Assisted By: Claude Code:

fixes krkn source dependencies cves

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>
introduced grype scan on github images

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

golang downgrade

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

golang dependency pinning

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

golang dependency pinning

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

setuptools downgrade

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

go-ntlmssp downgrade

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

security scan in summary

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

setuptools downgrade

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

upgrade to fedora 45

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

golang dependencies

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

removed pinned dependencies

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

pinned dependency for oc latest

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

golang stdlib stable version

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

upgrading oc release

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

upgrading yq

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

yq build in pipeline

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

pinned transitive dependencies

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

removed not working

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

buildkit unpinned

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

other pinned dependencies

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

other pinned

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

other pinned

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

go work vendor

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

other pinned

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

pin buildkit and distribution

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

reinstated distribution

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

nit

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

SECURITY.md

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

feat: add Grype security scanning badge and comprehensive security policy

- Add security badge job to docker-image workflow
  - Generates detailed badge showing C:X H:Y M:Z vulnerability counts
  - Runs on every push to main branch
  - Publishes badge to krkn-lib-docs repository
  - Uses Grype to scan container image for CVEs
  - Dynamic color based on severity (green/yellow/orange/red)

- Add security badge to README.md
  - Displays current vulnerability baseline
  - Placed after coverage badge for visibility

- Enhance SECURITY.md with CNCF-ready security policy
  - Document proactive security approach with Grype CI/CD integration
  - Define security baseline: 0 Critical, 7 High, 3 Medium, 0 Low (12 total)
  - Detail accepted risks with mitigation strategies
  - Document all 12 known CVEs in transitive dependencies
  - Explain why each CVE cannot be fixed (dependency constraints)
  - Establish quarterly review process for accepted risks
  - Add SLA commitments for vulnerability remediation

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

fix: remove moby/buildkit v0.28.1 pin that breaks oc build

The moby/buildkit v0.28.1 upgrade has breaking API changes (undefined: archive.Compression)
that are incompatible with docker/docker v28.5.2 vendored in oc.

This CVE is documented as accepted risk in SECURITY.md.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

DCO

krkn-lib update

krkn-lib update

* increased krkn-lib version

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>

---------

Signed-off-by: Tullio Sebastiani <tsebasti@redhat.com>
Co-authored-by: Paige Patton <prubenda@redhat.com>
2026-05-20 14:21:51 -04:00
Paige Patton 66651e97ca adding member request information
Signed-off-by: Paige Patton <prubenda@redhat.com>
Assisted By: Claude Code:
2026-05-19 16:06:04 -04:00
eb2efa84ea feat: storage I/O throttle scenario (cgroups v1/v2) for PVC-backed workloads (#1296)
* feat(storage-throttle): add storage throttle scenario and tests

Consolidate the storage-throttle implementation, scenario configs, CI v2 coverage, and krkn-lib 6.0.10 dependency update into a single signed commit for cleaner PR history.

Signed-off-by: ddjain <darjain@redhat.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Signed-off-by: ddjain <darjain@redhat.com>

* adding need dco auto review (#1329)

Signed-off-by: Paige Patton <prubenda@redhat.com>
Signed-off-by: ddjain <darjain@redhat.com>

* fix: start_klusterlet_scenario action calls start instead of stop (#1324)

The start_klusterlet_scenario branch in inject_managedcluster_scenario
was calling stop_klusterlet_scenario on the scenarios object instead of
start_klusterlet_scenario. Any user configuring this action would stop
the klusterlet (scale to 0) instead of starting it (scale to 3).

Fixes #1323

Signed-off-by: v0idheaven <dahiyavarun2007@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
Signed-off-by: ddjain <darjain@redhat.com>

* adding links to issue of completed roadmap items (#1328)

Signed-off-by: Paige Patton <prubenda@redhat.com>
Signed-off-by: ddjain <darjain@redhat.com>

* container scenario template image update (#1342)

Signed-off-by: Paige Patton <prubenda@redhat.com>
Signed-off-by: ddjain <darjain@redhat.com>

---------

Signed-off-by: ddjain <darjain@redhat.com>
Signed-off-by: Paige Patton <prubenda@redhat.com>
Signed-off-by: v0idheaven <dahiyavarun2007@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
Co-authored-by: Varun Yadav <dahiyavarun2007@gmail.com>
v5.1.0
2026-05-19 00:24:55 +05:30
Paige Patton 3391ff2453 container scenario template image update (#1342)
Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-18 12:10:04 -04:00
Paige Patton a10dabbf21 adding links to issue of completed roadmap items (#1328)
Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-18 11:37:47 -04:00
Varun YadavandPaige Patton 8984b50409 fix: start_klusterlet_scenario action calls start instead of stop (#1324)
The start_klusterlet_scenario branch in inject_managedcluster_scenario
was calling stop_klusterlet_scenario on the scenarios object instead of
start_klusterlet_scenario. Any user configuring this action would stop
the klusterlet (scale to 0) instead of starting it (scale to 3).

Fixes #1323

Signed-off-by: v0idheaven <dahiyavarun2007@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-18 09:45:50 -04:00
Paige Patton 0c4ac9f578 adding need dco auto review (#1329)
Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-15 14:09:43 -04:00
ky505 2b02306a4d Update cron schedule for scorecard analysis (#1322)
Signed-off-by: antedotee <soniyadav2051982@gmail.com>
v5.0.5
2026-05-14 15:31:57 -04:00
Paige Patton 0e8af957f3 addinig vmi network outages (#1234)
Assisted By: Claude Code:
Assisted By: Claude Code:

Signed-off-by: Paige Patton <prubenda@redhat.com>
v5.0.4
2026-05-14 14:34:19 -04:00
Paige Patton 7ec263f84c health check plugin (#1176)
Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-14 14:32:07 -04:00
Paige Patton 7d4aba9df6 adding kubectl cli (#1321)
Assisted By: Claude Code:

Assisted By: Claude Code:

Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-14 13:55:08 -04:00
Varun YadavandPaige Patton a0825ffd1e fix: use .get() for optional health check config keys to prevent KeyError (#1310)
* fix: use .get() for optional health check config keys to prevent KeyError

bearer_token, auth, exit_on_failure and verify_url were accessed with
bare [] indexing. If a user omits any of these optional keys, the health
check thread crashes with a KeyError that disappears silently — the
telemetry queue never gets populated and health checks stop working
with no log output.

Replaced all four with .get() calls with safe defaults.

Fixes #1309

Signed-off-by: v0idheaven <dahiyavarun2007@gmail.com>

* fix: address review feedback on HealthChecker config key handling

- Add docstring to run_health_check for API clarity
- Replace conditional url assignment with direct .get() + continue
  so a missing url skips the entry cleanly instead of falling through
  to make_request with a potentially stale url from a previous iteration

Signed-off-by: v0idheaven <dahiyavarun2007@gmail.com>

---------

Signed-off-by: v0idheaven <dahiyavarun2007@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-14 11:39:40 -04:00
Arpit RajandPaige Patton d70c56aa30 fix: add connection pooling for HTTP health checks in cerberus and HealthChecker (#1236)
Signed-off-by: 1PoPTRoN <vrxn.arp1traj@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-14 11:22:54 -04:00
Aastha-spec-techandPaige Patton 2628665584 feat: support environment variable fallback for baremetal BMC credentials (#1289)
Signed-off-by: Aastha-spec-tech <explorethings12345@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-14 09:52:42 -04:00
Darshan JainandCursor c9e4cc3254 docs: add AI contribution policy (#1307)
Signed-off-by: ddjain <darjain@redhat.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 19:07:42 +05:30
Paige Patton c7d8116afd bm test cases (#1308)
Assisted By: Claude Code:
Assisted By: Claude Code:

Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-14 08:39:04 -04:00
Darshan Jain a0cbb9a454 ix(ci): narrow customapp_pod scenario to coredns to avoid etcd disruption on KinD (#1312)
Signed-off-by: ddjain <darjain@redhat.com>
2026-05-14 17:47:40 +05:30
Netram FaranandPaige Patton f5e5d0677b fix(cerberus): fix config key typo and shadowed global in get_status (#1303)
* fix(cerberus): fix config key typo and shadowed global in get_status

Fixes #1302

- Fix typo in set_url(): read 'check_application_routes' instead of
  'check_applicaton_routes' so the correct config key is used
- Remove local 'check_application_routes = False' in get_status() and
  declare global instead, so the value set by set_url() is actually read
- Update test config key and remove the workaround comment that
  acknowledged the shadowed global

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>

* fix(cerberus): remove extra cerberus_url arg from application_status call

application_status(start_time, end_time) takes two parameters but was
being called with three (cerberus_url, start_time, end_time), which
would raise a TypeError whenever check_application_routes is enabled.
Remove the stale argument since the function already reads cerberus_url
from the module global.

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>

---------

Signed-off-by: netram75 <netram.24bcs10329@sst.scaler.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-13 13:48:51 -04:00
Paige Patton ebe6049be9 adding start of vmi network scenario (#1260)
Assisted By: Claude Code:
Assisted By: Claude Code:

Signed-off-by: Paige Patton <prubenda@redhat.com>
2026-05-13 13:20:08 -04:00
Aochuba S AierandPaige Patton 5dc79789a3 resolve tree formattting to a simplier and better visualization (#1305)
* resolve tree formattting to a simpier and easier visualization

Signed-off-by: aochuba <aochuba52@gmail.com>

* adding missing print statement

Signed-off-by: aochuba <aochuba52@gmail.com>

---------

Signed-off-by: aochuba <aochuba52@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-13 10:27:41 -04:00
Aastha-spec-techandPaige Patton 64bdd3c6fb refactor: remove hardcoded credentials and node info from baremetal scenarios (#1286)
Signed-off-by: Aastha-spec-tech <explorethings12345@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-12 14:40:08 -04:00
ky505andPaige Patton de152763ae add openssf scorecard workflow and scorecard badge to readme (#1272)
Signed-off-by: antedotee <soniyadav2051982@gmail.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-12 14:36:25 -04:00
b8a0a67cb0 build(deps): bump gitpython from 3.1.49 to 3.1.50 (#1280)
Bumps [gitpython](https://github.com/gitpython-developers/GitPython) from 3.1.49 to 3.1.50.
- [Release notes](https://github.com/gitpython-developers/GitPython/releases)
- [Changelog](https://github.com/gitpython-developers/GitPython/blob/main/CHANGES)
- [Commits](https://github.com/gitpython-developers/GitPython/compare/3.1.49...3.1.50)

---
updated-dependencies:
- dependency-name: gitpython
  dependency-version: 3.1.50
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Paige Patton <64206430+paigerube14@users.noreply.github.com>
2026-05-12 14:35:36 -04:00
ky505 095715ee39 added contributing.md file to the repository (#1284)
Signed-off-by: antedotee <soniyadav2051982@gmail.com>
2026-05-11 14:00:40 -04:00
ky505 82a69f01bb added community meeting in readme (#1282)
Signed-off-by: antedotee <soniyadav2051982@gmail.com>
2026-05-11 08:41:05 -04:00