Skip to content

Fixes #38914 - Use ETag-aware patch_if_match for Redfish operations#930

Open
spesnova717 wants to merge 1 commit intotheforeman:developfrom
spesnova717:feature/redfish-etag-support
Open

Fixes #38914 - Use ETag-aware patch_if_match for Redfish operations#930
spesnova717 wants to merge 1 commit intotheforeman:developfrom
spesnova717:feature/redfish-etag-support

Conversation

@spesnova717
Copy link

Summary

Some Redfish implementations reject PATCH requests without If-Match.
This change updates boot device operations to use
patch_if_match, enabling ETag-based conditional PATCH when needed.

Problem

Certain BMC implementations require the If-Match header
with ETag values for PATCH operations.
The previous implementation using system.patch
did not include this header, causing operations to fail on some hardware.

Solution

Changed PATCH operations in modules/bmc/redfish.rb to use patch_if_match,
which automatically includes the If-Match header with the appropriate ETag value when available.

@spesnova717 spesnova717 force-pushed the feature/redfish-etag-support branch from 9b48f9f to 1519582 Compare February 25, 2026 05:56
@spesnova717 spesnova717 marked this pull request as ready for review February 25, 2026 06:04
@spesnova717
Copy link
Author

Hi @ekohl ,

redfish_client 0.8.0 has now been officially released with ETag support included.
I've updated the dependency to use the released 0.8.0 version instead of the forked branch.

Thank you as always for your review.

Some Redfish implementations reject PATCH requests without If-Match.
This change updates boot device operations to use
patch_if_match, enabling ETag-based conditional PATCH when needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants