Releases: ironcore-dev/metal-operator
Releases · ironcore-dev/metal-operator
v0.4.0
Changes
⚠️ Breaking
- Remove deprecated uuid field from ServerSpec @afritzler (#699)
🚀 Features
- Reconcile
Settypes until all patching/creation is completed @nagadeesh-nagaraja (#676) - Remove deprecated uuid field from ServerSpec @afritzler (#699)
- Add
DNSRecordtemplate volume to Helm chart @stefanhipfel (#660) - Update gofish dependency and adjust for changes @stmcginnis (#644)
- Add priority field to ServerMaintenance for ordering maintenance tasks @stefanhipfel (#687)
- Add short names to metal resources @afritzler (#679)
- Kubebuilder update from v4.11.1 to v4.12.0 @afritzler (#686)
🐛 Bug Fixes
- Ensure
ServerMaintenanceis removed when performing a BMC version upgrade @stefanhipfel (#712) - Bump
gofishto v0.21.4 @xkonni (#717) - Fix percentage display in BMC/BIOS update conditions @xkonni (#711)
- Fix flaky BMCVersion/BIOSVersion tests due to nil UpgradeTask pointer @afritzler (#703)
- Refactor BIOSSettings and BMCSettings with condition-based state tracking @nagadeesh-nagaraja (#653)
🧰 Maintenance
- Bump go.opentelemetry.io/otel/sdk from 1.38.0 to 1.40.0 @dependabot[bot] (#716)
- Bump rollup from 4.42.0 to 4.59.0 @dependabot[bot] (#715)
- Bump lodash-es and mermaid @dependabot[bot] (#702)
- Bump github.com/stmcginnis/gofish from 0.21.1 to 0.21.3 @dependabot[bot] (#701)
- Fix release drafter to support drafting patch releases on release branches @afritzler (#698)
- Set correct branch for releases @afritzler (#697)
- Add CLAUDE.md to point to AGENTS.md @afritzler (#694)
- Bump github.com/jaypipes/ghw from 0.22.0 to 0.23.0 @dependabot[bot] (#682)
- Bump golang from 1.25.7 to 1.26.0 @dependabot[bot] (#681)
- Collaps concepts section in docs @afritzler (#677)
v0.3.0
Changes
🚀 Features
- Add release branching and cherry picking process @afritzler (#669)
- Add
ServerMaintenanceRequestedcommon label @defo89 (#675) - Use Header.Get("ETag") instead of accessing Header map directly @stefanhipfel (#673)
- Update
kubebuilderto v4.11.1 @asergeant01 (#636) - Refactor mock server @afritzler (#643)
- Use
ginkgoinstead ofgo test@afritzler (#638) - Bump
k8s.io/*to v1.35 @afritzler (#602) - Harmonize
BMCUserreconciler and improve finalizer deletion @afritzler (#627) - Add
BMCUsertype and controller @stefanhipfel (#368) - Support
ServerMaintenanceApprovallabel @defo89 (#618) - Improved automated chart versioning @asergeant01 (#609)
🐛 Bug Fixes
- Fix
GetServerByNamehelper function @nagadeesh-nagaraja (#674) - Add missing roles to
rbackustomization @asergeant01 (#670) - Fix certificate dns names for webhook and metrics services @asergeant01 (#665)
- Move readiness validation for server boot configuration after claim allocaton @nagadeesh-nagaraja (#663)
- Update
BIOSSettingsdocs @afritzler (#651) - Enqueue multiple ServerClaims on Server changes @Nuckal777 (#632)
- Support
ServerMaintenanceApprovallabel @defo89 (#618) - Set maintenance needed label on
ServerClaim@defo89 (#615)
🧰 Maintenance
- Add
ServerMaintenanceRequestedcommon label @defo89 (#675) - Set container image repository and tag in helm chart @defo89 (#666)
- Bump actions/checkout from 4 to 6 @dependabot[bot] (#659)
- Bump golang.org/x/crypto from 0.47.0 to 0.48.0 @dependabot[bot] (#658)
- Bump actions/setup-go from 5 to 6 @dependabot[bot] (#657)
- Bump golang from 1.25.6 to 1.25.7 @dependabot[bot] (#655)
- Bump github.com/jaypipes/ghw from 0.21.2 to 0.22.0 @dependabot[bot] (#656)
- Allow PR based image publishing via
publish-imagelabel @afritzler (#650) - Enable
kubebuilderautoupdate plugin via github workflow @asergeant01 (#648) - Verify that
BMCSettingscorrectly transition to a deletable @Nuckal777 (#634) - Bump github.com/onsi/gomega from 1.39.0 to 1.39.1 @dependabot[bot] (#641)
- Bump github.com/onsi/ginkgo/v2 from 2.27.5 to 2.28.1 @dependabot[bot] (#642)
- Bump golang from 1.25.5 to 1.25.6 @dependabot[bot] (#614)
v0.2.1
Changes
🚀 Features
- Rename
BIOSVersionProcessingstate toInProgress@xkonni (#597) - Add
UnknownBMC powerstate @xkonni (#601) - Improve Dell hardware support with enhanced firmware updates and BMC configuration @tobiasb-dell (#579)
🐛 Bug Fixes
- Set UEFI boot mode override explicitly on Supermicro servers @afritzler (#607)
- Fix RBAC generation for
BMCSettingsSets@videlov (#605)
🧰 Maintenance
- Improved internal code structure of the
bmcpackage @afritzler (#599)
v0.2.0
Changes
🚀 Features
- Add installation guide for
kustomize@afritzler (#598) - Add DNS record creation support for servers @stefanhipfel (#546)
- Fix Server UUID print column @Nuckal777 (#595)
- Add
BMCSettingsSettype and controller @davidgrun (#471) - Transition
ServertoMaintenancein case of pending BIOS settings exist @xkonni (#581) - Improve watch setup in
ServerMaintenancereconciler @afritzler (#564) - Improve watch setup in
BIOSSettingsReconciler@afritzler (#568) - Refactor
BIOSVersionSetReconciler@afritzler (#572) - Refactor
BIOSVersionwebhook @afritzler (#575) - Refactor
BIOSSettingswebhook @afritzler (#574) - Refactor
BIOSSettingsSetReconcilerand improve watch setup @afritzler (#571) - Remove
ServerMaintainenceRefsfrom Spec inSetCRDs @nagadeesh-nagaraja (#515) - Refactor
BIOSSettingsreconciler @afritzler (#554) - Use
crd-ref-docsfor API reference documentation generation @xkonni (#563) - Switch from uuid to systemUUID for
ServerCR @Nuckal777 (#561) - Use global condition accessor for all reconcilers @afritzler (#551)
- Refactor
BIOSVersionreconciler @afritzler (#550) - Add
BMCSettingsupdate for HPE and Lenovo systems @nagadeesh-nagaraja (#541) - Refactor
BMCVersionreconciler @afritzler (#543) - Extend
NetworkInterfacestatus with LLDP neighbor information @xkonni (#492) - Stabilize unit testing @nagadeesh-nagaraja (#540)
- Move some server changes into server state handlers @Nuckal777 (#535)
- Reset BMC through BMC Resource Controller @nagadeesh-nagaraja (#505)
- Add bootstate endpoint to registry server @Nuckal777 (#424)
- Report error on unknown BMC protocol @maxmoehl (#530)
- Add registry server
Serviceto Helm chart @asergeant01 (#513) - Add printcolumn for
Serverstotal system memory @afritzler (#529) - Move RedFish mock methods to the go mock server @nagadeesh-nagaraja (#508)
- Propagate retry operation from
Setresources to child resources @nagadeesh-nagaraja (#495) - Refactor
cmdinternal packages @afritzler (#525) - De-normalize tests and ensure clean state before each
It()run @afritzler (#516) - Add
ConditionstoServerbootConfigstatus @hardikdr (#519) - Switch from
networkctltolldpdinmetalprobe@xkonni (#512) - Add hardware detail extraction to
metalprobe(inventory) @5kt (#452) - Bump
k8s.io/*to v1.34 @afritzler (#498)
🐛 Bug Fixes
- Fix Server UUID print column @Nuckal777 (#595)
- Set correct UEFI boot mode on next boot @afritzler (#590)
- Transition
ServertoMaintenancein case of pending BIOS settings exist @xkonni (#581) - Fix
ginkgoimport chain inmanagercmd @afritzler (#591) - Fix
kindlocal registry @defo89 (#588) - Fix handling of
BootSourceOverrideModefor older Redfish @briantopping (#553) - Fix
ServerMaintenancereconciler watch setup @nagadeesh-nagaraja (#549) - Fix
BIOSSettingsupdates for HPEServers@nagadeesh-nagaraja (#547) - Fix updating status in biosSettings and server CRD state transition @nagadeesh-nagaraja (#533)
- Fix
lldptests on darwin @xkonni (#521)
🧰 Maintenance
- Use constants for mock server addresses and port in unit tests @xkonni (#592)
- Bump github.com/onsi/ginkgo/v2 from 2.27.3 to 2.27.4 @dependabot[bot] (#586)
- Bump github.com/onsi/gomega from 1.38.3 to 1.39.0 @dependabot[bot] (#585)
- Bump golang.org/x/crypto from 0.46.0 to 0.47.0 @dependabot[bot] (#587)
- Add review instructions for agents @afritzler (#583)
- Bump github.com/jaypipes/ghw from 0.21.1 to 0.21.2 @dependabot[bot] (#578)
- Bump preact from 10.26.8 to 10.28.2 @dependabot[bot] (#582)
- Move
tiltkind setup script tohackfolder @afritzler (#576) - Bump github.com/jaypipes/ghw from 0.21.0 to 0.21.1 @dependabot[bot] (#569)
- Bump golang.org/x/crypto from 0.45.0 to 0.46.0 @dependabot[bot] (#570)
- Use proper naming in GH workflows @afritzler (#565)
- Add codeowners to project @afritzler (#566)
- Bump github.com/onsi/ginkgo/v2 from 2.27.2 to 2.27.3 @dependabot[bot] (#558)
- Bump github.com/onsi/gomega from 1.38.2 to 1.38.3 @dependabot[bot] (#559)
- Bump github.com/spf13/cobra from 1.10.1 to 1.10.2 @dependabot[bot] (#557)
- Bump github.com/jaypipes/ghw from 0.20.0 to 0.21.0 @dependabot[bot] (#556)
- Bump golang from 1.25.4 to 1.25.5 @dependabot[bot] (#555)
- Use
intas underlying type forBMCClientOptions@Nuckal777 (#534) - Bump mdast-util-to-hast from 13.2.0 to 13.2.1 @dependabot[bot] (#545)
- Bump github.com/safchain/ethtool from 0.6.2 to 0.7.0 @dependabot[bot] (#538)
- Bump actions/checkout from 5 to 6 @dependabot[bot] (#537)
- Bump golang.org/x/crypto from 0.43.0 to 0.45.0 @dependabot[bot] (#532)
- Bump golang from 1.25.3 to 1.25.4 @dependabot[bot] (#523)
- Bump golangci/golangci-lint-action from 8 to 9 @dependabot[bot] (#524)
- Bump github.com/ironcore-dev/controller-utils from 0.10.0 to 0.11.0 @dependabot[bot] (#510)
- Bump github.com/jaypipes/ghw from 0.19.1 to 0.20.0 @dependabot[bot] (#517)
- Bump github.com/onsi/ginkgo/v2 from 2.26.0 to 2.27.2 @dependabot[bot] (#518)
- Bump vite from 5.4.20 to 5.4.21 @dependabot[bot] (#502)
- Bump golang.org/x/crypto from 0.42.0 to 0.43.0 @dependabot[bot] (#499)
- Bump actions/setup-node from 5 to 6 @dependabot[bot] (#500)
- Bump golang from 1.25.2 to 1.25.3 @dependabot[bot] (#501)
v0.1.0
Changes
⚠️ Breaking
- Check for pending tasks during
BIOSSettingsupdate @nagadeesh-nagaraja (#298) - Add systemUUID to Server CRD @Nuckal777 (#195)
- Add
drivesandvolumestoserver.status.storages@stefanhipfel (#163) - Add inline
EndpointtoBMCtype @afritzler (#151) - Change resource naming scheme @afritzler (#123)
🚀 Features
- Allow retry from failed state for BIOS/BMC Settings/Version resources @nagadeesh-nagaraja (#431)
- Add ability to set BIOS settings in sequence @nagadeesh-nagaraja (#403)
- Add transition condition to powering a Server @Nuckal777 (#422)
- Replace broken ticker raw source with
RequeueAfter@Nuckal777 (#423) - Add BMCVersionSet resource and controller @nagadeesh-nagaraja (#412)
- Add
BIOSVersiontoServerstatus @afritzler (#411) - Fix RBAC for
BIOSVersionSet@afritzler (#414) - Use
GeneratedNameswhen creatingServerMaintenanceforBIOSSettings@nagadeesh-nagaraja (#410) - Add
BIOSVersionSetresource and controller @nagadeesh-nagaraja (#384) - Add
Servervalidation webhook @nagadeesh-nagaraja (#387) - Add
BMCVersionresource and controller implementation @nagadeesh-nagaraja (#343) - Remove claim mutex from
ServerClaimreconciler @Nuckal777 (#391) - Harmonize API comments and marker @afritzler (#388)
- Use optimisitc lock when claiming a Server @Nuckal777 (#389)
- Use uri to fetch the ComputeSystem from redfish API instead of UUID @nagadeesh-nagaraja (#337)
- Add Conditions to
BIOSSettingsstatus @nagadeesh-nagaraja (#386) - Remove
BMCSettingswhenBMCresource is deleted @nagadeesh-nagaraja (#380) - Delete
BIOSSettingswhenServeris deleted @SzymonSAP (#382) - Validate that the claim in
Serveris not switched directly @fwiesel (#376) - Add
BMCSettingstype and controller implementation @nagadeesh-nagaraja (#303) - Transition unclaimed
ServersfromMaintenancetoInitialstate @stefanhipfel (#370) - Revert Option for naming
Serversas theBMCobjects and related @fwiesel (#375) - Add flag to facilitate
Servername migration @fwiesel (#369) - Adopt Helm charts for remote cluster use case @SzymonSAP (#355)
- Option for naming
Serversas theBMCobjects @fwiesel (#362) - Switch docs to vitepress @afritzler (#359)
- Refactor usage of
GetBMCClientForServer@afritzler (#354) - Bump
k8s.io/*to v1.33 andcontroller-runtimeto v0.21.0 @afritzler (#341) - Rename
BMCOptionstoOptions@afritzler (#352) - Add
BIOSVersionresource and controller implementation @nagadeesh-nagaraja (#311) - Factor out common test helpers into own file and remove flakiness @nagadeesh-nagaraja (#336)
- Use 9443 port for webhook @SzymonSAP (#335)
- Add processor information to
Serverstatus @afritzler (#329) - Update docs for BIOS/BMC settings and version types @nagadeesh-nagaraja (#321)
- Check for pending tasks during
BIOSSettingsupdate @nagadeesh-nagaraja (#298) - Prepare CRDs folder with kustomize @SzymonSAP (#324)
- Add webhook for
BIOSSettingsresources @nagadeesh-nagaraja (#315) - Remove
Completedstate fromServerMaintenance@stefanhipfel (#286) - Update Helm release workflow @afritzler (#317)
- Add Helm chart publishing workflow @SzymonSAP (#281)
- Add additional unit tests for
BIOSSettingscontroller @nagadeesh-nagaraja (#297) - Add documentation for
BIOSSettingsresource @nagadeesh-nagaraja (#294) - Add
BIOSSettingstype and controller implementation @nagadeesh-nagaraja (#267) - Drop
kube-rbac-proxycontainer usage inconfig@Rohit-0505 (#243) - Add per
BMCprotocol scheme configuration in macdb @afritzler (#261) - Bump golang to 1.24 and
k8s.io/*deps to v0.32.3 @afritzler (#280) - Update API reference docs @afritzler (#275)
- Add
ServerMaintenanceReconcilerimplementation @stefanhipfel (#265) - Bump golangci/golangci-lint-action from 6 to 7 @dependabot[bot] (#268)
- Use upstream docs publishing workflow @ushabelgur (#273)
- Add helm chart @SzymonSAP (#264)
- Enhance
BMCReconcilerfor Improved Robustness and Efficiency @afritzler (#260) - Add
is-default-os-imageannotation to discovery boot SBC @afritzler (#248) - Parallelize
ServerClaimreconciliation @Nuckal777 (#251) - Add
ServerMaintenanceAPI type @afritzler (#208) - Make
Servermax concurrent reconciles configurable @afritzler (#245) - Validate Server discovery failure in an extra test @Nuckal777 (#236)
- Add
instance-typeannotation constant @afritzler (#235) - Order resource deletions in controller tests properly @Nuckal777 (#231)
- Revert "Make
MACAddressfield inBMCEndpointoptional" @afritzler (#225) - Make
macAddressfield in BMCInlineEndpointoptional @defo89 (#224) - Make
MACAddressfield inBMCEndpointoptional @defo89 (#223) - Apply
BMClabels toServeron creation @defo89 (#222) - Add
metaluser and SSH Keypair duringDiscoveryboot @afritzler (#219) - Fix controllerutil.CreateOrPatch() calls @Nuckal777 (#216)
- Add
metalctl consolesubcommand @afritzler (#201) - Add systemUUID to Server CRD @Nuckal777 (#195)
- Add
metalctlcommand line interface @SzymonSAP (#162) - Add
Endpointwebhook ensuring unique MAC addresses @damyan (#187) - Add wait polling for retrieving redfish storages and systems @stefanhipfel (#174)
- Add
TotalSystemMemorytoServerstatus @stefanhipfel (#173) - Add
add-licenseandcheck-licensemakedirective @afritzler (#179) - Migrate to CRD validation rules @Nuckal777 (#169)
- Log
BMCaddress when creating a client for anEndpoint@afritzler (#166) - Add
drivesandvolumestoserver.status.storages@stefanhipfel (#163) - Use lower-case
ServerUUIDs @afritzler (#161) - Fix default webhook port and disable metrics server in test suite @afritzler (#156)
- Add inline
EndpointtoBMCtype @afritzler (#151) - Add initial project documentation @afritzler (#152)
- Extract storage details of a
Serverusing Redfish @stefanhipfel (#143) - Add timeout check in discovery state @stefanhipfel (#136)
- Add
Servermodel to.status@defo89 (#132) - Requeue for Power state polling and ensuring
ServerClaimbinding @defo89 (#131) - Retry with
ForcePowerOffif graceful shutdown times out @defo89 (#129) - Wait for
Serverpower transition @afritzler (#128) - Bump
k8s.io/*deps to v0.31.1 @afritzler (#127) - Add
Tiltfor local development @defo89 (#120) - Add handling of
Resetad-hoc operation toServertype @stefanhipfel (#125) - Change resource naming scheme @afritzler (#123)
- Add time triggered
Serverpolling @afritzler (#114) - Switch default webhook port from
9443to9445@afritzler (#113) - Improve network inteface filtering in
metalprobe@afritzler (#112) - Allow the discovery of
Serverswhich are in the poweredOnstate. @afritzler (#109) - Add
DiscoveryState and reworkInitialpower/pxe handling @defo89 (#98) - Make webhook port configurable @defo89 (#102)
- Expose BIOS configuration in
Servertype @stefanhipfel (#89) - Add sample manifests @afritzler (#96)
- Add
config/devkustomize @defo89 (#95) - Implement
ServerSelectorinServerClaimReconciler@aobort (#86) - Add validating webhook for
ServerClaim@afritzler (#88) - Add support for inline BMC access in
Serverreconciler @afritzler (#84) - Add documentation to API types @afritzler (#75)
- Add API reference docs generation @afritzler (#74)
- Add local dev setup guide @afritzler (#72)
- Bump
k8s.io/*to v0.30.2 @afritzler (#69) - Move project to
ironcore-dev@afritzler (#51) - Optimize Redfish PowerOn Method @hardikdr (#49)
- Adapt default ignition systemd units @hardikdr (#48)
- PXE boot
ServerClaimedServer@afritzler (#36) - Improve removal of initial
ServerBootConfiguration@afritzler (#35) - Remove
Serverfrom registry once reachedAvailable@afritzler (#31) - Fix
BMCreconciliation and print columns @afritzler (#30) - Ensure
ServerBootConfigurationremoval onServeravailable state @afritzler (#29) - Enable caching in container build @afritzler (#21)
- Add
ServerClaimreconciler @afritzler (#19) - Add
RedfishLocalBMC protocol type @afritzler (#17) - Make initial boot OS configurable @afritzler (#5)
- Handle
Serverdeletion @afritzler (#4)
🐛 Bug Fixes
- Allow updates of
{BMC,BIOS}Settingsand{BMC,BIOS}VersionwhenServerMaintenancesare not yet created @nagadeesh-nagaraja (#418) - Fix RBAC for
BIOSVersionSet@afritzler (#414) - Do not omit errors after ensureServerStateTransition @videlov (#407)
- Fix local docs setup @afritzler (#364)
- Fix docs base path @afritzler (#363)
- Fix docs publishing workflow @afritzler (#361)
- Improve resource cleanup in suite tests @SzymonSAP (#328)
- Skip
ServerClaimreconciliation whenServeris inMaintenancestate @nagadeesh-nagaraja (#301) - Add missing RBAC rules for
ServerClaimsin default kustomization @Rohit-0505 (#296) - Fix
Serverstate transitions (maintenance->reseverd->available) @stefanhipfel (#278) - Set the correct
ServerReconcilermax reconciles @afritzler (#246) - Fix
ServerClaimwith label selector claiming multiple servers @Nuckal777 (#230) - Install
docker-cliinmetalprobeservice @defo89 (#229) - Free up
Serverif referencedServerClaimdoes not exist @defo89 (#228) - Revert "Make
MACAddressfield inBMCEndpointoptional" @afritzler (#225) - Fix controllerutil.CreateOrPatch() calls @Nuckal777 (#216)
- Fix webhook port in service to 9445 @afritzler (#202)
- Fix webhook cert injection @aobort (#197)
- Fix sporadic in probe tests @afritzler (#193)
- Fix sporadic test failures @Nuckal777 (#192)
- Fix multiple
ServerClaimreferences @lukasfrank (#190) - Fix BMC IPv6 address handling @damyan (#172)
- Claim only
PoweredOffServers @defo89 (#159) - Fix multiple
ServerClaimsclaiming sameServerobject @afritzler (#158) - Fix...