CARML evolved to and has been rebranded as the Bicep version of Azure Verifiefd Modules (AVM).AVM is a straight-line successor of CARML, the next evolutionary step. A lot of CARML’s principles and architecture decisions have formed the basis for AVM.
While this means some minor changes in things such as parameter names or "standard interfaces" (e.g., diagnostic settings, etc.),you can still use the same modules you're used to and love, as they have been transitioned to AVM as resource or pattern modules.
- You can find the full list of all AVM modules in theAVM Module Indexes.
- Each module is published in the Public Bicep Registry and their source code can be found in the underlying repository (BRM)!
A notice with additional details has been placed in each module. If for any reason, you still need access to the CARML version of the module, you can find it in the CARML repository by following the links in the module'sREADME.md
file.
Going forward, only the AVM version of the modules will receive updates and new features.
- Please do not file issues in CARML or work on improving the module in CARML as further contributions to these modules will not be integrated in the CARML repository!
- To open an AVM module issue, use theModule Issuetemplate in the BRM repository.
- If you accidentally raise an issue in the wrong place, we will transfer it to its correct home - the AVM Bicep repository (BRM).
NOTE: A few modules have been retired without being moved to AVM as is. In most of these cases, capabilities originally provided by these modules have been implemented differently in AVM - e.g., as part of all AVM modules.
In the upcoming period,the AVM team will work on ensuring full compatibility of CARML's inner-sourcing solution (CI environment) with AVM.
This repository includes a library of mature and curatedBicepmodules as well as a Continuous Integration (CI) environment leveraged for modules' validation and versioned publishing.
The CI environment supports both ARM and Bicep and can be leveraged using GitHub actions as well as Azure DevOps pipelines.
- For introduction guidance visit theWiki
- For guidance on which version of the code to leverage, seeDisclaimer
- For information on contributing, seeContribution
- File an issue viaGitHub Issues
- For reference documentation, visitEnterprise-Scale
- For an outline of the module features, visitModule overview
Note:To ensure the modules and environment work as expected, please ensure you are using the latest version of the used tools such as PowerShell and Bicep. Especially in case of the latter, note, that you need to manually update the Bicep CLI. For further information, see ourtroubleshooting guide.
Please note that themain
branch of this repository always contains the latest available version of the code. Some of the updates may introduce breaking changes as well.
- Default path:To avoid disruptions, use distinct versions available throughreleases.
- Early adopter path:If the risk of breaking changes is understood and accepted, you can use the code in the
main
branch directly. However, the CARML team recommends against automatically pulling code frommain
.It is always recommended to review changes before you pull them into your own repository.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visithttps://cla.opensource.microsoft.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted theMicrosoft Open Source Code of Conduct. For more information see theCode of Conduct FAQor contactopencode@microsoftwith any additional questions or comments.
For specific guidelines on how to contribute to this repository please refer to theContribution guideWiki section.
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.
Modules provided in this library have telemetry enabled by default. To learn more about this feature, please refer to theTelemetry articlein the wiki.