Edge Microvisor Toolkit Contribution Guide#

Edge Microvisor Toolkit is open source and always welcomes an active community to support adding new features, optimizing, and improving security.

There are many areas in which you can contribute, such as:

  1. The build infrastructure pipeline.

  2. New features and functionality in new or existing microvisor image definitions.

  3. Support for new edge platforms.

New Features#

New feature requests should always be made by opening an Architecture Decision Record (ADR) GitHub issue, regardless of whether you want to contribute directly or just file a request. To do so, use the Design Proposal template and provide as much information as possible. This helps maintainers and stakeholders to review, better understand, and prioritize the request.

Contribution Flow#

All contributing Pull Requests should target the 3.0-dev branch. This branch is used for development, testing, and validation. It is merged to the 3.0 release branch by project maintainers, at their discretion. The 3.0 branch is used for publishing official releases of the EMT images.

All contributed changes are published with the following release, according to the release policy. Both issues and feature requests (also raised as issues) are evaluated and prioritized by product maintainers. This means they may or may not be included in the next release.

Following the Azure Linux scheme for packages, Edge Microvisor Toolkit maintains two directories:

When raising a PR, make sure that:

  • The cgmanifest file is up-to-date and alphabetically sorted. It is used to record all package sources. To validate it, run:

    .github/workflows/validate-cg-manifest.sh SPECS/<package name>/<package-name>.spec
    
  • All source files have up-to-date hashes in the *.signatures.json files. This hash can be generated by sha256sum or by using a make target:

    cd toolkit
    sudo make input-srpms REBUILD_TOOLS=y SRPM_FILE_SIGNATURE_HANDLING=update
    
  • The baseline branch for the pull request is set to 3.0-dev.

Contribution license#

Since Edge Microvisor Toolkit is licensed under the MIT license, by contributing to the project, you confirm that your contribution is your own, it may legally be published under the same license, and you grant us the rights to do so.