Skip to content

Commit a6e951b

Browse files
jchancellor-msBasVeenendaalBas VeenendaalCopilotMO2k4
authored
V0.21.0 merge (#247)
* gallery app and azapi fixes * azapi and gallery app fixes * interface spec updates * lock and doc fixes * test region updates * version updates * role_assignments aad_check default to false * example and dependency updates * sku_selector azapi version fix * fix(vm): relax random provider constraint for cross-module compatibility (#245) * fix(vm): relax random provider constraint for cross-module compatibility * Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Bas Veenendaal <bas@novygate.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * fix: accept gzipped base64 payloads in custom_data validation (#238) * fix: accept gzipped base64 payloads in custom_data validation (#207) * test: add example for gzipped and plaintext custom_data (#207) --------- Co-authored-by: Martin Oehlert <453360+MO2k4@users.noreply.github.com> * fix: Set disk zone to null when creating ZRS disk (#237) * Set disk zone to null when creating ZRS disk ZRS disks can't be created with an availablity zone. When a VM is created with the zone variable set to anything other than `null`, this value is also used for creating disk leading to errors. * Add zonal vm with ZRS disk example * feat: add os_managed_disk_id support for attaching existing managed disk as OS disk (#234) * feat: add os_managed_disk_id support for attaching existing managed disk as OS disk Add support for the os_managed_disk_id parameter on both azurerm_linux_virtual_machine and azurerm_windows_virtual_machine resources, allowing users to create VMs from existing managed disks (Attach mode). Changes: - variables.tf: Add os_managed_disk_id variable with format validation and mutual exclusivity check against source_image_resource_id - locals.tf: Add os_disk_is_imported local for readability - locals.auth.tf: Skip credential generation when os_managed_disk_id is set (admin_username=null, no random password/SSH key generation) - main.linux_vm.tf: Add os_managed_disk_id, conditionally null out ConflictsWith fields (admin_password, computer_name, custom_data, provision_vm_agent, patch_mode, patch_assessment_mode, bypass_platform_safety_checks, reboot_setting), update source_image_reference and admin_ssh_key conditions - main.windows_vm.tf: Same as Linux plus Windows-specific ConflictsWith fields (enable_automatic_updates, hotpatching_enabled) Provider behavior reference (azurerm_linux/windows_virtual_machine): - os_managed_disk_id ExactlyOneOf: admin_username, source_image_id, source_image_reference - ConflictsWith (shared): admin_password, computer_name, custom_data, provision_vm_agent, patch_mode, patch_assessment_mode, bypass_platform_safety_checks_on_user_schedule_enabled, reboot_setting - ConflictsWith (Windows): hotpatching_enabled, enable_automatic_updates - When set, Provider uses CreateOption=Attach and skips OsProfile Closes #230 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: run pre-commit to sync docs and mapotf ordering * fix: harden os_managed_disk_id attach mode and add example - Fix admin_password_linux/windows locals to return null when os_disk_is_imported, preventing random_password[0] resolution errors - Fix password_secret_count and ssh_secret_count to return 0 when os_disk_is_imported, skipping unnecessary Key Vault secret creation - Add lifecycle precondition to prevent os_managed_disk_id and os_disk.diff_disk_settings from being set simultaneously - Add examples/linux_os_managed_disk/ for e2e test coverage of the attach-from-managed-disk path - Update source_image_reference variable description to mention os_managed_disk_id mutual exclusivity - Run pre-commit to sync docs and formatting Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: add os_disk_attach_mode variable for plan-time determinism When os_managed_disk_id is set from a computed resource attribute (e.g., azurerm_managed_disk.example.id), Terraform cannot determine the null check at plan time, causing 'count depends on resource attributes that cannot be determined' errors. Add os_disk_attach_mode (bool, default false) that users must set to true alongside os_managed_disk_id. This ensures count expressions are deterministic during planning. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: guard SSH key and credential name locals for attach mode - Add os_disk_is_imported check to admin_ssh_key local to skip SSH key generation when tls_private_key.this is empty in attach mode - Add os_disk_is_imported check to admin_ssh_key_secret_value local - Use coalesce(admin_username, 'imported') in credential secret names to prevent null string interpolation errors when admin_username is null in attach mode Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: null out os_disk.storage_account_type in attach mode The AzureRM Provider enforces ConflictsWith between os_disk.storage_account_type and os_managed_disk_id. When attaching an existing managed disk, storage_account_type must be null since the disk type is already determined by the existing disk. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * pre-commit clean-up * deprecated hallucination * var dup cleanup * example lint fixes * exception example update * avssec for linux example --------- Co-authored-by: Bas Veenendaal <bas@basveenendaal.com> Co-authored-by: Bas Veenendaal <bas@novygate.com> Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Co-authored-by: Martin Oehlert <mo1987@gmx.net> Co-authored-by: Martin Oehlert <453360+MO2k4@users.noreply.github.com> Co-authored-by: Rickmarges <rickmarges@gmail.com> Co-authored-by: lonegunmanb <lonegunmanb@hotmail.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 489b52d commit a6e951b

78 files changed

Lines changed: 3999 additions & 1566 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.agents/skills/AVM-Terraform-Development/AzAPI.md

Lines changed: 0 additions & 125 deletions
This file was deleted.

.agents/skills/AVM-Terraform-Development/SKILL.md

Lines changed: 0 additions & 125 deletions
This file was deleted.

0 commit comments

Comments
 (0)