Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Incubation] Microcks Incubation Application #1552

Open
42 of 47 tasks
yada opened this issue Mar 6, 2025 · 4 comments
Open
42 of 47 tasks

[Incubation] Microcks Incubation Application #1552

yada opened this issue Mar 6, 2025 · 4 comments

Comments

@yada
Copy link

yada commented Mar 6, 2025

Review Project Moving Level Evaluation

[x] I have reviewed the TOC's moving level readiness triage guide, ensured the criteria for my project are met before opening this issue, and understand that unmet criteria will result in the project's application being closed.

Microcks Incubation Application

v1.6
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/microcks/microcks
Project Site: https://microcks.io/
Sub-Projects: https://github.com/orgs/microcks/repositories
Communication: Discord (preferred) or #microcks channel in CNCF Slack workspace (alternate)

Project points of contacts:

Full name Email GitHub
Yacine Kheddache [email protected] yada
Laurent Broudoux [email protected] lbroudoux

Incubation Criteria Summary for $PROJECT

Application Level Assertion

  • This project is currently Sandbox, accepted on 20230621, and applying to Incubation.
  • This project is applying to join the CNCF at the Incubation level.

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

  • Engage with the domain specific TAG(s) to increase awareness through a presentation or completing a General Technical Review.

    A presentation to the TAG App Delivery was conducted on February 19, 2025 (19-02-2025), during the TAG General Meeting. The recording is available on the TAG YouTube channel here.

    This 3rd presentation (2025-02-19) - TAG App Delivery - Microcks update focused more on project information and community metrics than technical details.

    TAG members had no objections or specific recommendations, see: CNCF TAG App Delivery Meeting Notes; they were impressed by the project's maturity, even though we were applying for the Graduate level!

    Regarding Microcks adopters list, TAG suggested adding the CNCF adopters categories, which have since been implemented and tracked in this issue.

    TAG confirmed that the presentation meets the requirement to apply for Incubation, as stated in the issue: "Engage with the domain-specific TAG(s) to increase awareness through a presentation or completing a General Technical Review."

  • TAG provides insight/recommendation of the project in the context of the landscape

  • All project metadata and resources are vendor-neutral.

    Microcks is designed and maintained to be vendor-neutral, fully aligned with the principles of the Cloud Native Computing Foundation (CNCF). Since its inception as a side project by Laurent Broudoux in 2015, Microcks has always been independent. It was later donated to the CNCF by its two core maintainers, ensuring openness and neutrality in governance, development, and community engagement from any vendors, including its main sponsor(s).

    CNCF's vendor neutrality guidelines require projects to maintain impartiality in communication, hosting, architectural decisions, and governance. Microcks strictly adhere to these principles.

    Communication:

  • Equal representation: Microcks maintains transparency by listing all third-party companies (website, adopters list...), without favoring any vendor.

  • CNCF-aligned website: The Microcks website follows CNCF guidelines to ensure neutrality.

  • Independent social media: Microcks' LinkedIn, X, BlueSky, Mastodon, YouTube, and other channels do not endorse any particular vendor.

  • Open community discussions: Microcks GitHub, Discord and Slack communication takes place in the public workspaces, ensuring openness and broad participation.

    Hosting:

  • CNCF GitHub Enterprise: Microcks' source code is hosted under the CNCF GitHub organization to maintain transparency and accessibility.

  • Independent CI/CD: Continuous integration testing using GitHub Actions ensures a vendor-agnostic testing environment.

  • Public meeting records: We hold monthly Open Community Meetings for each region, which means we have bi-weekly meetings to try to be worldwide friendly with recordings publicly available on YouTube. We are using Linux Foundation-managed service (Zoom, meeting schedule and calendar...), see Joining Microcks Community Meetings: A Step-by-Step Guide.

    Architectural Decisions:

  • Open source by design: Microcks is a fully open source project, ensuring its codebase remains accessible for anyone to use, modify, and contribute without vendor influence.

  • Protocol-agnostic: Microcks supports a wide range of API open specifications and protocols (OpenAPI, GraphQL, AsyncAPI, SOAP, gRPC, Postman collection, etc.) to embrace cloud native application diversity and avoid dependence on any single technology or provider.

  • Cloud native flexibility: Microcks is designed to work with any Kubernetes distribution or Container engines, whether on-premises or in the cloud, ensuring no ties to specific infrastructure providers.

  • Community-driven roadmap: The Microcks roadmap is curated based on input from GitHub, Discord and Slack discussions, adopters requests and feedback and real-world use cases. The roadmap status is always accessible via the GitHub project board.

    Governance:

  • CNCF Incubation Path: As a CNCF project moving towards Incubation, Microcks follows CNCF's commitment to **open standards, interoperability, and vendor neutrality.

  • Open governance model: Contributions are encouraged from a diverse community of individuals and organizations, ensuring broad participation.

  • Clear contribution path: We strive to make contributing to the Microcks project as simple and transparent as possible.

    By maintaining these vendor-neutral principles, Microcks ensures long-term sustainability, trust, and openness within the API-first and cloud native ecosystem.

  • Review and acknowledgement of expectations for Sandbox projects and requirements for moving forward through the CNCF Maturity levels.

    The requirements for the project's application and Sandbox onboarding were met during the process, with issue [SANDBOX PROJECT ONBOARDING] Microcks sandbox#197 addressing the necessary steps.

  • Due Diligence Review.

    Completion of this due diligence document, resolution of concerns raised, and presented for public comment satisfies the Due Diligence Review criteria.

  • Additional documentation as appropriate for project type, e.g.: installation documentation, end user documentation, reference implementation and/or code samples.

    You can explore our documentation, where we've added key sections, including tutorials, guides, reference materials, and explanations to support our adopters learning journey. Our documentation follows the Diátaxis methodology, and in 2024, we undertook a six-month complete refactoring to enhance its clarity and structure.

    Additionally, we feature contributions and blog posts from adopters and contributors:

    As well as code demos:

    And in-depth blog posts covering both technical and high-level topics:

