Releases: Azure/ResourceModules
Release list
v0.11.1
Highlights
📯Fixed issue with Resource Type resolution in ReadMe script.
📯Fixed issue with pipeline name resolution
Modules
- New Modules
cache/redis-enterprise
- MySQL Flexible Server: Added support for Azure AD authentication
- DB for Postgre-SQL Flexible Server:
- Enabled AAD authentication
- Added
15as additional allowed version (& default)
- Maintenance Configuration: Added support for inGuest Patch support
CI Environment
- Fixed ADO Publish Job for Bicep Registry ordering for prerelease and feature branch publishing
Fixes
- Implement fixes to correctly identify resource type & pipeline
- Log Analytics Workspace: Fixed Saved Search module typo
- Redis Cache: Updated the API Versions and fixed private endpoint test bug
- Storage Account: Fixed NFSv3 bug that limited idempotency
Tested with version(s)
- Bicep:
0.20.4 - Powershell:
7.3.6 - Az CLI:
2.51.0
New Contributors
- Jens (@jdrepo) made their first contribution in #3956
All merged PRs
- [Modules] Update allowed version values by Praveen Potturi (@ppotturi) in #3951
- [Modules] Enable AAD authentication (#3952) by Alexander Sehr (@AlexanderSehr) in #3953
- [CI environment] Fixed ADO Publish Job for Bicep Registry ordering for prerelease and feature branch publishing by Ahmad Abdalla (@ahmadabdalla) in #3957
- [Modules] Support for inGuest Patch support with Azure Update Manager by Jens (@jdrepo) in #3956
- [Modules] Updated Log Analytics Workspace - Saved Search module typo by Ahmad Abdalla (@ahmadabdalla) in #3979
- [Modules] Updated the Redis Cache Module API Version and bug fixes for the module by Ahmad Abdalla (@ahmadabdalla) in #3981
- [Fixes] Implement fixes to correctly identify resource type & pipeline by Alexander Sehr (@AlexanderSehr) in #3980
- [Fixes] Adjusted case-handling for NFSv3 to improve idempotency by Alexander Sehr (@AlexanderSehr) in #3983
- [Modules] Added support for Azure AD Authentication for MySQL Flexible Server by Ahmad Abdalla (@ahmadabdalla) in #3982
- [Modules] Added module for Redis Cache Enterprise and Database by Ahmad Abdalla (@ahmadabdalla) in #3984
- [Modules] Added known issues to the Redis Cache Enterprise Module by Ahmad Abdalla (@ahmadabdalla) in #3986
- [AVM] Added disclaimer draft by Alexander Sehr (@AlexanderSehr) in #3958
- [Fixes] Readme updates for updated resource type url ref by Erika Gressi (@eriqua) in #3991
New Contributors
- Jens (@jdrepo) made their first contribution in #3956
Full Changelog: v0.11.0...v0.11.1
v0.11.0
Highlights
📯BREAKING CHANGE: Update to the name with which modules are published
As per the alignment with the Public Bicep Registry described below, the identifier for published modules changes.
❗ Note: To keep the disruption for users of the CI environment at a minimum, we introduced a new setting
useApiSpecsAlignedNamein the settings.yml. By default, a new naming will be used. To keep on using the previous naming, you must switch this setting totrue.
📯BREAKING CHANGE: Public Bicep Registry focused file & folders changes
- Renamed
deploy.biceptomain.bicep - Renamed
deploy.test.biceptomain.test.bicep - Renamed
readme.mdtoREADME.md - Renamed all module names to singular & lower case
- Removed the
Microsoft.prefix from the provider namespace folders - Added
metadatacontent to module templates - Added
main.jsontemplate - Updated
version.jsonschema to the Public Bicep Registry standard
📯BREAKING CHANGE: Retired Diagnostic Logs Retention Policy across all modules (ref)
Modules
- New modules:
compute/ssh-public-keydigital-twins/digital-twins-instanceinsights/webtestnetwork/dns-zone(public DNS Zone)network/express-route-gatewaynetwork/front-door-web-application-firewall-policynetwork/service-endpoint-policiesrelay/namespacenetwork/dns-forwarding-rulesetresource-graph/querysearch/search-service
- Several new child modules, including:
sql/server/encryption-protectorsynapse/workspace/integration-runtimeweb/site/basic-publishing-credentials-policycontainer-registry/registry/cache-rulemanaged-identity/user-assigned-identity/federatedIdentity-credential
- API Management: Added additional types
graphql&websocket - Application Gateway: Adjusted
sslPolicybased on policy type - Application Insights: Added Diagnostic Settings
- Azure Container Registry: Updated test case to support Paired region dependencies
- Azure Data Factory:
- Added support for GitHub Enterprise Server
- Added
gitDisablePublishparameter
- Azure Firewall: Added
BasicSKU support - Azure Front Door: Added missing SKUs
- Azure Kubernetes Cluster:
- Added
ingressProfilesupport - Added support to provide a Private DNS Zone for usage
- Added support for additional parameters
- Added
- Bastion: Added new parameters
- Cosmos DB:
- Enabled free tier
- Added additional parameters to SQL API container
- Added private endpoint support
- Databricks: Enabled Customer-Managed-Keys, Private Endpoints & additional parameters
- Deployment Script
- Added support for using existing storage account
- Added environment variables parameter & added support for outputs
- DNS Forwarding RuleSet: Simplified DNS Forwarding Rule Input Parameter
- EventHub: Added additional parameters
- Health Bot: Added support for user-assigned identities
- Storage Account:
- Added new feature
sasPolicyto Storage Account module - Added
accessTierparameter for file shares
- Added new feature
- Redis Cache: Added parameters to specify zone redundancy and availability zones
- NetApp Account: Added support for user-assigned identities
- Synapse Workspace:
- Added
workspaceRepositoryConfigurationproperty - Updated CMK interface
- Added
- SQL Server: Expanded test to support dynamic location parameter for Maintenance Configuration
- Virtual Machine:
- Enabled tags on extensions
- Added support for custom computer name
- Simplified LAW reference
- User-Assigned Identity: Added
clientIdoutput - Network Connection: Added support for
authorizationKey - Operational Insights Workspace: Added support for Capacity Reservation
- Azure Virtual Desktop Host Pool: Expanded
agentUpdateinterface
- Diverse: Updated modules to latest API Version
- Diverse: Streamlined several parameter names (e.g., shortened the name if parts of the name were self-evident)
- Diverse: Enabled
nullonDiagnosticLogCategoriesToEnableparameter to enable no logs to be collected. - Diverse: Added new test features (e.g.,
cidrSubnet()function) - Diverse: Addressed serveral PSRule findings
- Diverse: Support both location input and subnet location reference in modules using the Private Endpoint module
CI Environment
- Added
Deploy to Azurebutton targeting the now requiredmain.jsontemplates - Added cross-module reference pipeline triggers, added corresponding Pester test & aligned API Management module
- Introduce custom Pester results section to GitHub workflow runs
- Removed the logic retrieving the deployment SP object ID and replacing it in <> token occurrences. The logic is not needed anymore since tests are now using a dependency msi.
- Removed Az login step from Pester static validation jobs
- Updated
SetEnvironmentaction to avoid setting up runners twice - Renamed linter pipeline to show it is optional
- Introduced a test that tests that a
main.jsonexists and is aligned with the latestmain.bicep - Replaced default
namePrefixto align with latest GitHub syntax requirements - Updated the module table generation
- Fixed Pester test result output table
- Added logic to retrieve main resource type leveraging API Specs JSON
- Improved robustness of registry publishing logic
- Added Azure context configuration to diverse tasks
- Enabled the usage of both the old published module name, as well as the new PBR-aligned
Fixes
- App Service Environment: Fixed issue where ASE subsequent deployments fail after initial successful one
- Application Gateway:
- Fixed max length validation of name
- Fixed
globalConfigurationproperty logic
- Automation Account: Fixed variables value bug
- Cognitive Services: Fix for Customer Managed Keys
- Databricks: Improved test robustness by auto-fetching paired regions
- DNS Resolver: Fixed references of RBAC resource
- Event Grid:
- Enabled Event Subscriptions for both topics & system topics
- Fixed incorrect
eventSubscriptionpassthrough
- Event Hub:
- Fixed role assignment naming issues
- Fixed excess character in
nested_roleAssignments.bicep
- ExpressRouteGateway:
- Updated pipeline name to align with naming convention
- Fixed RBAC handling, added lock capability & added min test
- Firewall Policy: Removed unsupported system-assigned identity
- Purview: Aligned target location with currently supported set
- Recover Services Vault: Fixed
protection-containerchild reference - NAT Gateway: Fixed dependsOn condition
- Service Bus Namespace: Fixed bug in test case
- Storage Account: Fixed
isNfsV3Enabledparameter handling - SQL Server:
- Fixed location param passthrough
- Updated
minCapacitydefault value forelasticpools
- Synapse Workspace: Update Storage Account input parameter
storageAccountNametostorageAccountResourceId - Virtual Machine: Updated cross reference to updated Recovery Services Vault module
- Virtual Network Gateway: Fixed parameter handling for
vpnAuthenticationTypes&vpnClientProtocols - VPN Gateway: Fixed
vpnConnectionschild reference - Diverse: Fixed diverse link references
- Machine Learning Workspace:
- Added missing purge to test instance removal
- Added waiting on Private Endpoints before creating compute instances
- CI: Fixed that a pre-release publishing won't cause actual versions to be published if there has not been any previous release
- CI: Align GH removal conditions with ADO
- CI: Addressed latest name changes in module table generation script
- CI: Fixed module overview table generation
- CI: Updated deployment search to not prematurely throw an exception
- CI: Updated ADO pipeline conditions to make it impossible to publish on canceled job
- CI: Fixed issues when both
main.bicep&main.jsonexist
Utilities
- Updated token handling for readme examples
- Updated Bicep to ARM conversion script
- Added 'required module' to
Set-ModuleReadMe.ps1script - Aligned with latest file & folder changes
- Added logic to pull module names & descriptions from metadata in template
Wiki
- Added a step by step "how to create a solution"
- Added guidelines to troubleshoot outdated Bicep versions
- Incorporated feedback of contributors
- Updated all wiki sections to latest changes (e.g., naming convention)
- Fix typos
Tested with version(s)
- Bicep:
0.20.4 - Powershell:
7.3.6 - Az CLI:
2.51.0
New Contributors
- Martijn Vermaat (@mVermaat) made their first contribution in #3046
- Julian Hüppauff (@jhueppauff) made their first contribution in #3025
- samuelya made their first contribution in #3128
- Sven Aelterman (@SvenAelterman) made their first contribution in #3199
- Robbert Bonefaas (@Robbertbbb) made their first contribution in #3290
- paggarwalmsft made their first contribution in #3348
- Ed Clark (@clarked-msft) made their first contribution in #3266
- Jeremy Brun (@jeremytbrun) made their first contribution in #3307
- Joakim Ellestad (@Ellestad1995) made their first contribution in #3376
- suspand made their first contribution in #3380
- Alexandre Gattiker (@algattik) made their first contribution in #3420
- Paweł Rzeszut (@hip9k) made their first contribution in #342...
v0.10.0
Highlights
📯6 new modules and several extensions to existing modules with child resources and additional features, bringing the number of covered service modules to 124 and the total of resource type templates to 313
📯Enabled reusable workflows in GitHub module validation pipelines, avoiding code duplication
📯Improved user experience running module validation pipelines, allowing users to control which jobs they want to run
📯Integrated PSRule pre-flight checks with GitHub module validation workflows
📯Automated documentation of Pester tests
Modules
- New modules:
Microsoft.Insights/dataCollectionRulesMicrosoft.Insights/dataCollectionEndpointsMicrosoft.Purview/accountsMicrosoft.HealthcareApis/workspacesMicrosoft.App/containerAppsMicrosoft.App/managedEnvironments
- Several new child modules, including:
Microsoft.OperationalInsights/workspaces/tablesMicrosoft.OperationalInsights/workspaces/dataExportsMicrosoft.EventGrid/domains/topics
- Updated API version and extended parameters for several modules including those under Storage, Compute, Network, KeyVault, DesktopVirtualization resource providers
- PSRule - Aligned modules with rule
'Azure.Resource.UseTags' - Reduce parameter names to necessary baseline
- Removed the parameters of those properties that allow a single value only & updated docs
- Addressed Bicep Update about null-checks
- Update builtInRoleNames for nested RBAC modules
- Add
premiumoption to StorageAccount tier with test - Included OIDC issuer URL as output to the AKS module
- Compute Gallery Image Definition update
- Added min test to managedClusters
- Enabled RBAC role assignment for disk encryption set key
- Extend managedCluster and K8s extensions with flux config
- Support for configuring backup retention policies for Azure SQL Database
- Key Vault - Added support for key auto-rotation
- Add support for ADF GlobalParameter
- Added Database for MySQL Flexible Server Module
- Added
restrictOutboundNetworkAccesstoMicrosoft.Sql/servers - Added missing
'enableDefaultTelemetry'param in test files - Simplify roleAssignment implementation for Resource Group
- Reduced permissions of ML encryption test
- Updated Encryption Set module conditions for Managed Identities
- Updated SKU options and added generation parameter for VNET Gateways
- ManagedClusters - Fix a bug for
addonprofiles - ManagedCluster - Add support for enabling Open Service Mesh
- SQL server databases added support for
createMode - Added test cases to Azure Firewall
- Update diagnostic settings name approach
- Updated SKU for the Managed Environment Test
Microsoft.Synapse/workspaces- adding'systemAssignedPrincipalId'as output
CI Environment
- Integrate PSRule action with GH module workflows
- Added controls to enable only Pester and or only deployment tests
- Added automation to update the Static Validation Tests documentation
- GitHub Reusable workflows for module validation pipelines
- Moved test scripts to shared folder & renamed shared templates folder
- Increased Azure DevOps timeout for
Microsoft.Web/hostingEnvironments - Use
GITHUB_TOKENfor manage issue platform pipeline - Remove assign issue to project GitHub workflow
Fixes
- Update Resource Group roleAssignments name (GUID) to use Resource Group resourceID instead of Resource Group name
- Remove JSON function from modules not requiring it
- Disable referenced modules telemetry for a few modules missing the functionality
- Replace
'adp'naming prefix across modules - Align ADO module pipeline input parameters
- Updated documentation references from
docs.microsoft.com- tolearn.microsoft.com - Replace missing occurrences of
learn.microsoft.comlinks and regenerated readmes - Automation account fix parameter names
- Fix filter for excluded workflows in manage issue pipeline
- Fix target-path reference for Universal Package Publish
- Regenerate readmes after PSRule tags PR
DiskencryptionsetsandEventgridsubscriptionstags update- Automation account schedule frequency update
- Updated tags of SignalRService Resource Provider
- Storage Account Local User : Pass on correct parameter
- Fixed a minor utility issue due to a parameter type change
- Small documentation fixes
- Removed child resource that may not be used in the applied context
Utilities
- New condition for adding examples in module readme
- Updated regex to remove top-level
dependsOnstatements - Enforce PowerShell version
7.3where required
Wiki
- Add further details to identity bug of Recovery Services Vault to its documentation
- Removed outdated 'upgrade release' page in favor of our general upgrade guidelines
- Added disclaimer/guidance on which version of the code to leverage
- Added a PowerShell script example to frontload all supported publish locations with all modules
New Contributors
- Luis R Apellaniz (@lapellaniz) made their first contribution in #2398
- Elkhan Yusubov (@ElYusubov) made their first contribution in #2691
- David J. M. Karlsen (@davidkarlsen) made their first contribution in #2893
Tested with version(s)
- Bicep:
0.15.31 - Powershell:
7.3.2 - Az CLI:
2.46.0
All merged PRs
Full Changelog: v0.9.0...v0.10.0
- [Modules] Bump StorageAccount and add params by Marius Storhaug (@MariusStorhaug) in #2617
- [Modules] Update KeyVault API Versions by Felix Borst (@fblix) in #2623
- [Modules] Adding new module for Microsoft.Insights/dataCollectionRules by Kris Baranek (@krbar) in #2614
- [Modules] Adding new module for Microsoft.Insights/dataCollectionEndpoints by Kris Baranek (@krbar) in #2620
- [CI Environment] Added controls to enable only Pester and or only deployment tests by Alexander Sehr (@AlexanderSehr) in #2590
- [Fixes] CI environment - Skip static and deployment validation feature by Erika Gressi (@eriqua) in #2627
- [Fixes] CI environment - Skip deployment if static failing by Erika Gressi (@eriqua) in #2628
- [Modules] Updated Disk Encryption Set to latest published API version (2022-07-02) by Ahmad Abdalla (@ahmadabdalla) in #2636
- [Fixes] Update rg roleAssignments name (guid) to use rg resourceID instead of rg name by Erika Gressi (@eriqua) in #2642
- [CI Environment] Added automation to update the Static Validation Tests documentation by Alexander Sehr (@AlexanderSehr) in #2591
- [Fixes] Added space workaround by Alexander Sehr (@AlexanderSehr) in #2645
- [Modules] Added Microsoft Purview Account module by Tao Yang (@tyconsulting) in #2646
- [Modules] Add
premiumoption to StorageAccount tier with test by Marius Storhaug (@MariusStorhaug) in #2643 - [Fixes] Remove json function from modules not requiring it by Erika Gressi (@eriqua) in #2661
- [Modules] Update PIP API version and modules cross referencing it by Erika Gressi (@eriqua) in #2663
- [Fixes] Disable referenced modules telemetry for a few modules missing the functionality by Erika Gressi (@eriqua) in #2664
- [Fixes] Replace 'adp' naming prefix across modules by Erika Gressi (@eriqua) in #2665
- [Modules] Included OIDC issuer URL as output to the AKS module by @akata72 in #2654
- [Modules] New Module - Add Health Data Services Bicep modules by Luis R Apellaniz (@lapellaniz) in #2398
- [Modules] Compute gallery image definition update by Shawn Meyer (@shawntmeyer) in #2674
- [Modules] Regenerated all docs to account for new Bicep update by Alexander Sehr (@AlexanderSehr) in #2682
- [Modules] Added min test to managedClusters by Marius Storhaug (@MariusStorhaug) in #2680
- [Modules] Updated Virtual Network Gateway Module API Version (2022-07-01) by Ahmad Abdalla (@ahmadabdalla) in #2685
- [Modules] Enabled RBAC role assignment for disk encrpytion set key by Alexander Sehr (@AlexanderSehr) in #2684
- [Modules] Reduce parameter names to necessary baseline by Alexander Sehr (@AlexanderSehr) in #2686
- [Fixes] Align ADO module pipeline input parameters by Erika Gressi (@eriqua) in #2687
- [Fixes] Updated documentation references from docs.microsoft.com - to learn by Elkhan Yusubov (@ElYusubov) in #2691
- [CI Environment] GH Reusable workflows PoC by Erika Gressi (@eriqua) in #2637
- [Fixes] Replace missing occurrences of docs.microsoft.com links and regenerated readmes by Erika Gressi (@eriqua) in #2697
- [Modules] Extend managedCluster and K8s extensions with flux config by Marius Storhaug (@MariusStorhaug) in #2679
- [Fixes] Automation account fix parameter names by Erika Gressi (@eriqua) in #2723
- [Modules] Updated Application Gateway module to the latest API Version (2022-07-01) by Marius Storhaug (@MariusStorhaug) in #2725
- [Modules] Updated...
v0.9.0
Highlights
📯7 new modules and several extensions to existing modules with child resources and additional features, bringing the number of covered service modules to 117 and the total of resource type templates to 291
📯Enabled concurrency feature in GitHub workflows that ensures there are no 2 concurrent runs of the same workflow
📯Improved publishing with 'Publish if not exists' feature and shortening for Template Specs artifacts
📯Improved static validation through the AzureAPICrawler PowerShell module for API versions tests
📯Added scheduled workflow to validate PSRule pre-flight checks on the whole library
Modules
- New modules:
- Microsoft.EventGrid/domains
- Microsoft.EventGrid/subscriptions
- Microsoft.DevTestLab/labs
- Microsoft.CDN/profiles
- Microsoft.Network/networkManagers
- Microsoft.SignalRService/signalR
- Microsoft.PolicyInsights/remediations
- Several new child modules, including:
- Microsoft.Sql/servers/keys
- Microsoft.Compute/galleries/applications
- Microsoft.Web/sites/slots
- Updated API version for several modules: Locks, Tags, Resource Groups, DocumentDB DatabaseAccounts, Consumption Budgets, Recovery Services, Azure Policy Assignments, Machine Learning Workspaces, DBforPostgreSQL Flexible Servers, Web Sites, AVD Scaling Plans
- Enabled 'AllLogs' as diagnostic category
- Updated Private Endpoint Config to Allows Static IP on Parent Modules
- Improved CMK implementation for Cognitive Services and Container Instances
- Azure Cosmos DB SQL Container Indexing policy
- Added ContainerRegistry
anonymousPullEnabledproperty - Added support for Virtual Machine Automatic VM Guest Patching
- Added Storage Accounts SFTP and LargeFileShares features
- Updated VNET Gateway to reference Public IP module
- Added Virtual Machines AADJoin Extension feature
- Dependencies approach fixes and updates: variable usage, deployment names, template formatting
- Updated Azure Policy Definitions - mode to support 'Microsoft.Network.Data'
- Updated Recovery Services Vaults
publicNetworkAccessproperty - Added Virtual Machine Images named Staging Resource Group VM User-Assigned IDs and SIG Image parameters
- Added Compute gallery Images
SecurityTypeproperty and extended test coverage - Connect Azure Firewall to a VirtualHub
CI Environment
- Enabled concurrency feature in GitHub workflows that ensures there are no 2 concurrent runs of the same workflow
- Improved publishing with 'Publish if not exists' feature and identifier shortening for TemplateSpecs artifacts
- Improved static validation through the
AzureAPICrawlerPowerShell module for API versions tests - Added scheduled workflow to validate PSRule pre-flight checks on the whole library
- Automated creation and closure of GitHub issues for failing pipelines
- Migrated 'Issue to Project' assignment automation from GitHub project (classic) to GitHub projects
- Added platform pipelines status badge to the main readme
Wiki
- Update telemetry article
- Added sorting to wiki module table
- Updated dependencies approach guidelines in module design
- Added initial version of troubleshooting guidance
- Updated Network Manager documentation and Wiki known issues
Utilities
- Improved deployment example for
Register-AzureDevOpsPipelineutility - Improved API version tests through the
AzureAPICrawlerPowerShell module
Fixes
- Fixed removal of Maintenance Configurations and Log Analytics Workspaces
- Improve removal of resources in a retry scenario
- Privatelink ADO pipeline name fix
- Cleanup hardcoded
nameprefixreferences - Update
builtInRoleNameslist fornested_roleAssignmentsmodules - Switch from
az bicep buildtobicep buildto avoid rate limits - Fixed hardcoded
artifacts-rgreference - Fixed VNET Peering test
- Update link to code examples in module design Wiki
- Several minor fixes for the Publishing logic
- Solve issue with WAF config in Application Gateway
New Contributors
- Shawn Meyer (@shawntmeyer) made their first contribution in #2465
- ladlavj made their first contribution in #2499
- Shaban Khan (@shaban-khan) made their first contribution in #2545
- Steven De Lausnay (@Sdelausnay) made their first contribution in #2582
Tested with version(s)
- Bicep:
0.13.1 - Powershell:
7.3.2 - Az CLI:
2.44.1
All merged PRs
Full Changelog: v0.8.0...v0.9.0
- [Modules] Azure Cosmos DB SQL Container Indexing policy by Felix Borst (@fblix) in #1578
- [Modules] Update all inner resource locks to latest documented API version by Erika Gressi (@eriqua) in #2355
- [Fixes] Fix removal of maintenance config by Erika Gressi (@eriqua) in #2399
- [Fixes] Privatelink ADO pipeline name fix by Erika Gressi (@eriqua) in #2408
- [Fixes] Cleanup hardcoded nameprefix ref by Erika Gressi (@eriqua) in #2409
- [Fixes] Improve removal of resources in a retry scenario by Alexander Sehr (@AlexanderSehr) in #2406
- [Modules] Align CMK implementation for Cognitive Services & cleaned up several allowed values by Alexander Sehr (@AlexanderSehr) in #2402
- [CI Environment] Enable concurrency in GHW by Erika Gressi (@eriqua) in #2422
- [Fixes] Update project URL by Rainer Halanek (@rahalan) in #2434
- [Modules] Added property
anonymousPullEnabledby Alexander Sehr (@AlexanderSehr) in #2424 - [CI Environment] Change code to updated logic to add issues to new projects by Rainer Halanek (@rahalan) in #2437
- [Fixes] fixing variable reference by Rainer Halanek (@rahalan) in #2440
- [Fixes] Update builtInRoleNames format by Erika Gressi (@eriqua) in #2431
- [Fixes] use new token for assigning issues by Rainer Halanek (@rahalan) in #2446
- [Utilities] Improve deployment example for
Register-AzureDevOpsPipelineutility by Alexander Sehr (@AlexanderSehr) in #2452 - [Modules] Added closing dot in all descriptions of any bicep file by SeSeicht (@SeSeicht) in #2447
- [Wiki] Update telemetry article by Máté Barabás (@matebarabas) in #2466
- [Fixes] Telemetry language update by Máté Barabás (@matebarabas) in #2467
- [Modules] Added Key Module to SQL Server by Fabio Masciotra (@fabmas) in #2438
- [Modules] Enable 'AllLogs' as diagnostic category by SeSeicht (@SeSeicht) in #2443
- [Utilities] Improve API version tests through the
AzureAPICrawlerPowerShell module by Alexander Sehr (@AlexanderSehr) in #2344 - [Modules] New Child Module Gallery Application by Shawn Meyer (@shawntmeyer) in #2465
- [Modules] Updated Tags API version by Alexander Sehr (@AlexanderSehr) in #2320
- [Modules] ResourceGroup: Added new optional parameter & updated API version by Alexander Sehr (@AlexanderSehr) in #2319
- [Modules]: Microsoft.Network/frontdoors - Fix for Static Validation by ChrisSidebotham-MSFT (@ChrisSidebotham) in #2489
- [Fixes] Update LAW force delete by Erika Gressi (@eriqua) in #2490
- [Modules] Add support for Virtual Machine Automatic VM Guest Patching by Tao Yang (@tyconsulting) in #2429
- [Fixes] Switch from
az bicep buildtobicep buildto avoid rate limits by Alexander Sehr (@AlexanderSehr) in #2492 - [Fixes] Update gallery app readme and customAction parameter type by Erika Gressi (@eriqua) in #2474
- Added more options to Microsoft.ContainerInstances/containergroups module by Felix Borst (@fblix) in #2175
- [Modules] Updated Private Endpoint Config to Allows Static IP on Parent Modules by ChrisSidebotham-MSFT (@ChrisSidebotham) in #2480
- [Modules]: Updating readme's from generator - whitespace errors fix by ChrisSidebotham-MSFT (@ChrisSidebotham) in #2497
- [CI Environment] Enable 'Publish if not exists' + Fix for 'Publish latest' by Alexander Sehr (@AlexanderSehr) in #2410
- [Modules] Updated API versions for Microsoft.DocumentDB/databaseAccounts by Kris Baranek (@krbar) in #2516
- [Modules] DevTest Lab Module (API Version: 2018-09-15) by Ahmad Abdalla (@ahmadabdalla) in #2513
- [Modules] Storage Accounts : Add SFTP feature to storage account module # 2378 by Karthik Venkatraman (@karthikvenkat17) in #2514
- [Modules] Updated VNET Gateway to reference PIP module by Luke Snoddy (@lsnoddy) in https://github....
v0.8.0
Highlights
📯Self-contained dependencies approach to module deployment validation: All tests are now deploying their own resource dependencies together with the target test resource in a dedicated resource group and removed afterwards. In addition, module test JSON parameter files have been converted to Bicep test files:
When you onboarded CARML in version 0.7.0 and before, you had to first run a dependency pipeline that would deploy a set of 'persistent' Azure services we'd then use in subsequent module tests as references (for example to deploy a VM into a VNET) as seen in the following image.
Now, from version 0.8.0 onward, these dependencies (if any) are deployed as part of each module's test. This means, the VM test would deploy itself the aforementioned VNET and all resources would be removed after:
📯Deployment history cleanup: A scheduled pipeline has been introduced to automatically cleanup deployment history for Management Group and Subscription scopes.
📯Alignment with latest Bicep linter rules: Fixes have been implemented throughout the library to comply with decompiler-cleanup and prefer-unquoted-property-names linter rules. In particular, a new utility Update-RoleAssignmentList allows to update latest available Role Definitions for each module nested Role Assignments while complying with the prefer-unquoted-property-names linter rule.
Modules
- Update all modules' tests to new dependencies approach
- New modules:
Microsoft.Network/applicationGatewayWebApplicationFirewallPoliciesMicrosoft.Network/dnsResolversMicrosoft.Maintenance/maintenanceConfigurations
- Updated API version for several modules: ACR, RSV, VMSS, AKS, ML Workspaces, Private Endpoints, Virtual Hubs, Locks, Compute Images, Policy Exemptions, Role Definitions, Proximity Placement Groups
- Extend modules with child resources and new features:
- Multi additions to staticSites
- Add TLS setting support to SQLMI
- Extend Web Sites with kvrefidentity
- Updated virtualNetworkGateways to support AAD VPN
- Enable Key Vault Purge Protection per default (disable in tests)
- Update ubuntu and windows OS images used for tests to latest versions
- Added Elastic Pool support to SQL Server
- Added replication alerts to Recovery Services Vault
- Allow upgrading all node pools in an AKS cluster to the same Kubernetes version
- Allow creating a ContainerGroup with one or more containers
- Add missing tags to Key Vaults, User Assigned Identities and Web Server Farms common test
- Align
networkAclsimplementation for StorageAccounts, KeyVaults and CognitiveServices modules - Update
nested_roleAssignmentto comply withprefer-unquoted-property-nameslinter rule - Fixing linter warning
decompiler-cleanup - Replacing hardcoded environment URLs with the
environment()function - Updated MS.AuthZ namespace modules to use
.idfor ResourceID outputs
CI environment
- Added scheduled pipelines for Subscription & Management-Group Deployment history cleanup
- Updated the deployment name generation to be more detailed
- Broken links pipeline update
- Updated GitHub workflows to use actions-checkout@v3
- Replace
set-outputcommands with GH environment file$env:GITHUB_OUTPUT - Update static validation result publish version to v2
- Update removal to support Azure Security Center module
- Updated RBAC tests to be more explicit about the principal type
- Extend and optimize resource removal of nested deployments with higher scope than the parent
- Remove support to previous deployment validation approach
Wiki
- Solution creation section: Azure DevOps example for pipeline-orchestration
- Update Fetch latest updates section and fix broken links
- Additional cleanup after converted test files
Utilities
- Added utility
Update-RoleAssignmentList - Updated compatability of
Set-ModuleReadMeutility to new dependencies approach, handle inline quotations and improved function identification regex - Updated compatability of
Test-NamePrefixAvailabilityutility to new dependencies approach - Updated compatability of
ConvertTo-ARMTemplateutility to new dependencies approach
Fixes
- Improve disk encryption options to VM and VMSS
- Fix typo in readmes and parameter files:
privateDnsZoneGroupstoprivateDnsZoneGroup - Fixed RBAC File Names & Roles accross multiple modules
- Key Vault - Fix parameter usage section
- Fixed usage of deployment name in
Test-Deploymentscript - Update Linter pipeline filename and trigger
- Updated the way child module readmes are referenced
- Fixed location of settings
New Contributors
- Tao Yang (@tyconsulting) made their first contribution in #2037
- cjnova made their first contribution in #2092
- Oliver Gulich (@oliverlabs) made their first contribution in #2120
- Eammon Hanlon (@ehanlon) made their first contribution in #2164
- Preston Alvarado (@coolhome) made their first contribution in #2262
All merged PRs
Full Changelog: v0.7.0...v0.8.0
- [Modules] Updated KeyVault vaults to new dependencies approach by Alexander Sehr (@AlexanderSehr) in #2002
- [Utilities] Update script to generate custom release notes by Erika Gressi (@eriqua) in #2063
- [Modules] Updated Resources ResourceGroups to new dependencies approach by Alexander Sehr (@AlexanderSehr) in #2062
- [Modules] Updated VirtualNetwork to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1884
- [Modules] Update ACR module api version to 2022-02-01-preview by Tao Yang (@tyconsulting) in #2037
- [Modules] Updated API reference (Microsoft.Authorization/roleDefinition) to the newest one. Issue #1998 by cjnova in #2092
- [Fixes] Fixed Readme files and Pester tests after recent new line change by Ahmad Abdalla (@ahmadabdalla) in #2132
- [Utilities] Increased flexibility on parameter table search by Alexander Sehr (@AlexanderSehr) in #2133
- [Fixes] Virtual Machine - fixed the subnetId (should be subnetResourceId) old reference for the… by Oliver Gulich (@oliverlabs) in #2120
- [Modules] Updated KubernetesConfiguration/Extensions to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1827
- [Modules] Updated KubernetesConfiguration/FluxConfigurations to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1828
- [Modules] Updated Consumption budgets to new dependencies approach by Alexander Sehr (@AlexanderSehr) in #1962
- [Modules] Updated Insight MetricAlertsto new dependencies approach by Alexander Sehr (@AlexanderSehr) in #2108
- [Utilities] Enabled no-param blocks by Alexander Sehr (@AlexanderSehr) in #2134
- [Modules] Updated Web/StaticSites to new dependencies approach by Alexander Sehr (@AlexanderSehr) in #1898
- [Modules] Updated Network/Connections to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1829
- [Fixes] Fix typo in readmes and parameter files: "privateDnsZoneGroups" to "privateDnsZoneGroup" by Rainer Halanek (@rahalan) in #2137
- [Wiki] Azure DevOps example for pipeline-orchestration by Sebastian Gräf (@segraef) in #1862
- [Modules] Update Network Public IP Addresses to new dependencies approach by Alexander Sehr (@AlexanderSehr) in #2080
- [Modules] Add new module: WAF policy by Rainer Halanek (@rahalan) in #2138
- [Fixes] Consumption Budget readme update by Erika Gressi (@eriqua) in #2141
- [Fixes] Fix WAF policy readme by Rainer Halanek (@rahalan) in #2145
- [Fixes] Fixed incorrect depenency variable reference by Alexander Sehr (@AlexanderSehr) in #2146
- [Fixes] Fixed ADO Pipeline & Readme for AppGW WAF Policy by Alexander Sehr (@AlexanderSehr) in #2147
- [Modules] Updated Network/VPNSites to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1834
- [Modules] Updated Network/VirtualHubs to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1831
- [CI environment] Extend and optimize resource removal of nested deployments with higher scope than the parent by Erika Gressi (@eriqua) in #2148
- [CI environment] Removed checkout repository leftovers by Alexander Sehr (@AlexanderSehr) in #2155
- [Modules] Updated web connection to new dependencies approach by elisa anzelmo (@elanzel) in #2154
- [Fixes] Fixed RBAC File Names & Roles accross multiple modules by Alexander Sehr (@AlexanderSehr) in #2158
- [Modules] Updated DataProtection Backup Vaults to new dependency approach by Alexander Sehr (@AlexanderSehr) in #1876
- [Modules] Updated RecoveryServices Vault to new dependency approach by Ale...
v0.7.0
Highlights
📯 CMK and networking improvements across all modules: Customer-Managed Keys have been refined across all modules currently supporting them, aiming for this feature to have a consistent interface (input parameters) across the library. Also, networking capabilities such as private endpoints, private DNS zone integration and public network access have been improved across modules implementing them. For instance, public network access is now disabled by default on the deployed resources when private endpoints are set, unless differently specified.
📯 Simplified token handling & repository configuration: The token replacement feature has been refined by providing a centralized place where to store variables, for both GitHub and Azure DevOps orchestrations, simplifying the CI environment initial setup. The deployment Service Principal object ID, previously required to be set as a secret, is now automatically retrieved by the pipelines, reducing the list of secrets/variables to configure for the validation pipelines to run.
📯 Improved module documentation: Each module ReadMe now lists all local cross-referenced modules leveraged by their implementation. Deployment examples are also improved by listing required parameters first, followed by the rest, each in alphabetical order. In addition, a Module overview page has been added to the Wiki, outlining supported features for each module such as Private endpoints, Diagnostic Settings and RBAC.
Modules
- New modules:
- Redis Cache
- Web PubSub
- PowerBIDedicated Capacities
- Synapse Workspaces
- Private Link Services
- Azure Database for PostgreSQL Flexible Servers
- Aligned the CMK implementation across current modules
- Aligned public network access implementation across modules to get automatically disabled if private endpoints are set
- Updated & aligned role assignment implementation across modules
- Added private endpoint support for Batch accounts, DataFactory, Recovery Services Vaults
- Improved default security values for AKS, Log Analytics, Sql Servers
- Updated API version for several modules under ContainerInstance, ContainerService, NetApp, Network, Sql, Storage resource providers
- Removed autogenerated unique name feature from all modules
- Introduced linter-ignore statements for false-positives
CI environment
- [MAJOR/BREAKING] Renamed
armfolder tomodules - [MAJOR/BREAKING] Renamed
.parametersfolder to.test - Token Mechanism Uplift (support tokens as GitHub Secret + Migrate Settings.Json to Settings YAML)
- Autofetch ServicePrincipal Object ID
- Static validation improvements:
- Added integration with private DNS zones to all module tests deploying private endpoints
- Added test case for parameter description
- Moved global Pester tests to utilities
- Extended and improved dependencies pipeline:
- Added private DNS zones dependencies
- Added new dependencies for Private Link Services module
- Use deployment scripts for the
Store VHD to blob containeroption
- Added subscription context for supporting MG scope service connections
- Enabled CI environment to handle DeploymentTest (Bicep) files for upcoming self-contained dependencies approach
- Further alignment between ADO pipelines and GH workflows
Wiki
- Added new section
Module overviewoutlining all module features for the whole library - Added new section
Fetch latest CARML updates for internalized libraries - Improved
Solution creationsection with decision support for publishing target locations and updated template-orchestrated solution examples - Updated
Contribution guideto reference latest project board approach - Improved
Known Issuessection
Utilities
- Improved Module readme generator (
Set-ModuleReadMe):- Added new section
Cross-referenced modules - Improved
Deployment examplessection: - Each example lists all the required parameters first, followed by the rest - each in alphabetical order
- Moved Bicep example in front of JSON
- Added quotation for empty allowed values
- Added new section
- Added utility to bulk-run pipelines for a given branch
- Updated DevOps Pipeline Registration
- Added ManagementGroup-Deployment removal script
Fixes
- Fixed several Linter warnings for Natural language
- Extended vscode settings with json specific to align file formatting
- Fixed resource removal stage attempting to remove dependency resources
- Improved CI environment compatibility with Linux & improved robustness
- Fixed failing dependencies pipeline on VHD creation
- Updated private endpoint and user assigned identity readme parameter usage templates
All merged PRs
- [Modules] Added instrumentationKey output variable by Jan-Henrik Damaschke (@itpropro) in #1592
- [Modules] Fix roleAssignments naming and missing rename by Marius Storhaug (@MariusStorhaug) in #1596
- [Fixes] ServiceFabric/Clusters - Added correct CI trigger for ADO by Marius Storhaug (@MariusStorhaug) in #1601
- [Fixes] Fix format and whitespace by Marius Storhaug (@MariusStorhaug) in #1600
- [Utilities] Added utility to bulk-run pipelines for a given branch by @MrMCake in #1609
- [Modules] MongoDB: Removed throughput if database is deployed serverless #1571 by @MrMCake in #1594
- [Modules] Overhauled Disk-Encryption Key handling by @MrMCake in #1591
- [CI Environment] [MAJOR/BREAKING] Renamed
armtomodulesby Marius Storhaug (@MariusStorhaug) in #1599 - [Fixes] Fix incorrect function reference for GitHub action by @MrMCake in #1615
- [Fixes] Corrected the @mention of teams + cleanup of owners by Marius Storhaug (@MariusStorhaug) in #1603
- [Wiki] Fixing several links and casings by @MrMCake in #1613
- [Wiki] Reset some of the feedback from Wiki walkthrough by Marius Storhaug (@MariusStorhaug) in #1617
- [Modules] Minimum TLS version for SQL server by Ariel Ramirez (@ArielRam99) in #1618
- [Modules] AKS: Updated secure defaults by @MrMCake in #1593
- [Misc] Add automatic assignment to Pull-Requests by Marius Storhaug (@MariusStorhaug) in #1619
- [Modules] Recovery Services Vaults: Add private endpoint support with updated parameters file. by Kavish Shivhare (@kavishshivhare) in #1623
- [CI Environment] MAJOR/BREAKING: Rename
.parametersfolder by @MrMCake in #1612 - [Fixes] Fixed incorrect param file ref by @MrMCake in #1626
- [CI environment] Align ADO pipeline trigger paths by Erika Gressi (@eriqua) in #1634
- [Modules] DataFactory: Added private endpoints & customer-managed-key implementation by @MrMCake in #1585
- [Utilities] Updated DevOps Registration by @MrMCake in #1611
- [Modules] Aligned privateEndpoints description metadata across modules by Erika Gressi (@eriqua) in #1636
- [Utilities] Added ManagementGroup-Deployment removal script by @MrMCake in #1622
- [Modules] Aligned the CMK implementation across current modules by @MrMCake in #1589
- [Fixes] Fixed DiskEncryption Dependency Parameters by @MrMCake in #1637
- [Modules] MachineLearningWorkspace: Updated Customer-Managed-Key implementation by @MrMCake in #1584
- [Modules] Service bus private networking ACL by ChrisSidebotham-MSFT (@ChrisSidebotham) in #1453
- [Modules] Added CosmosDB Gremlin API & updated mongodb to current version by @MrMCake in #1638
- [Fixes] ServiceBus regenerate readme by Erika Gressi (@eriqua) in #1646
- [Fixes] Role Assignment output by Erika Gressi (@eriqua) in #1649
- [Modules] Batch accounts: Add private endpoint support with updated parameters file. by ismalik (@ishita-malik1) in #1654
- [Modules] LogAnalytics: Setting secure value & add linked storage accounts child module by @MrMCake in #1588
- [Modules] Policy assignment updated nonCompliance messages by Ahmad Abdalla (@ahmadabdalla) in #1644
- [Modules] Servicebus: Added Customer-Managed-Key & additional resource type handling for removal by @MrMCake in #1586
- [Wiki] Fix incorrect statement about Bicep not being GA by Erika Gressi (@eriqua) in #1657
- [Modules] Redis cache module by @MrMCake in #1635
- [Modules] Leave out not supported throughput field in Cosmos by Jan-Henrik Damaschke (@itpropro) in #1658
- [Modules] Align public network access implementation across modules by Erika Gressi (@eriqua) in #1661
- [Modules] Recovery Services Vault: Updated API and added new feature properties by prasanjeets in #1572
- [Modules] Added Web PubSub module ...
v0.6.0
Highlights
📯 Cross-Module reference alignment: To increase consistency and avoid code duplication, all modules previously leveraging nested templates for resources of a different resource type are now referencing the same CARML module
📯 Added Bicep + JSON deployment examples to all module readme files
📯 Added CARML logical layers and personas Wiki page
Modules
- New modules:
- App Configuration Stores with Key Values
- Compute NetworkInterfaces
- DataProtection Backupvaults
- OperationsManagement Solutions
- Authorization Locks
- Improved modules:
- Cognitive Services: Set secure defaults
- EventGrid: Set secure defaults
- Storage Accounts: Implemented Customer-Managed Keys
- SQL Server: Added private endpoint and vulnerability assessments
- Private DNS records: Added Role assignments
- VirtualMachine: Configure boot diagnostics with managed storage account
- Eventhub: Added Network Rules
- VMSS: Added Condition to EncryptionAtHost
- OperationalInsights: Added etag parameter to SavedSearches
- Azure Firewall: Added Public IP
- Bastion Hosts: Added Public IP
- ACR: Added webhooks and updated ACR CMK implementation
- BatchAccounts: Added configuration options
- AKS: Added Application Gateway Ingress Controler (AGIC) addon
- Updated API version for Role assignments, ML Workspace, Eventhub, Recovery Services Vault, Compute Galleries
- Improved parameter metadata descriptions & module readmes:
- Updated parent-child resource conditional description
- Improved parameter description formatting
- Update conditional parameters descriptions to include the condition under which they are required
- Merged Azure Resource Reference documentation links with the list of deployed resource types
- Changed telemetry implementation to only deploy a single PID: Disabled telemetry on child resources and on cross-referenced resources
- Added location output to all templates supporting it
- Added multiple VM deployment example
CI Environment
- Improved robustness and duration of environment setup task on agents
- Improved resource removal logic:
- Implemented purge for AppConfiguration
- Added role assignment removal
- Added registrationDefinitions removal
- Improved lock removal
- Cleanup custom removal logic for VWan
- Improved GitHub workflows:
- Updated GitHub Workflows to use Azure/PowerShell action
- Improved ADO pipelines:
- Fixed ADO publishing to Bicep registry
- Fixed ADO triggerpath
- Updated conditions for ADO dependency pipeline
- Created Issue-Assignment pipeline to automate assignment of new issues to the intended project
Static Validation
- New Pester tests:
- All parameter descriptions should end with a period
- Conditional parameters description should contain the condition under which they are required
- Added exception handling for resources not having standard outputs
- Reworked tests to not use HTML & shared functions
- Expanded Pester test output
Wiki
- Overarching review and lingo update
- Improved solution examples
- Extended Contribution flow section
- Updated required GitHub settings to successfully run static validation
- Added Management Group module notes to known issues
Utilities
- Enabled generation script to add Bicep + JSON deployment examples to module readmes
- Added
Get-FormattedGitHubReleasefunction to support release highlights (these highlights :) ) - Improved
Set-ModuleReadMeutility when called w/ relative path
Fixes
- Workaround for Az CLI bug introduced by latest CLI version (2.37.0) used by the ubuntu-20.04 agents
- Replace space with %20 in the ADO projectname
- Fixed pipeline name parsing in
Register-AzureDevOpsPipelineutility - Update casing for IPsec connections
- Added missing output to Tags module
- Fixed all parameter descriptions to comply with updated static validation
- Fixed KeyVault reference for Bicep example in ReadMes
- Updated references to the global variables file
- Fixed typo in global test
- Swapped the values for tenantId and deploymentSpId
- Corrected AVD Host pool parameter for dependency pipeline
- Added principalType to RSV param
- Fixed ApplicationGateway pipeline deployment by updating the keyvault reference
All merged PRs
- [CI Environment] Change Task Type for ADO in the publishing to bicep registry by SeSeicht (@SeSeicht) in #1340
- [Fixes] Fixed broken SQL-MI link by Felix Borst (@fblix) in #1350
- [Modules] Switched from resource name to resource ID in RBAC deployment by @MrMCake in #1352
- [Modules] Merged resource references with types table + renewed readmes by @MrMCake in #1354
- [Modules] Added configuration options to Microsoft.Batch/batchAccounts by Felix Borst (@fblix) in #1348
- [Modules] Add RBAC to Private DNS records by Simone Bertaccini (@simonbMS) in #1344
- [Modules] Added Application Gateway Ingress Controler (AGIC) addon to AKS by Julian Peißker (@JPEasier) in #1345
- [CI Environment] Added role assignment removal to removal logic by @MrMCake in #1343
- [Modules] Downgrade RBAC API version by Erika Gressi (@eriqua) in #1358
- [Modules] Update ML Workspace to latest API by @MrMCake in #1359
- [Modules] Allowed User assigned identity deployments by Ahmad Abdalla (@ahmadabdalla) in #1361
- [Fixes] Set-ModuleReadMe when called w/ relative path by Robin Müller (@MrRoundRobin) in #1366
- [Modules] Update parent-child resource conditional description & updated format by @MrMCake in #1355
- [Modules] Update Conditional descriptions by Erika Gressi (@eriqua) in #1376
- [Modules] Added multiple vm deployment example by @MrMCake in #1369
- [Modules] Fixing typos across Rbac descriptions by Erika Gressi (@eriqua) in #1377
- [Modules] Added SQL Server Vulnerability Assessments by Robin Müller (@MrRoundRobin) in #1374
- [Fixes] Fixed some missing parts to pipelines and a mistake in wiki by Marius Storhaug (@MariusStorhaug) in #1381
- [Modules] VirtualMachine: Configure boot diagnostics with managed storage account by Luke Snoddy (@lsnoddy) in #1365
- [Modules] Added location output to templates by @MrMCake in #1371
- [Static Validation] Pester structural tests by @MrMCake in #1373
- [Modules] EventGrid: Set default values to a secure value by Luke Snoddy (@lsnoddy) in #1384
- [Modules] SQL-Server: Added private endpoint by @MrMCake in #1367
- [Wiki] picture fix: changing to
by Sebastian Gräf (@segraef) in #1391
- [CI Environment] Fixed location output test for global resources by Robin Müller (@MrRoundRobin) in #1390
- [Modules] allow 0 as min capacity by Rainer Halanek (@rahalan) in #1398
- [CI Environment] Set Az Context in Removal Stage in ADO by SeSeicht (@SeSeicht) in #1389
- [Modules] Update Eventhub Network Rules + latest APIs by Ahmad Abdalla (@ahmadabdalla) in #1387
- [Fixes] Update casing for IPsec connections by Luis Arnauth (@luisarnauth) in #1407
- [Static Validation] Ending parameter description with a dot by Erika Gressi (@eriqua) in #1394
- [Fixes] Added missing output to tags module by @MrMCake in #1408
- [Modules] Fixed Inconsistent naming of NSGs IDs #1323 by prasanjeets in #1406
- [Modules] Added telemetry to AAD module & description to docs by @MrMCake in #1393
- [Modules] VMSS add Condition to EncryptionAtHost by SeSeicht (@SeSeicht) in #1414
- [Modules] Update Recovery Services Vault API to latest by SeSeicht (@SeSeicht) in #1411
- [Modules] New App Configuration Stores module by Ariel Ramirez (@ArielRam99) in #1404
- [Modules] Added NetworkInterface module by @MrMCake in #1400
- [Fixes] Fixing ending dots for parameter descriptions by Erika Gressi (@eriqua) in #1419
- [Modules] update parameter paths of Deployment Scripts by SeSeicht (@SeSeicht) in #1412
- [Fixes] Fixing ending dots for parameter descriptions continued by Erika Gressi (@eriqua) in #1420
- [Modules] OperationalInsights add etag parameter to SavedSearches by SeSeicht (@SeSeicht) in #1413
- [Modules] Added private endpoint to application config by @MrMCake in #1418
- [Utilities]: Enabled generation script to add Bicep + JSON deployment examples t...
v 0.5.0
Highlights
Modules
- New modules:
- Tags
- VPN gateways
- VPN sites
- Static Web Apps
- Azure Active Directory Domain Services (Azure ADDS)
- Network security groups
- Azure Virtual Desktop Scaling plans
- Front Door
- AKS extensions and flux configurations
- Event Grid system topics child module
- Service Bus topics and topics authorizationRules child modules
- Recovery services vault child modules for configuring Azure Site Recovery for A2A DR
- Private DNS zones child modules
- Extensively updated modules:
- Application gateways
- Kubernetes services
- Container registries
- Web sites
- Virtual WANs
- Extended test coverage
- Updated diagnostic settings and RBAC extensions across all modules using them
- Enabled solution telemetry for all modules (Note: The ID is only used to gain insights into the library's usage. It can be disabled in the
settings.json.)
CI Environment
- Consolidated Azure DevOps and GitHub Actions to use a single variable file for environment variables
- Added automatic fetch of parameter files to GitHub actions
- Added documentation to GitHub composite actions
- Improved static validation: Extended tests to make sure that tokens are leveraged in parameter files and that the module readme's matches the
Set-ModuleReadMeutility's output - Improved deployment validation: Optimized deployment, removal and login scripts
- Improved publishing: Support to multiple scopes and cascading version update (publishing major and major.minor versions together with major.minor.patch versions)
- Aligned pipeline UI stages/jobs display names with Wiki and diagrams
- Added pipeline trigger when updating global tests
- Removed Azure DevOps pipeline trigger on PRs
Tools
- Module readme generator (
Set-ModuleReadMe) updates:- Automated parameter table categories
- Automated table of contents
- Added support for multi-line metadata
- Added script to check namePrefix availability (
Test-NamePrefixAvailability) - Added
bicepconfig.jsonto disable Linter location warning - Improved Broken Links Check pipeline
- Improved main home readme generator pipeline for both Azure DevOps and GitHub
- Added Yaml templates for PRs, Bugs and Feature Requests
Wiki
- Extensive wiki restructuring to highlight different repo usage scenarios and provided functionality (module library and CI enviroment)
- Added and updated image diagrams across all sections
- Improved step-by-step contribution guide flow
- Improved documentation on Known issues
- Added Solution creation page with deployment examples leveraging published modules
- Added guidelines for multi-repo orchestration
- Added migration guidelines section for release updates
- Document prerequisites for Azure DevOps Universal Artifact Feed
Fixes
- Aligned Azure DevOps and GitHub pipelines for dependencies and soft deleted resource purge
- Updating general removal sequence to fix private endpoint removal for all modules
- Unique name generation for event hub namespace
- Removed serial deployment (batch) from virtual network subnets, NetApp capacity pools, operational insights solutions
- Fixed broken links across documentation and Wiki
What's Changed
- Keyvaults - Securing secrets parameter by using object by Vebjørn Ostnes Gaupset (@vgaupset) in #1022
- Update ServiceBus module to use topics and topics authorizationRules by Erika Gressi (@eriqua) in #1028
- Rewrite of the AppGW module by Rainer Halanek (@rahalan) in #1026
- Simplify VM availability zone parameters by Marius Storhaug (@MariusStorhaug) in #1030
- removed form template by Sebastian Gräf (@segraef) in #1039
- Update deploy.bicep by Zaid Mohammad (@zaidmohd) in #1041
- Added tags module by @MrMCake in #1029
- Publish: Cascading version update by Marius Storhaug (@MariusStorhaug) in #978
- Wiki restructuring - empty side by side toc by Erika Gressi (@eriqua) in #1051
- Fix incorrect parameter handling in Automation Account by @MrMCake in #1037
- Align all nested_privateEndpoint to the same API version by Erika Gressi (@eriqua) in #1053
- Storage Account: Parameterized support for HTTPs by Marius Storhaug (@MariusStorhaug) in #1052
- Resource Removal: Add resource Group support for mg level deployments by Ahmad Abdalla (@ahmadabdalla) in #1043
- Fix accelerated networking on VM by Marius Storhaug (@MariusStorhaug) in #1055
- Add dedicated LAW for automation account test by Erika Gressi (@eriqua) in #1059
- Update networking API versions by Erika Gressi (@eriqua) in #1060
- Microsoft.Authorization: Publish templates on different scopes by @MrMCake in #1033
- Wiki restructuring - known issues by Erika Gressi (@eriqua) in #1064
- Update REDAMEs from ADO pipelines added by Margarita Sanz (@Msanzdelrio) in #1067
- Adding event grid system topics by Rainer Halanek (@rahalan) in #1045
- Add new properties to AKS by Rainer Halanek (@rahalan) in #1056
- Dependency-VM: Disable
accelerated networkingto support small size by @MrMCake in #1066 - Fixed issue with Azure DevOps pipeline to have it fail on failed Pester tests by @MrMCake in #1036
- Extend Bastion Host Module by Sergio Navar (@senavar) in #1071
- Publishing: Improve diff comparison when on custom branch by Marius Storhaug (@MariusStorhaug) in #1058
- Adding private dns zones children by Rainer Halanek (@rahalan) in #1044
- KeyVault: Updated roles by @MrMCake in #1065
- VPN Gateway: Added module by @MrMCake in #1068
- Wiki restructuring - interoperability by Erika Gressi (@eriqua) in #1074
- SQL MI Update by Sergio Navar (@senavar) in #1076
- Fix typo for new module workflows by Erika Gressi (@eriqua) in #1080
- VNET: Removed subnet property from main deployment by @MrMCake in #1081
- Wiki restructuring - Contribution guide by Erika Gressi (@eriqua) in #1084
- Enabling NFS 4.1 Fileshares by Marius Storhaug (@MariusStorhaug) in #1078
- Wiki restructure - The library by Erika Gressi (@eriqua) in #1087
- Updated pipeline default values from string to boolean to match type by @MrMCake in #1091
- StorageAccount: Cleanup + add publicNetworkAccess parameter by Marius Storhaug (@MariusStorhaug) in #1086
- VPN Site: Created new module by @MrMCake in #1088
- vWAN: Moved resources to corresponding modules and removed duplicates by @MrMCake in #1090
- Adding properties to Azure Container Registry by Rainer Halanek (@rahalan) in #1079
- Microsoft.AnalysisServices-Servers-Max param file by Saumilkumar Shah (@SaumilkumarShah) in #1100
- New module: MS.Web/StaticSites by Marius Storhaug (@MariusStorhaug) in #1093
- Wiki restructure - Add test module locally utility to contribution guide by Erika Gressi (@eriqua) in #1104
- Load Balancer: Add better support for privateLB by Marius Storhaug (@MariusStorhaug) in #1089
- Bug fix: Update ADO Dependency Pipeline to support new policy assignment parameter file names, point to the root template instead of child by Ahmad Abdalla (@ahmadabdalla) in #1110
- Microsoft.ApiManagement-service Min Param File Added by Saumilkumar Shah (@SaumilkumarShah) in #1108
- add Azure Active Directory as sql server admin authentication by Mai Ve Bugge (@mvbugge) in #1106
- Added private endpoint deployment to container registry by @MrMCake in #1118
- Replaced CuaID implementation (to be discussed) by @MrMCake in #895
- Added cua ID to several templates by @MrMCake in #1119
- NSG: Moved NSG Security Rules into its own child-module by @MrMCake in #1102
- Further CUA ID fixes by @MrMCake in #1121
- Added additional test case for SQL Server by @MrMCake in #1116
- Virtual Network - Subnet Child Resource Remediation by Ahmad Abdalla (@ahmadabdalla) in #1112
- Follow Up to CuaID deployment by @MrMCake in #1122
- RBAC Role Assignments: Added description parameter by Luke Snoddy (@lsnoddy) in #1115
- Make some parameters optional by Rainer Halanek (@rahalan) in #1123
- Adding new properties to AKS by Raffi Krikorian (@r)...
v 0.4.0
Highlights
Modules
- Added versioning via
version.jsonfile in each module - Added Synapse Private Link Hubs
- Added Compute Disks module
- Added Service Fabric Cluster module
- Added Virtual Hub module
- Added Load Balancer Child modules
- Standardized naming of diagnostic settings parameters
- Deprecated AutoManage module and migrated it to VM module
- Update KeyVault, Virtual Machine, Virtual Machine Scale Set, Event Hub and Storage Account to default secure values
- Aligned all outputs to
name,resourceGroup&resourceIdwhere applicable - VNET subnets parameter now optional
- Aligned AppInsights module with template reference property names
CI Environment
- Enabled local
<<namePrefix>>in thesettings.jsonfile - Dependency pipeline
- Added Azure DevOps counterpart
- Added additional resources: Proximity Placement Group, Image Template
- Improved end-to-end flow by improving value pass-over
- Improved error details
- Aligned stage names of GitHub & Azure DevOps
- Added additional test files
- Enabled ManagementGroup level removal
- Added publishing of child modules
- Introduced grouping of logs on GitHub
Tools
- Improved flexibility of the
Test-ModuleLocallyfunction
Wiki
- Added
utilitiesin addition to the documentation inside the scripts - Updated
Module Usageexamples to latest Bicep features & addedbicepconfig.jsonexamples - Updated dependencies section to latest token solution
Fixes
- VMs now cleanup their attachments correctly
- Azure DevOps pipelines can now be canceled properly
- VNETs idempotency now consistent
- Fixed issue for
ConvertTo-ARMTemplateutility - Policy Assignment now explicitly specifies the principal type, fixing an issue where the API would not properly work for subsequent deployments
What's Changed
- Added missing ADO artifacts reference in wiki by @MrMCake in #851
- Added deleteOption to VM by @MrMCake in #850
- LoadBalancer: Added child resources + test cases by @MrMCake in #848
- VNET: Fixed indempotency bug with subnet deployment by @MrMCake in #845
- Added missing removal condition to avoid uncancelable pipeline by @MrMCake in #854
- Fix Recovery Services Vault MI Issue by Marius Storhaug (@MariusStorhaug) in #862
- Update global.variables.yml by SeSeicht (@SeSeicht) in #863
- Added utilities wiki entry by @MrMCake in #847
- Fix Storage Account MI Issue by Marius Storhaug (@MariusStorhaug) in #861
- Added an additional note to the wiki to better explain the MSI role assignment by @MrMCake in #855
- Added support for Synapse Private Link Hubs (#856) by Rene Pajta (@renepajta) in #858
- Change startTime of "Linux_ZeroDay" by SeSeicht (@SeSeicht) in #864
- Added improved error fetching for failed deployments by @MrMCake in #866
- Align MI outputs by Marius Storhaug (@MariusStorhaug) in #872
- Specify set of PS modules for different actions by Erika Gressi (@eriqua) in #874
- Implemented dependency pipeline for ADO by @MrMCake in #846
- web.hostingenvironment to defaultJobTimeoutInMinutes: 360 by SeSeicht (@SeSeicht) in #879
- Mapping module deployment outputs to github action output by Erika Gressi (@eriqua) in #878
- Fix dependency storage diagnostic name by Erika Gressi (@eriqua) in #884
- Users/alsehr/881 rsv fix by @MrMCake in #885
- Replace test storage name by Erika Gressi (@eriqua) in #888
- Standardizing naming of diagnostic settings + API version update for locks and RBAC by Rainer Halanek (@rahalan) in #886
- Updated error output for Test-AzDeployment by @MrMCake in #889
- fix VM parameter file with additional parameter by Rainer Halanek (@rahalan) in #892
- update PIP by Rainer Halanek (@rahalan) in #898
- Update Analysis Service and API Management Outputs by Sergio Navar (@senavar) in #875
- Fixed & updated automanage deployment by @MrMCake in #825
- Enable budget removal by @MrMCake in #904
- Update Key vault with security recommendation by Elena Batanero (@elbatane) in #896
- Fix Compute Images by Erika Gressi (@eriqua) in #907
- Dependency pipeline Replace msiPrincipalId at runtime by Erika Gressi (@eriqua) in #893
- Updated outputs for namespace [c], [d], [e], [h] by @MrMCake in #915
- update FW by Rainer Halanek (@rahalan) in #899
- Added disks module by Margarita Sanz (@Msanzdelrio) in #917
- Updated outputs of namespace starting with [n] by @MrMCake in #913
- Updated outputs for namespaces starting with [r], [o] by @MrMCake in #912
- Updated outputs for namespace [m], [l], [k], [i] by @MrMCake in #914
- Fixed wrong Publish condition by Sebastian Gräf (@segraef) in #919
- Updated outputs for namespace [s], [v], [w] by @MrMCake in #911
- Updated ADO pipeline names & update GitHub workflow conditions to not skip over tests by @MrMCake in #925
- Default secure values for storage accounts by elisa anzelmo (@elanzel) in #920
- Users/sogangul/bicep service fabric clusters by Somil Ganguly (@SomilGanguly) in #537
- RSV: Removed unused param from parameter file by @MrMCake in #926
- VNET: Removed requirement for default subnet by @MrMCake in #930
- Enabled ManagementGroup-Level removal by @MrMCake in #903
- remove unused workflow/pipeline file by Marius Storhaug (@MariusStorhaug) in #933
- Users/elanzelm/security eventhub by elisa anzelmo (@elanzel) in #939
- Bug fix for ConvertTo-ARMTemplate by Marius Storhaug (@MariusStorhaug) in #944
- Update dependency pipeline with image template and vhd copy by Erika Gressi (@eriqua) in #929
- Publishing and versioning of child-resources and parents by Marius Storhaug (@MariusStorhaug) in #744
- Service Fabric: Fix incorrect parameter file references in pipeline by @MrMCake in #934
- Fix proximityPlacementGroup bug by Simone Bertaccini (@simonbMS) in #950
- Bugfix - Publishing modules by Marius Storhaug (@MariusStorhaug) in #952
- Enabled <> token across modules and dependency pipeline resources by Ahmad Abdalla (@ahmadabdalla) in #945
- Virtual Hub : Create module by @MrMCake in #921
- tokenize vhub dependency by Marius Storhaug (@MariusStorhaug) in #958
- Added token replacement to removal by @MrMCake in #956
- API version update by Erika Gressi (@eriqua) in #959
- Fix publishing prerelease tag by Marius Storhaug (@MariusStorhaug) in #955
- Added fix for galleries module failure by Margarita Sanz (@Msanzdelrio) in #962
- Fixed vHub ref by @MrMCake in #964
- Switch description outputs by Stijn Geselle (@modbase) in #963
- Remove unknown character from run names by Paul McDonald (@thepaulmacca) in #969
- Update globally unique names for kv, ase and apim by Erika Gressi (@eriqua) in #970
- Fixing typo occurrences by Erika Gressi (@eriqua) in #977
- Incomplete title on wiki home by Marius Storhaug (@MariusStorhaug) in #979
- Added missing ADO pipeline for disks by Marius Storhaug (@MariusStorhaug) in #976
- Fix publishing template for firewall policies in ADO by Marius Storhaug (@MariusStorhaug) in #975
- Introduce grouping of logs by Marius Storhaug (@MariusStorhaug) in #972
- vm adp token and description fix by Erika Gressi (@eriqua) in #980
- Users/alsehr/849 local test by @MrMCake in #968
- Fixed both Load Balancer & AKS by @MrMCake in #985
- Trigger all pipelines after environment cleanup by Erika Gressi (@eriqua) in #986
- Quick fix for Local Test Script and Documentation by Ahmad Abdalla (@ahmadabdalla) in https://github.com/Azure...
v 0.3.1
Highlights
- Modules
- Aligning deployment names for all modules
- Aligning to the same diagnostic settings API version for all modules
- Aligning deployed resource names to the same convention
- Adding missing diagnostic settings input parameters for several modules
- Adding multiple testing parameter files to several modules
- Platform
- Adding first version of ADO pipelines
- Refactoring the GitHub workflow design to
- leverage a single GitHub action for all Pester tests
- leverage a single GitHub action to test module deployments end-to-end (validation, deployment, removal)
- Improving dependency pipeline for GitHub workflows
- Improving testing for child resources
- Improving removal procedure to leverage deployments instead of resource tags
- Adding removal procedure (purge) for resources for which soft-deletion is enforced
- Adding trigger on common scripts' changes for GitHub workflows
- Tools
- Improving the Bicep to ARM Templates conversion script
- Adding Broken Link Check Action to validate all URLs inside the repository
- Wiki
- Improving docs for Pipelines, Modules & Testing sections
- Updating information for the Support section
- Extending docs for removal procedure
- Adding documentation for utility scripts
Merged PRs
- Depedency pipeline cleanup by @MrMCake in #699
- Updated kind & added param file by @MrMCake in #701
- [666] Update dependency pipeline with policy assignment by Erika Gressi (@eriqua) in #708
- Microsoft.VirtualMachineImages deployment names by Erika Gressi (@eriqua) in #709
- MS.Web deployment names by Erika Gressi (@eriqua) in #710
- Align MS.Sql deployment names by Erika Gressi (@eriqua) in #712
- Align Microsoft.Resources deployment names by Erika Gressi (@eriqua) in #716
- Align Microsoft.OperationalInsights deployment names by Erika Gressi (@eriqua) in #717
- Added RBAC to secret & key child modules by @MrMCake in #706
- Align Microsoft.Logic deployment names by Erika Gressi (@eriqua) in #723
- Align Microsoft.MachineLearningServices deployment names by Erika Gressi (@eriqua) in #722
- Align Microsoft.RecoveryServices deployment names by Erika Gressi (@eriqua) in #715
- Align Microsoft.Network deployment names by Erika Gressi (@eriqua) in #718
- Align Microsoft.ManagedIdentity deployment names by Erika Gressi (@eriqua) in #720
- Align Microsoft.ManagedServices deployment names by Erika Gressi (@eriqua) in #719
- Align Microsoft.Management deployment names by Erika Gressi (@eriqua) in #721
- Align Microsoft.KeyVault deployment names by Erika Gressi (@eriqua) in #724
- Align Microsoft.HealthBot deployment names by Erika Gressi (@eriqua) in #726
- Align Microsoft.EventHub deployment names by Erika Gressi (@eriqua) in #727
- Align Microsoft.DesktopVirtualization deployment names by Erika Gressi (@eriqua) in #729
- Align Microsoft.DataFactory deployment names by Erika Gressi (@eriqua) in #732
- Align Microsoft.Databricks deployment names by Erika Gressi (@eriqua) in #733
- Align Microsoft.ContainerService deployment names by Erika Gressi (@eriqua) in #734
- Align Microsoft.CognitiveServices deployment names by Erika Gressi (@eriqua) in #737
- Align Microsoft.Automanage deployment names by Erika Gressi (@eriqua) in #739
- Align Microsoft.Authorization deployment names by Erika Gressi (@eriqua) in #740
- Align Microsoft.AnalysisServices deployment names by Erika Gressi (@eriqua) in #741
- Align Microsoft.ApiManagement deployment names by Erika Gressi (@eriqua) in #742
- Fixed missing optional check in RSV by @MrMCake in #743
- Align Ms.Storage deployment names by Erika Gressi (@eriqua) in #711
- Align Microsoft.Automation deployment names by Erika Gressi (@eriqua) in #738
- Align Microsoft.Compute deployment names by Erika Gressi (@eriqua) in #736
- Align Microsoft.ContainerRegistry deployment names by Erika Gressi (@eriqua) in #735
- Align Microsoft.EventGrid deployment names by Erika Gressi (@eriqua) in #728
- Align Microsoft.Insights deployment names by Erika Gressi (@eriqua) in #725
- Target NSGs in seperate resource group by Javier Cevallos (@jceval) in #713
- Added backup config to rsv module by @MrMCake in #755
- update API version for diagnostic settings by Rainer Halanek (@rahalan) in #760
- Role Assignments: Principal Type Update + Uplift API Version for Module by Ahmad Abdalla (@ahmadabdalla) in #714
- Modules Design update by Erika Gressi (@eriqua) in #769
- Add Missing Diagnostic Settings to Modules by Sergio Navar (@senavar) in #765
- Users/simonb/517 automation account removal by Simone Bertaccini (@simonbMS) in #761
- Add Azure firewall policy module by Rainer Halanek (@rahalan) in #748
- Create subnet child-resource by @MrMCake in #707
- Update SUPPORT.md by Alex Lee (@alex-lee-microsoft) in #802
- Pipeline: Streamlining & improvements by @MrMCake in #768
- Fixed dependency ref by @MrMCake in #804
- Align fw policy workflow by Erika Gressi (@eriqua) in #805
- Updated deployed resource names in parameter files by @MrMCake in #801
- Create ADO pipelines for validate, deploy, remove & publish by @MrMCake in #476
- Added Broken Link Check Action by Ahmad Abdalla (@ahmadabdalla) in #746
- Update deployment code for Diagnostic Settings by Sergio Navar (@senavar) in #811
- Extended removal logic to be more robust and in-depth by @MrMCake in #767
- Updated the use dependency filter to work with just a resourceId by @MrMCake in #814
- Update action path in dependency pipeline by Erika Gressi (@eriqua) in #817
- Expand Microsoft.ContainerService/managedClusters/agentPool properties object by Luke Snoddy (@lsnoddy) in #806
- Created trigger on pipeline file changes by @MrMCake in #816
- Feature update ConvertTo-ARMTemplates - Parallelism, skips and Child Resource handling by Marius Storhaug (@MariusStorhaug) in #818
- Update the global tests invocation to also consider child resources by @MrMCake in #798
- Users/lsnoddy/remove preview feature by Luke Snoddy (@lsnoddy) in #822
- Fixing PrivateDnsZone removal by Erika Gressi (@eriqua) in #824
- Updated ACR name + added min param file by @MrMCake in #827
- Allow peering to target remoteVnet in different subscription by jefe-maven in #829
- Fixing disk encryption set module by Erika Gressi (@eriqua) in #831
- Adding tests and documentation for conversion script by Rainer Halanek (@rahalan) in #821
- #763 wiki update for removal step by Simone Bertaccini (@simonbMS) in #833
- Fix Log analytics workspace removal by Erika Gressi (@eriqua) in #841
- Added RG-Location to bicep registry by @MrMCake in #839
- Added further utilities readme files to Wiki by @MrMCake in #840
New Contributors
- Alex Lee (@alex-lee-microsoft) made their first contribution in #802
- jefe-maven made their first contribution in #829
Full Changelog: v0.3.0...v0.3.1

