cncf / toc

⚖️ The CNCF Technical Oversight Committee (TOC) is the technical governing body of the CNCF Foundation.
https://cncf.io
1.68k stars 632 forks source link

[Incubation] ChaosBlade Incubation Application #1387

Open MandssS opened 3 months ago

MandssS commented 3 months ago

ChaosBlade Incubation Application

v1.5 This template provides the project with a framework to inform the TOC of their conformance to the Incubation Level Criteria.

Project Repo(s): https://github.com/chaosblade-io/chaosblade Project Site: https://chaosblade.io/ Sub-Projects:

Communication: https://slack.cncf.io/ (#chaosblade channel)

Project points of contacts: @MandssS , camix0116@gmail.com

Incubation Criteria Summary for ChaosBlade

Adoption Assertion

The project has been adopted by the following organizations in a testing and integration or production capacity:

Application Process Principles

Suggested

N/A

Required

- [x] **TAG provides insight/recommendation of the project in the context of the landscape** - Done in the tag meeting above - [x] **All project metadata and resources are [vendor-neutral](https://contribute.cncf.io/maintainers/community/vendor-neutrality/).** - Yes. ChaosBlade is utilizing CNCF provided vendor neutral resources for communication, testing , hosting and governance. - [x] **Review and acknowledgement of expectations for [Sandbox](https://sandbox.cncf.io) projects and requirements for moving forward through the CNCF Maturity levels.** - Met during [Project's application](https://github.com/cncf/sandbox/issues/246) on 28-04-2021. - [ ] **Due Diligence Review.** Completion of this due diligence document, resolution of concerns raised, and presented for public comment satisifies the Due Diligence Review criteria. - [x] **Additional documentation as appropriate for project type, e.g.: installation documentation, end user documentation, reference implementation and/or code samples.** - Installation documentation : https://chaosblade.io/en/docs/getting-started/installation-and-deployment/ - End user documentation: https://chaosblade.io/en/docs/ - Blog posts: https://chaosblade.io/blog/ ## Governance and Maintainers Note: this section may be augmented by the completion of a Governance Review from TAG Contributor Strategy. ### Suggested - [x] **Clear and discoverable project governance documentation.** - https://github.com/chaosblade-io/community/blob/main/Contributor_Ladder.md - [x] **Governance has continuously been iterated upon by the project as a result of their experience applying it, with the governance history demonstrating evolution of maturity alongside the project's maturity evolution.** - ChaosBlade project Governance has iterated organically as it has gained experienced over the years. Contributor Roles and contributor ladder processes are streamlined over the past years as well as team member onboarding/offboarding process is well defined. The Project has currently 5 maintainers and it has received contributions from 149 contributors who come from 31 different companies. - [x] **Governance is up to date with actual project activities, including any meetings, elections, leadership, or approval processes.** - [x] **Governance clearly documents [vendor-neutrality](https://contribute.cncf.io/maintainers/community/vendor-neutrality/) of project direction.** - [x] **Document how the project makes decisions on leadership, contribution acceptance, requests to the CNCF, and changes to governance or project goals.** - [x] **Document how role, function-based members, or sub-teams are assigned, onboarded, and removed for specific teams (example: Security Response Committee).** - Documented in https://github.com/chaosblade-io/community/blob/main/Contributor_Ladder.md - [x] **Document a complete maintainer lifecycle process (including roles, onboarding, offboarding, and emeritus status).** - The role promotion process is documented [here](https://github.com/chaosblade-io/chaosblade/blob/master/CONTRIBUTING.md) - [x] **Demonstrate usage of the maintainer lifecycle with outcomes, either through the addition or replacement of maintainers as project events have required.** - https://github.com/chaosblade-io/community/pull/12 - [x] **If the project has subprojects: subproject leadership, contribution, maturity status documented, including add/remove process.** - Documented in https://github.com/chaosblade-io/community/?tab=readme-ov-file#governance ### Required - [x] **Document complete list of current maintainers, including names, contact information, domain of responsibility, and affiliation.** - [ChaosBlade maintainers](https://github.com/chaosblade-io/chaosblade/blob/master/MAINTAINERS.md) - [x] **A number of active maintainers which is appropriate to the size and scope of the project.** - ChaosBlade has 5 active maintainers - [x] **Code and Doc ownership in Github and elsewhere matches documented governance roles.** - [Contributor Guide](https://github.com/chaosblade-io/chaosblade/blob/master/CONTRIBUTING.md) - [DCO](https://github.com/chaosblade-io/chaosblade/blob/master/CONTRIBUTING.md#sign-your-work) - [x] **Document agreement that project will adopt CNCF Code of Conduct.** - [ChaosBlade follows CNCF Code of Conduct](https://github.com/chaosblade-io/chaosblade/blob/master/CODE_OF_CONDUCT.md) - [x] **CNCF Code of Conduct is cross-linked from other governance documents.** - Yes, https://github.com/chaosblade-io/chaosblade/blob/master/GOVERNANCE.md - [x] **All subprojects, if any, are listed.** ## Contributors and Community Note: this section may be augmented by the completion of a Governance Review from TAG Contributor Strategy. ### Suggested - [x] **Contributor ladder with multiple roles for contributors.** - [contributor ladder](https://github.com/chaosblade-io/community/blob/main/Contributor_Ladder.md) ### Required - [x] **Clearly defined and discoverable process to submit issues or changes.** - [PR Submission Guidelines](https://chaosblade.io/en/docs/community/PR-guide/) - [Issue submission and handling specifications](https://chaosblade.io/en/docs/community/issue-standard/) - [x] **Project must have, and document, at least one public communications channel for users and/or contributors.** - [x] **List and document all project communication channels, including subprojects (mail list/slack/etc.). List any non-public communications channels and what their special purpose is.** - [Communication channels](https://github.com/chaosblade-io/community) - [x] **Up-to-date public meeting schedulers and/or integration with CNCF calendar.** - This is completed as no-op, as the project has no sync meeting due to timezone diversity - [x] **Documentation of how to contribute, with increasing detail as the project matures.** - [PR Submission Guidelines](https://chaosblade.io/en/docs/community/PR-guide/) - [Java contribution guide](https://chaosblade.io/docs/community/java-dev-guide/) - [x] **Demonstrate contributor activity and recruitment.** - The ChaosBlade devstats page and dashboards can be found [here](https://chaosblade.devstats.cncf.io/d/8/dashboards?orgId=1&refresh=15m&search=open) - Number of contributors: 149 - Github stars: 5400+ - Github forks: 900+ - Contributing organizations: 31 ## Engineering Principles ### Suggested - [x] **Roadmap change process is documented.** - https://github.com/chaosblade-io/community/blob/main/roadmap.md - [x] **History of regular, quality releases.** - ChaosBlade currently follows quarterly release, see the[release history](https://github.com/chaosblade-io/chaosblade/releases) ### Required - [x] **Document project goals and objectives that illustrate the project’s differentiation in the Cloud Native landscape as well as outlines how this project fulfills an outstanding need and/or solves a problem differently.** - [ChaosBlade project goals and objectives](https://github.com/chaosblade-io/chaosblade?tab=readme-ov-file) - [x] **Document what the project does, and why it does it - including viable cloud native use cases.** - [ChaosBlade What and Why](https://github.com/chaosblade-io/chaosblade) - [x] **Document and maintain a public roadmap or other forward looking planning document or tracking mechanism.** - [ChaosBlade Roadmap](https://github.com/chaosblade-io/community/blob/main/roadmap.md) - [x] **Document overview of project architecture and software design that demonstrates viable cloud native use cases, as part of the project's documentation.** - [ChaosBlade Overview](https://chaosblade.io/en/docs/) - [ChaosBlade-Box Platform Introduction](https://chaosblade.io/en/docs/about-chaosblade/box-introduce) - [ChaosBlade Execution Tools Introduction](https://chaosblade.io/en/docs/about-chaosblade/blade-introduce/) - [x] **Document the project's release process.** - [Release-Process](https://github.com/chaosblade-io/chaosblade/blob/master/GOVERNANCE.md#release-process) ## Security Note: this section may be augemented by a joint-assessment performed by TAG Security. ### Suggested N/A ### Required - [x] **Clearly defined and discoverable process to report security issues.** - [Documented in Security](https://github.com/chaosblade-io/chaosblade/blob/master/SECURITY.md) - [x] **Enforcing Access Control Rules to secure the code base against attacks (Example: two factor authentication enforcement, and/or use of ACL tools.)** - All the Committers have 2FA enabled - [x] **Document assignment of security response roles and how reports are handled.** - Documented in https://github.com/chaosblade-io/chaosblade/blob/master/SECURITY.md - [ ] **Document Security Self-Assessment.** - [x] **Achieve the Open Source Security Foundation (OpenSSF) Best Practices passing badge.** - [OpenSSF best practice passing badge](https://www.bestpractices.dev/en/projects/5032) ## Ecosystem ### Suggested N/A ### Required - [x] **Publicly documented list of adopters, which may indicate their adoption level (dev/trialing, prod, etc.)** - ChaosBlade Adopters are tracked here https://github.com/chaosblade-io/community/blob/main/ADOPTERS.md - [x] **Used in appropriate capacity by at least 3 independent + indirect/direct adopters, (these are not required to be in the publicly documented list of adopters)** The project provided the TOC with a list of adopters for verification of use of the project at the level expected, i.e. production use for graduation, dev/test for incubation. - [ ] **TOC verification of adopters.** Refer to the Adoption portion of this document. - [x] **Clearly documented integrations and/or compatibility with other CNCF projects as well as non-CNCF projects.** - Support for chaos on [containerd](https://www.cncf.io/projects/containerd/) (CNCF Graduated) runtime. ChaosBlade-Box can use prometheus to help users monitor chaos experiments. ChaosBlade can be used with Docker, Kubernetes, and other container engines too. ## Additional Information N/A