Governance and Maintainers

Note: this section may be augmented by the completion of a Governance Review from TAG Contributor Strategy.

Suggested

  • Clear and discoverable project governance documentation.

    Microcks' governance documentation is hosted in the .github repository alongside our global community files. Using GitHub Actions, this content is replicated and synchronized across all organization repositories.

  • 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.

    Microcks' maintainers prioritize inclusivity and simplicity. While our governance model has evolved over time, we have intentionally kept it straightforward, avoiding complex hierarchies, as we remain a relatively small team. See a few examples: Update and sync MAINTAINERS.md microcks/.github#18, Refresh and Update Community Files microcks/.github#45

  • Governance is up to date with actual project activities, including any meetings, elections, leadership, or approval processes.

    Documented in Microcks Governance file.

  • Governance clearly documents vendor-neutrality of project direction.

    Documented in Microcks Governance:

    Vendor-neutral: Microcks is designed and maintained to be fully aligned with the principles of the Cloud Native Computing Foundation (CNCF).

  • Document how the project makes decisions on leadership, contribution acceptance, requests to the CNCF, and changes to governance or project goals.

    Documented in Microcks Governance file.

  • Document how role, function-based members, or sub-teams are assigned, onboarded, and removed for specific teams (example: Security Response Committee).

    Documented in Microcks Governance file.

  • Document a complete maintainer lifecycle process (including roles, onboarding, offboarding, and emeritus status).

    Documented in Microcks Governance file.

  • Demonstrate usage of the maintainer lifecycle with outcomes, either through the addition or replacement of maintainers as project events have required.

    See, Update and sync MAINTAINERS.md microcks/.github#18, Refresh and Update Community Files microcks/.github#45

  • If the project has subprojects: subproject leadership, contribution, maturity status documented, including add/remove process.

    Documented in Microcks Governance file.

Required

  • Document complete list of current maintainers, including names, contact information, domain of responsibility, and affiliation.

    Documented in the Maintainers and Code Owners list.

  • A number of active maintainers which is appropriate to the size and scope of the project.

    There are 2 maintainers and 3 Code Owners (alias Domain Maintainers), as documented in the Maintainers and Code Owners list.

  • Code and Doc ownership in Github and elsewhere matches documented governance roles.

    All the repositories have CODEOWNERS files.

  • Document adoption of the CNCF Code of Conduct

    See, Microcks Code of Conduct file. This content is replicated and synchronized across all organization repositories using GitHub Actions.

  • CNCF Code of Conduct is cross-linked from other governance documents.

    Documented in our Code of Conduct file.

  • All subprojects, if any, are listed.

    Name URL
    microcks GitHub
    microcks-cli GitHub
    microcks-operator GitHub
    microcks-postman-runtime GitHub
    microcks-testcontainers-java GitHub
    microcks-testcontainers-go GitHub
    microcks-testcontainers-node GitHub
    microcks-testcontainers-dotnet GitHub
    microcks-quarkus GitHub
    microcks-java-client GitHub
    microcks-go-client GitHub
    microcks-docker-desktop-extension GitHub
    microcks-backstage-provider GitHub
    microcks-jenkins-plugin GitHub
    microcks-spectral-ruleset GitHub
    import-github-action GitHub
    test-github-action GitHub
    hub.microcks.io GitHub
    microcks.io GitHub

Contributors and Community

Note: this section may be augmented by the completion of a Governance Review from TAG Contributor Strategy.

