tinkerbell / rufio

Kubernetes Controller for BMC Interactions
Apache License 2.0
35 stars 16 forks source link

feat(intelAMT): add support for HTTPS connections #224

Closed synthe102 closed 3 months ago

synthe102 commented 3 months ago

Description

This pull request add support for HTTPS connections with Intel AMT BMCs. Currently bmclib uses http as a default connection scheme which is not supported on modern AMT platforms (like the Minisforum MS-01 that I used to test this change), and there is no way to set the connection scheme to https with the current Machine API.

Why is this needed

This is needed to add support for AMT hosts that only support HTTPS connection scheme.

Fixes: #

How Has This Been Tested?

These changes were tested against a Minisforum MS-01 PC that only supports HTTPS AMT. A Machine was created that couldn't fetch the powerstate since the authentication would fail because the client would default to http. With these changes, rufio can successfully interact with the AMT BMC on the computer using https scheme.

How are existing users impacted? What migration steps/scripts do we need?

No migration is needed, the new hostScheme field defaults to http which keeps the default behavior.

Checklist:

I have:

codecov[bot] commented 3 months ago

Codecov Report

Attention: Patch coverage is 0% with 3 lines in your changes are missing coverage. Please review.

Project coverage is 47.91%. Comparing base (736ddc0) to head (7c7a25d).

Files Patch % Lines
controller/client.go 0.00% 3 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #224 +/- ## ========================================== - Coverage 47.96% 47.91% -0.05% ========================================== Files 11 11 Lines 1080 1081 +1 ========================================== Hits 518 518 - Misses 507 508 +1 Partials 55 55 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.