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
2026-03-31 15:19:19 -04:00
2024-01-03 10:53:47 -05:00
2020-04-19 15:33:55 -04:00
2026-03-31 15:19:19 -04:00
2021-07-02 17:31:40 -04:00
2026-03-31 15:19:19 -04:00

Krkn aka Kraken

Workflow-Status coverage security action OpenSSF Best Practices OpenSSF Scorecard CLOMonitor

Krkn logo

Chaos and resiliency testing tool for Kubernetes. Kraken injects deliberate failures into Kubernetes clusters to check if it is resilient to turbulent conditions.

Workflow

Kraken workflow

How to Get Started

Instructions on how to setup, configure and run Kraken can be found in the documentation.

Blogs, podcasts and interviews

Additional resources, including blog posts, podcasts, and community interviews, can be found on the website

Roadmap

Enhancements being planned can be found in the roadmap.

Contributing

We are always looking for more enhancements, fixes to make it better, any contributions are most welcome. Feel free to report or work on the issues filed on github.

See CONTRIBUTING.md for details, or check the contribution guidelines on the website.

Community

Key Members(slack_usernames/full name): paigerube14/Paige Rubendall, mffiedler/Mike Fiedler, tsebasti/Tullio Sebastiani, yogi/Yogananth Subramanian, sahil/Sahil Shah, pradeep/Pradeep Surisetty and ravielluri/Naga Ravi Chaitanya Elluri.

Community Meeting

If you have any questions that you think could be better discussed on a meeting, we have monthly office hours. Please add items to the agenda beforehand so we can best prepare to help you.

The Linux Foundation® (TLF) has registered trademarks and uses trademarks. For a list of TLF trademarks, see Trademark Usage.

S
Description
Chaos and resiliency testing tool for Kubernetes with a focus on improving performance under failure conditions. A CNCF sandbox project.
Readme Apache-2.0
8.9 MiB
Languages
Python 97.4%
Shell 2%
Jinja 0.4%
Makefile 0.2%