-
Notifications
You must be signed in to change notification settings - Fork 244
feat: add Ubuntu 22.04 FIPS VHDs #7721
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Update vhd-scanning.sh Update vhd-scanning.sh Revert "try another sku with lower core counts" This reverts commit a5094f0.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR enables the creation of Ubuntu 22.04 FIPS VHDs by implementing support for FIPS 140-3 encryption through Azure REST API calls. Previously blocked due to the need for FIPS 140-3 encryption (which requires subscription feature registration), this implementation follows the Microsoft documentation for Azure VM extensions with FIPS support.
Changes:
- Added new
fips-helper.shscript with functions to register the FIPS 140-3 compliance feature and create VMs via REST API with FIPS encryption enabled - Modified
vhd-scanning.shto detect Ubuntu 22.04 FIPS scenarios and route VM creation through the new REST API approach instead of standardaz vm create - Updated Go datamodel to use the dynamic
LinuxSIGImageVersionfor Ubuntu 22.04 FIPS images instead of hardcoded placeholder versions - Enabled Ubuntu 22.04 FIPS builds in the release pipeline by setting default values to
true
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| vhdbuilder/packer/fips-helper.sh | New helper script containing functions for FIPS 140-3 feature registration and REST API-based VM creation |
| vhdbuilder/packer/vhd-scanning.sh | Modified to detect Ubuntu 22.04 FIPS scenario and invoke the new FIPS helper functions; refactored VM_SIZE into a variable for reusability |
| pkg/agent/datamodel/sig_config.go | Updated version field from hardcoded placeholder to dynamic LinuxSIGImageVersion for both 2204 FIPS image templates |
| pkg/agent/datamodel/sig_config_test.go | Added test expectations for the two new Ubuntu 22.04 FIPS distros |
| .pipelines/.vsts-vhd-builder-release.yaml | Enabled Ubuntu 22.04 FIPS builds by changing defaults from false to true |
Co-authored-by: Calvin Shum <calvin197@ymail.com>
What this PR does / why we need it:
Enable creation of Ubuntu 22.04 FIPS VHD. This was blocked by the need for FIPS 140-3 encryption, which is only supported through Azure REST API calls.
Implements instructions listed here https://learn.microsoft.com/en-us/azure/virtual-machines/extensions/agent-linux-fips
Which issue(s) this PR fixes:
Fixes #