{"id":13774643,"url":"https://github.com/kyverno/chainsaw","last_synced_at":"2025-08-20T14:30:47.056Z","repository":{"id":199445525,"uuid":"702901147","full_name":"kyverno/chainsaw","owner":"kyverno","description":"Declarative K8s e2e testing","archived":false,"fork":false,"pushed_at":"2024-07-12T10:20:05.000Z","size":36469,"stargazers_count":225,"open_issues_count":26,"forks_count":35,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-07-15T10:57:45.294Z","etag":null,"topics":["e2e","kubernetes","operator","testing"],"latest_commit_sha":null,"homepage":"https://kyverno.github.io/chainsaw/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kyverno.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-10T08:18:19.000Z","updated_at":"2024-07-18T17:20:43.757Z","dependencies_parsed_at":"2024-02-04T12:28:25.365Z","dependency_job_id":"5e71a54a-4865-4a54-838f-32f4a81850ab","html_url":"https://github.com/kyverno/chainsaw","commit_stats":null,"previous_names":["kyverno/chainsaw"],"tags_count":90,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyverno%2Fchainsaw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyverno%2Fchainsaw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyverno%2Fchainsaw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyverno%2Fchainsaw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kyverno","download_url":"https://codeload.github.com/kyverno/chainsaw/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230431100,"owners_count":18224655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["e2e","kubernetes","operator","testing"],"created_at":"2024-08-03T17:01:28.930Z","updated_at":"2025-08-20T14:30:47.049Z","avatar_url":"https://github.com/kyverno.png","language":"Go","funding_links":[],"categories":["Tools and Libraries","testing"],"sub_categories":["Testing and Troubleshooting"],"readme":"# Chainsaw\n\n[![Lint](https://github.com/kyverno/chainsaw/actions/workflows/lint.yaml/badge.svg)](https://github.com/kyverno/chainsaw/actions/workflows/lint.yaml)\n[![Tests](https://github.com/kyverno/chainsaw/actions/workflows/tests.yaml/badge.svg)](https://github.com/kyverno/chainsaw/actions/workflows/tests.yaml)\n[![Code QL](https://github.com/kyverno/chainsaw/actions/workflows/codeql.yaml/badge.svg)](https://github.com/kyverno/chainsaw/actions/workflows/codeql.yaml)\n[![Dev docs](https://github.com/kyverno/chainsaw/actions/workflows/docs-main.yaml/badge.svg)](https://github.com/kyverno/chainsaw/actions/workflows/docs-main.yaml)\n[![Release](https://github.com/kyverno/chainsaw/actions/workflows/release.yaml/badge.svg)](https://github.com/kyverno/chainsaw/actions/workflows/release.yaml)\n[![Release docs](https://github.com/kyverno/chainsaw/actions/workflows/docs-release.yaml/badge.svg)](https://github.com/kyverno/chainsaw/actions/workflows/docs-release.yaml)\n[![Go Report Card](https://goreportcard.com/badge/github.com/kyverno/chainsaw)](https://goreportcard.com/report/github.com/kyverno/chainsaw)\n[![License: Apache-2.0](https://img.shields.io/github/license/kyverno/chainsaw?color=blue)](https://github.com/kyverno/chainsaw/blob/main/LICENSE)\n[![Codecov](https://codecov.io/gh/kyverno/chainsaw/branch/main/graph/badge.svg)](https://app.codecov.io/gh/kyverno/chainsaw/branch/main)\n\n\u003ca href=\"https://kyverno.github.io/chainsaw\" rel=\"https://kyverno.github.io/chainsaw\"\u003e![logo](.assets/kyverno-chainsaw-horizontal.png)\u003c/a\u003e\n\n## Overview\n\nChainsaw provides a declarative approach to test [Kubernetes](https://kubernetes.io) operators and controllers.\n\nWhile Chainsaw is designed for testing operators and controllers, it can declaratively test any Kubernetes objects.\n\nChainsaw is an open-source tool that was initially developed for defining and running [Kyverno](https://kyverno.io) end-to-end tests.\n\n## Resources\n\nBuilt under the Kyverno umbrella, you can use the Kyverno Chainsaw **Slack channels** to discuss anything related to Chainsaw.\n\n### Slack channels\n\n- [#kyverno-chainsaw](https://kubernetes.slack.com/archives/C067LUFL43U)\n\n### More resources\n\n- [Kyverno Chainsaw - The ultimate end-to-end testing tool!](https://kyverno.io/blog/2023/12/12/kyverno-chainsaw-the-ultimate-end-to-end-testing-tool/)\n- [Kyverno Chainsaw - Exploring the Power of Assertion Trees!](https://kyverno.io/blog/2023/12/13/kyverno-chainsaw-exploring-the-power-of-assertion-trees/)\n- [Nirmata Office Hours for Kyverno- Episode 9- Demonstrate Kyverno Chainsaw](https://www.youtube.com/watch?v=IrIteTTjlbU)\n- [Kubebuilder Community Meeting - February 1, 2024](https://www.youtube.com/watch?v=Ejof-wtAdQM)\n- [Kyverno Chainsaw 0.1.4 - Awesome new features!](https://kyverno.io/blog/2024/02/15/kyverno-chainsaw-0.1.4-awesome-new-features/)\n- [Mastering Kubernetes Testing with Kyverno Chainsaw!](https://youtu.be/hQJWGzogIiI)\n\n## Getting Started\n\nPlease refer to the [Getting Started](https://kyverno.github.io/chainsaw/latest/quick-start/) documentation.\n\n## RoadMap\n\nFor detailed information on our planned features and upcoming updates, please [view our Roadmap](./ROADMAP.md).\n\n## Community Meetings\n\nTo attend our community meetings, join the [Chainsaw group](https://groups.google.com/g/kyverno-chainsaw).\nYou will then be sent a meeting invite and will have access to the agenda and meeting notes.\nAny member may suggest topics for discussion.\n\nThis is a public, weekly meeting for Kyverno-Chainsaw maintainers to make announcements and provide project updates, and request input and feedback.\nThis forum allows community members to raise agenda items of any sort, including but not limited to any PRs or issues on which they are working.\n\nWeekly every Thursday at 2:00 PM UTC\n\n- [Chainsaw group](https://groups.google.com/g/kyverno-chainsaw)\n- [Zoom Meeting](https://zoom.us/j/99815137900)\n- [Agenda and meeting notes](https://docs.google.com/document/d/1csszreCpCyPsls4S_GuM0o_D1W-N7vQqQcyd4lxSkJk)\n\n## Contributions\n\nPlease read the [contributing guide](https://github.com/kyverno/kyverno/blob/main/CONTRIBUTING.md) for details around:\n\n1. Code of Conduct\n1. Code Culture\n1. Details on how to contribute\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyverno%2Fchainsaw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkyverno%2Fchainsaw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyverno%2Fchainsaw/lists"}