|
| 1 | +# OCI Runtime-Tools and Image-Tools Project Proposals |
| 2 | + |
| 3 | +## Abstract |
| 4 | +The below proposal contemplates creation of two tools projects (runtime-tools and image-tools.) |
| 5 | +These would be associated with the OCI specification projects (runtime-spec and image-spec) and serve as repositories for testing tools. |
| 6 | + |
| 7 | +## Background |
| 8 | +Testing tools have been organically developed by the OCI developer community. |
| 9 | +These include: |
| 10 | +* Runtime-spec test code in a OCITools repository |
| 11 | +* Image-spec test code in the image-spec repository |
| 12 | + |
| 13 | +On Monday, August 22nd, 2016, the OCI Certification Program WG designated Chris Aniszczyk and Rob Dolin to draft a proposal for formalizing approval of tools. |
| 14 | + |
| 15 | +On Wednesday, August 24th, 2016, the OCI Developer Community (TDC) met and recommended establishing a tools repository corresponding to each of the spec repositories. |
| 16 | + |
| 17 | +## Proposal |
| 18 | +With repositories under the http://github.com/OpenContainers organization: |
| 19 | +* Rename the OCITools repository as runtime-tools |
| 20 | +* Create a new repository named image-tools and populate this with the files from: https://github.com/opencontainers/image-spec/tree/master/cmd/oci-image-tool |
| 21 | + |
| 22 | +### Project Descriptions |
| 23 | +Below are brief draft project descriptions intended to serve as an initial abstract for each project: |
| 24 | +* Runtime-Tools: Tools for testing of container runtimes implementing the OCI runtime-spec. |
| 25 | +This includes code that tests a runtime's conformance to the OCI Container Runtime spec. |
| 26 | +* Image-Tools: Tools for testing of container images implementing the OCI image-spec. |
| 27 | +This includes code that validates a file's conformance to the OCI Container Image Format spec. |
| 28 | + |
| 29 | +### Initial Maintainers |
| 30 | +Initial maintainers of the runtime-tools project: |
| 31 | +* Maintainers of the runtime-spec project |
| 32 | + |
| 33 | +Initial maintainers of the image-tools project shall be: |
| 34 | +* Maintainers of the image-spec project |
| 35 | + |
| 36 | +### Code of Conduct |
| 37 | +Both of the proposed projects would incorporate (by reference) the OCI Code of Conduct |
| 38 | + |
| 39 | +### Governance and Releases |
| 40 | +Both of the proposed projects would incorporate the Governance and Releases processes from the OCI project template: https://github.com/opencontainers/project-template. |
| 41 | + |
| 42 | +### Project Communications |
| 43 | +Both of the proposed projects would continue to use existing channels in use by the OCI developer community for communication including: |
| 44 | +* GitHub for issues and pull requests |
| 45 | +* The dev@opencontainers.org email list |
| 46 | +* The weekly OCI developer community conference call |
| 47 | +* The #OpenContainers IRC channel |
| 48 | + |
| 49 | +### Versioning / Roadmap |
| 50 | +Released version numbers of the runtime-tools and image-tools projects should roughly align with released verions of the associated specs projects. |
| 51 | + |
| 52 | +It is expected that releases of the tools projects will follow releases of the specs projects by anywhere from a few days to a few months. |
| 53 | + |
| 54 | +## Frequenty Asked Questions (FAQ) |
| 55 | +Q: What about the runc project? |
| 56 | +A: This proposal would not impact runc. |
| 57 | +Runc is a reference implementation of the runtime-spec and it lives in its own repo. |
| 58 | + |
| 59 | +Q: What about schemas? |
| 60 | +A: It would be up to the OCI developer community to determine if schemas fit best with the specs or tools projects. |
| 61 | + |
| 62 | +Q: Why are the repo names plural (tools) instead of singular (tool)? |
| 63 | +A: There may be multiple tools or a single tool with multiple functionalities. |
| 64 | + |
| 65 | +Q: Why not prefix the repo names with "oci-" aligning to the CLI commands for invoking the tools? |
| 66 | +A: The repos will be under the http://www.github.com/OpenContainers/ organization. |
| 67 | + |
| 68 | +Q: Why two tools repos? |
| 69 | +A: Having a tools repo for each spec repo allows for releasing a tools repo shortly after a spec stabilizes even if the other tools repo is in a state of flux. |
| 70 | + |
| 71 | +Q: Why is contribution count used to identify potential maintainers? |
| 72 | +A: Contribution count is not a great metric for the value of a contributor's contributions, but this seemed like a reasonable, rough way to identify additional potential maintainers beyond the spec maintainers. |
| 73 | + |
| 74 | +Q: Can additional code/tools be added to the proposed tools repos beyond what is listed above? |
| 75 | +A: Yes. If there is other code or functionality that a contributor believes would be relevant for runtime-related or image-related tools, it would be great if it is contributed. |
| 76 | + |
| 77 | +Q: Does this change the OCI Charter or Scope Table? |
| 78 | +A: No. Nothing in this proposal is intended to amend the OCI Charter (https://www.opencontainers.org/about/governance) or OCI Scope Table (https://www.opencontainers.org/governance/oci-scope-table). |
0 commit comments