Currently multus team supports Kubernetes that Kubernetes community maintains. See Version Skew Policy for the details.
Latest multus uses distroless container image for its base,
hence there is no shell command. If you want to execute shell in multus pod, please use -debug
image (e.g. ghcr.io/k8snetworkplumbingwg/multus-cni:snapshot-debug), which has shell.
Multus now uses gopkg.in to expose its code as library. You can use following command to import our code into your go code.
go get gopkg.in/k8snetworkplumbingwg/multus-cni.v4
Use GitHub as normally, you'll be presented with an option to submit a issue or enhancement request.
Issues are considered stale after 90 days. After which, the maintainers reserve the right to close an issue.
Typically, we'll tag the submitter and ask for more information if necessary before closing.
If an issue is closed that you don't feel is sufficiently resolved, please feel free to re-open the issue and provide any necessary information.
You can use the built in ./hack/build-go.sh
script!
git clone https://github.com/k8snetworkplumbingwg/multus-cni.git
cd multus-cni
./hack/build-go.sh
Multus has go unit tests (based on ginkgo framework).The following commands drive CI tests manually in your environment:
sudo ./hack/test-go.sh
The following are the best practices for multus logging:
- Add
logging.Debugf()
at the beginning of functions - In case of error handling, use
logging.Errorf()
with given error info logging.Panicf()
only be used for critical errors (it should NOT normally be used)
On the first maintainer's meeting, twice yearly, after January 1st and July 1st, if a new version has not been tagged, a new version will tagged.
Multus is currently built for a number of architectures, however, our testing and validation is only performed against x86 architectures. Our x86 architecture has end to end testing, however, for other architectures, only supported via best effort community contributions.