Suggested

  • Contributor ladder with multiple roles for contributors.

    The Microcks Governance file outlines the roles and responsibilities of different contributor types and details the path from contributor to maintainer.

Required

Engineering Principles

Suggested

Required

Security

Note: this section may be augmented by a joint-assessment performed by TAG Security.

Suggested

N/A

Required

  • Clearly defined and discoverable process to report security issues.

    Documented in the Microcks Security file.

  • Enforcing Access Control Rules to secure the code base against attacks (Example: two factor authentication enforcement, and/or use of ACL tools.)

    As a GitHub hosted project, we rely on the GitHub authentication mechanisms. All the maintainers and bots (GitHub Actions and Workflow) use two factor authentication and sign commits. The maintainers are responsible for regularly reviewing and updating the organization's membership enforcing 2FA and commit signature checks.

  • Document assignment of security response roles and how reports are handled.

    Documented in the Microcks Security file.

  • Document Security Self-Assessment.

    Reviewed and merged: See, the Microcks Security Self-Assessment PR. Microcks document is now online.

    To reinforce our commitment to this task and enhance our understanding, both Microcks maintainers have completed the Linux Foundation Training & Certification: Security Self-Assessments for Open Source Projects (LFEL1005).

    See our certifications here:

  • Achieve the Open Source Security Foundation (OpenSSF) Best Practices passing badge.

    Our current Open Source Security Foundation (OpenSSF) score for the main repository is 99% (View Score). However, the Microcks team is committed to improving this score to 100% and achieving the passing stage.

    Why Not 100%? We currently have a temporary outstanding issue with Microcks UI-related dependencies that we are unable to upgrade, preventing us from reaching 100% compliance. This issue is specific to the Microcks UI and does not impact the core services of Microcks, which are typically used directly by applications relying on Microcks. We have initiated a brainstorming session and action plan with the community to address this. You can follow the discussion and progress here: GitHub Discussion #1458. This is a work in progress, and we aim to resolve it in the coming months.

    We have also made significant efforts to enhance our overall security and compliance across all 19 repositories using CLOMonitor checks (View CLOMonitor Report). Currently, our overall CLOMonitor score is 98, rating Microcks at an "A" grade. This was a long process initiated in June 2024 (Issue #1201), reflecting our continued commitment to improving project security and best practices.

    Microcks ranks Update project proposal process to move to GitHub #8 among 205 CNCF projects (including Incubating and Graduated projects!). Additionally, we hold the top position for the most repositories and checks among all CNCF projects.

    Top 10 CNCF Projects by Repositories Checked via CLOMonitor:

  1. Microcks – 19 repositories
  2. OpenEBS – 10 repositories
  3. Devfile & In-Toto – 9 repositories each
  4. Argo – 7 repositories
  5. etcd & gRPC – 6 repositories each
  6. CloudEvents – 6 repositories (though not all require code checks)
  7. Metal3-io – 5 repositories
  8. Envoy – 5 repositories
  9. Cilium, Fluentd, Prometheus, and Strimzi – 4 repositories each

Microcks remains dedicated to maintaining and improving security and compliance across our projects!

Tools we use to secure our supply chain:

  • Sonar Cloud,
  • FOSSA,
  • Cosign / Sigstore,
  • Clair / Docker Scout,
  • Syft

Ecosystem

Suggested

N/A

Required

Additional Information

Microcks welcomes the TOC Technical Advisory Groups - Restructuring (alias TAG Reboot), particularly the creation of the new Developer Experience TAG, recognizing the crucial role of developers in the cloud native ecosystem.

While Microcks is an API and microservices tooling “by developers, for developers,” it also serves as a bridge between all enterprise stakeholders, from business and product owners to developers connecting various API specifications and assets.

We are excited to contribute to this new TAG, supporting communities and enterprises in simplifying cloud native development, application lifecycle management, and modernization.

@yada
Copy link
Author

yada commented Mar 6, 2025

chore: Updated the document formatting to resolve indentation issues.

@yada
Copy link
Author

yada commented Mar 6, 2025

The latest task has been completed:
"
The project has provided the TOC with a list of 6 adopters who are willing to be interviewed by the TOC reviewer(s) using the Adopter Interview Questionnaire to confirm that the project is being utilized at the expected level.
"

@yada
Copy link
Author

yada commented Mar 7, 2025

A 7th adopter willing to be interviewed by the TOC reviewer(s) has been provided. We are all set on this point and look forward to the go/no-go triage decision. Thank you.

@yada
Copy link
Author

yada commented Mar 12, 2025

The Microcks Document Security Self-Assessment has been reviewed and merged! ✅ Check out the PR: #1451.

We're all set and looking forward to the next TOC triage slot! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: New
Development

No branches or pull requests

1 participant