kubernetes / node-problem-detector

This is a place for various problem detectors running on the Kubernetes nodes.
Apache License 2.0
2.83k stars 615 forks source link

Add support for CBL-Mariner and Azure Linux #890

Closed hbeberman closed 3 months ago

hbeberman commented 3 months ago

This PR adds support for mariner and azurelinux in the getOSVersion helper function.

Azure Linux (aka CBL-Mariner) is a Linux distribution maintained by Microsoft which is currently available in Azure Kubernetes Service and is also used in other parts of the cloud infrastructure and edge products.

For a few years we've been using a patched version of node-problem-detector which adds Mariner into this switch case. I'm looking to get "mariner" and the upcoming os-release name of "azurelinux" added into node-problem-detector directly so that we can drop the patch and be compatible with instances of the binary built outside of our distro.

linux-foundation-easycla[bot] commented 3 months ago

CLA Signed


The committers listed above are authorized under a signed CLA.

k8s-ci-robot commented 3 months ago

Welcome @hbeberman!

It looks like this is your first PR to kubernetes/node-problem-detector 🎉. Please refer to our pull request process documentation to help your PR have a smooth ride to approval.

You will be prompted by a bot to use commands during the review process. Do not be afraid to follow the prompts! It is okay to experiment. Here is the bot commands documentation.

You can also check if kubernetes/node-problem-detector has its own contribution guidelines.

You may want to refer to our testing guide if you run into trouble with your tests not passing.

If you are having difficulty getting your pull request seen, please follow the recommended escalation practices. Also, for tips and tricks in the contribution process you may want to read the Kubernetes contributor cheat sheet. We want to make sure your contribution gets all the attention it needs!

Thank you, and welcome to Kubernetes. :smiley:

k8s-ci-robot commented 3 months ago

Hi @hbeberman. Thanks for your PR.

I'm waiting for a kubernetes member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
hakman commented 3 months ago

/lgtm /cc @wangzhen127 @vteratipally

hakman commented 3 months ago

@hbeberman Please sign the CLA, to be able to review & merge this. Thanks!

vteratipally commented 3 months ago

/ok-to-test

wangzhen127 commented 3 months ago

The change looks ok to me. Today we do not have any OSS E2E test coverage for those os types. Do you want to add them? This is not a requirement for this PR. But I think it may be beneficial to you.

hbeberman commented 3 months ago

/check-cla

hbeberman commented 3 months ago

@hakman sorry for the delay! I was making sure everything was squared away to sign the CLA from my side, but I've now signed it.

@wangzhen127 great suggestion on the E2Es. I'm looking into the implementation details and will follow up with a separate contribution if it's something we can add for Mariner / Azure Linux.

wangzhen127 commented 3 months ago

/lgtm

k8s-ci-robot commented 3 months ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: hakman, hbeberman, wangzhen127

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files: - ~~[OWNERS](https://github.com/kubernetes/node-problem-detector/blob/master/OWNERS)~~ [wangzhen127] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment