diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index dddbabf15963..d584a570bb3a 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -88,6 +88,8 @@ jobs: The build log is available for 90 days: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} The sha256sum of the SHA256SUMS file itself is \`${shasha}\` . + - - - + Release manager: [ADD YOUR NAME HERE] (@[ADD YOUR GITHUB ID HERE])` EOF - name: "Create release" if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') diff --git a/MAINTAINERS.md b/MAINTAINERS.md index a13014c0828c..15ba55158125 100644 --- a/MAINTAINERS.md +++ b/MAINTAINERS.md @@ -1,10 +1 @@ -# Lima maintainers - -| Name | GitHub ID (not Twitter ID) | GPG fingerprint | -|--------------------|------------------------------------------------|------------------------------------------------------------------------------------------| -| Akihiro Suda | [@AkihiroSuda](https://github.com/AkihiroSuda) | [C020 EA87 6CE4 E06C 7AB9 5AEF 4952 4C6F 9F63 8F1A](https://github.com/AkihiroSuda.gpg) | -| Jan Dubois | [@jandubois](https://github.com/jandubois) | | -| Anders F Björklund | [@afbjorklund](https://github.com/afbjorklund) | | -| Balaji Vijayakumar | [@balajiv113](https://github.com/balajiv113) | | - -See https://github.com/lima-vm/.github/blob/main/SECURITY.md for how to report security issues. +Moved to . diff --git a/README.md b/README.md index 1e1a645b5c18..ca76c2bfbab6 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,6 @@ kubectl apply -f ... See for the further information. ## Community - ### Adopters Container environments: diff --git a/ROADMAP.md b/ROADMAP.md index fd434ef06661..f991e19346cd 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -1,11 +1 @@ -# Lima roadmap - -Instead of using a static text file, Lima uses the `roadmap` label on GitHub issues to designate features or bug fixes that we plan to implement. - -Issues are tagged with the `roadmap` label when at least one maintainer or contributor has declared intent to work on or help with the implementation. - -There are no commitments or timelines attached to the label, and the label may be removed again from an abandoned issue at any time. - -Non-roadmap issues are kept open (as long as they fit the scope of the project) in case a volunteer one day appears and offers to work on them. - -To find the items currently planned for Lima you can filter on [open issues with the `roadmap` label]( https://github.com/lima-vm/lima/issues?q=is%3Aissue+is%3Aopen+label%3Aroadmap). +Moved to . diff --git a/website/content/en/docs/Community/Adopters/_index.md b/website/content/en/docs/Community/Adopters/_index.md new file mode 100644 index 000000000000..138f46928a9a --- /dev/null +++ b/website/content/en/docs/Community/Adopters/_index.md @@ -0,0 +1,14 @@ +--- +title: Projects using Lima +weight: 30 +--- + +## Container environments +- [Rancher Desktop](https://rancherdesktop.io/): Kubernetes and container management to the desktop +- [Colima](https://github.com/abiosoft/colima): Docker (and Kubernetes) on macOS with minimal setup +- [Finch](https://github.com/runfinch/finch): Finch is a command line client for local container development +- [Podman Desktop](https://podman-desktop.io/): Podman Desktop GUI has a plug-in for Lima virtual machines + +## GUI +- [Lima xbar plugin](https://github.com/unixorn/lima-xbar-plugin): [xbar](https://xbarapp.com/) plugin to start/stop VMs from the menu bar and see their running status. +- [lima-gui](https://github.com/afbjorklund/lima-gui): Qt GUI for Lima diff --git a/website/content/en/docs/Community/Contributing/_index.md b/website/content/en/docs/Community/Contributing/_index.md new file mode 100644 index 000000000000..e1448dac0fd0 --- /dev/null +++ b/website/content/en/docs/Community/Contributing/_index.md @@ -0,0 +1,29 @@ +--- +title: Contributing +weight: 20 +--- + +## Developer Certificate of Origin + +Every commit must be signed off with the `Signed-off-by: REAL NAME ` line. + +Use the `git commit -s` command to add the Signed-off-by line. + +See also . + +## Licensing + +Lima is licensed under the terms of [Apache License, Version 2.0](https://github.com/lima-vm/lima/blob/master/LICENSE). + +See also for third-party dependencies. + +## Sending pull requests + +Pull requests can be submitted to . + +## Merging pull requests + +[Committers](../governance) can merge pull requests. + +A Committer shouldn't merge their own pull requests, except for trivial ones +such as typo fixes and image updates (e.g., ). diff --git a/website/content/en/docs/Community/Governance/_index.md b/website/content/en/docs/Community/Governance/_index.md new file mode 100644 index 000000000000..aa14299b2682 --- /dev/null +++ b/website/content/en/docs/Community/Governance/_index.md @@ -0,0 +1,89 @@ +--- +title: Governance +weight: 10 +--- + + + +## Code of Conduct +Lima follows the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). + +## Maintainership +Lima is governed by Maintainers who are elected from active contributors. + +As a [Cloud Native Computing Foundation](https://cncf.io/) project, Lima will keep its [vendor-neutrality](https://contribute.cncf.io/maintainers/community/vendor-neutrality/). + +### Roles +Maintainers consist of two roles: + +- **Committer** (Full maintainership): Committers have full write accesses to repos under . + Committers' commits should still be made via GitHub pull requests (except for urgent secuirity fixes), and should not be pushed directly. + Committers are also recognized as Maintainers in . + +- **Reviewer** (Limited maintainership): Reviewers may moderate GitHub issues and pull requests (such as adding labels and cleaning up spams), + but they do not have any access to merge pull requests nor push commits. + A Reviewer is considered to as a candidate of Committers. + +See also the [Contributing](../contributing) page. + +### Current maintainers + +| Name | Role | GitHub ID (not Twitter ID) | GPG fingerprint | +|--------------------|-----------|------------------------------------------------|------------------------------------------------------------------------------------------| +| Akihiro Suda | Committer | [@AkihiroSuda](https://github.com/AkihiroSuda) | [C020 EA87 6CE4 E06C 7AB9 5AEF 4952 4C6F 9F63 8F1A](https://github.com/AkihiroSuda.gpg) | +| Jan Dubois | Committer | [@jandubois](https://github.com/jandubois) | | +| Anders F Björklund | Committer | [@afbjorklund](https://github.com/afbjorklund) | | +| Balaji Vijayakumar | Committer | [@balajiv113](https://github.com/balajiv113) | | + + + +### Addition and promotion of Maintainers +An active contributor to the project can be invited as a Reviewer, +and can be eventually promoted to a Committer after 2 months at least. + +A contributor who have made significant contributions in quality and in quantity +can be also directly invited as a Committer. + +A proposal to add or promote a Maintainer must be approved by 2/3 of the Committers who vote within 7 days. + +A proposal should happen as a GitHub pull request to the Maintainer list above. +It is highly suggested to reach out to the Committers before submitting a pull request to check the will of the Committers. + +### Removal and demotion of Maintainers +A Maintainer who do not show significant activities for 6 months, or, who have been violating the Code of Conduct, +may be demoted or removed from the project. + +A proposal to demote or remove a Maintainer must be approved by 2/3 of the Committers (excluding the person in question) who vote within 14 days. + +A proposal may happen as a GitHub pull request, or, as a private discussion in the case of removal of a harmful Maintainer. +It is highly suggested to reach out to the Committers before submitting a pull request to check the will of the Committers. + +### Other decisions +Any decision that is not documented here can be made by the Committers. +When a dispute happens across the Committers, it will be resolved through a majority vote within the Committers. + +## Release process + +Eligibility to be a release manager: +- MUST be an active Commiter +- MUST have the GPG fingerprint listed in the maintainer list above +- MUST upload the GPG public key to `https://github.com/USERNAME.gpg` +- MUST protect the GPG key with a passphrase or a hardware token. + +Release steps: +- Open an issue to propose making a new release. e.g., . + The proposal should be public, with an exception for vulnerability fixes. + If this is the first time for you to take a role of release management, + you SHOULD make a beta (or alpha, RC) release as an exercise before releasing GA. +- Make sure that all the merged PRs are associated with the correct [Milestone](https://github.com/lima-vm/lima/milestones). +- Run `git tag --sign vX.Y.Z-beta.W` . +- Run `git push UPSTREAM vX.Y.Z-beta.W` . +- Wait for the `Release` action on GitHub Actions to complete. A draft release will appear in https://github.com/lima-vm/lima/releases . +- Download `SHA256SUMS` from the draft release, and confirm that it corresponds to the hashes printed in the build logs on the `Release` action. +- Sign `SHA256SUMS` with `gpg --detach-sign -a SHA256SUMS` to produce `SHA256SUMS.asc`, and upload it to the draft release. +- Add release notes in the draft release, to explain the changes and show appreciation to the contributors. + Make sure to fulfill the `Release manager: [ADD YOUR NAME HERE] (@[ADD YOUR GITHUB ID HERE])` line with your name. + e.g., `Release manager: Akihiro Suda (@AkihiroSuda)` . +- Click the `Set as a pre-release` checkbox if this release is a beta (or alpha, RC). +- Click the `Publish release` button. +- Close the [Milestone](https://github.com/lima-vm/lima/milestones). diff --git a/website/content/en/docs/Community/Roadmap/_index.md b/website/content/en/docs/Community/Roadmap/_index.md new file mode 100644 index 000000000000..66ac9ab4d6ec --- /dev/null +++ b/website/content/en/docs/Community/Roadmap/_index.md @@ -0,0 +1,14 @@ +--- +title: Roadmap +weight: 50 +--- + +Instead of using a static text file, Lima uses the `roadmap` label on GitHub issues to designate features or bug fixes that we plan to implement. + +Issues are tagged with the `roadmap` label when at least one maintainer or contributor has declared intent to work on or help with the implementation. + +There are no commitments or timelines attached to the label, and the label may be removed again from an abandoned issue at any time. + +Non-roadmap issues are kept open (as long as they fit the scope of the project) in case a volunteer one day appears and offers to work on them. + +To find the items currently planned for Lima you can filter on [open issues with the `roadmap` label]( https://github.com/lima-vm/lima/issues?q=is%3Aissue+is%3Aopen+label%3Aroadmap). diff --git a/website/content/en/docs/Community/Subprojects/_index.md b/website/content/en/docs/Community/Subprojects/_index.md new file mode 100644 index 000000000000..c599c83686dc --- /dev/null +++ b/website/content/en/docs/Community/Subprojects/_index.md @@ -0,0 +1,15 @@ +--- +title: Subprojects +weight: 90 +--- + +Some portions of Lima are useful for other projects too and split out to separate repos: + +- : vmnet.framework support for unmodified rootless QEMU +- : qcow2 reader for Go +- : ssh + reverse sshfs + port forwarder, in Docker-like CLI (predecessor of Lima) +- : Create an alpine based image for lima + +See also for other subprojects. + +The maintainership of the subprojects corresponds to the [maintainership](../governance) of Lima itself. diff --git a/website/content/en/docs/Community/_index.md b/website/content/en/docs/Community/_index.md new file mode 100644 index 000000000000..90c5e7b3e6ed --- /dev/null +++ b/website/content/en/docs/Community/_index.md @@ -0,0 +1,17 @@ +--- +title: Community +weight: 400 +--- + +## Communication channels + +- [GitHub Discussions](https://github.com/lima-vm/lima/discussions) + +- `#lima` channel in the CNCF Slack + - New account: + - Login: + +- Zoom meetings are currently not regularly held due to timezone diversity, + but feel free to reach out to us if you want to host meetings + +- See for how to report security issues. diff --git a/website/layouts/partials/community_links.html b/website/layouts/partials/community_links.html index bc35174f06a5..e1d466dc2383 100644 --- a/website/layouts/partials/community_links.html +++ b/website/layouts/partials/community_links.html @@ -16,7 +16,7 @@

{{ T "community_develop" }}

{{ end }}

{{ T "community_how_to" . }} - {{ T "community_guideline" }}. + {{ T "community_guideline" }}.