A suite of rules to validate Azure resources against the Cloud Adoption Framework (CAF) using PSRule.
Перейти к файлу
Bernie White 770bba535e
Improvements to doco (#42)
2020-12-27 15:44:49 +10:00
.azure-pipelines Update default branch to main (#19) 2020-08-27 22:00:57 +10:00
.github Added analyze repository workflow (#26) 2020-09-10 14:20:44 +10:00
.ps-rule Add Well Architectured pillars to doc metadata #23 #24 (#25) 2020-09-09 16:37:15 +10:00
.vscode Rule updates and fixes #27 #28 #29 #30 #31 #32 (#33) 2020-09-10 22:08:57 +10:00
docs Improvements to doco (#42) 2020-12-27 15:44:49 +10:00
src/PSRule.Rules.CAF Improvements to doco (#42) 2020-12-27 15:44:49 +10:00
tests/PSRule.Rules.CAF.Tests Resource case and tagging #35 #36 #38 (#39) 2020-12-26 23:30:29 +10:00
.gitignore Add inital project files (#1) 2019-12-16 15:56:41 +10:00
.markdownlint.json Add inital project files (#1) 2019-12-16 15:56:41 +10:00
BaselineToc.Doc.ps1 Resource case and tagging #35 #36 #38 (#39) 2020-12-26 23:30:29 +10:00
CHANGELOG.md Pre-release v0.1.0-B2012004 (#41) 2020-12-26 23:55:41 +10:00
CODE_OF_CONDUCT.md Initial CODE_OF_CONDUCT.md commit 2019-12-15 21:40:07 -08:00
CONTRIBUTING.md Add inital project files (#1) 2019-12-16 15:56:41 +10:00
LICENSE Add inital project files (#1) 2019-12-16 15:56:41 +10:00
README.md Improvements to doco (#42) 2020-12-27 15:44:49 +10:00
RuleToc.Doc.ps1 Add CI and update readme (#8) 2020-01-05 21:47:22 +10:00
SECURITY.md Add inital project files (#1) 2019-12-16 15:56:41 +10:00
SUPPORT.md Improvements to doco (#42) 2020-12-27 15:44:49 +10:00
build.ps1 Add manual build script (#15) 2020-04-25 17:09:20 +10:00
pipeline.build.ps1 Update PSRule dependency to v1.0.0 #37 (#40) 2020-12-26 23:46:47 +10:00
ps-project.yaml Update PSRule dependency to v1.0.0 #37 (#40) 2020-12-26 23:46:47 +10:00
ps-rule.yaml Add Well Architectured pillars to doc metadata #23 #24 (#25) 2020-09-09 16:37:15 +10:00

README.md

PSRule for Cloud Adoption Framework

A suite of rules to validate Azure resources against the Cloud Adoption Framework (CAF) using PSRule.

ci-badge

Features of PSRule for CAF include:

  • Ready to go - Leverage configurable rules to validate Azure resources.
  • DevOps - Validate resources and infrastructure code pre or post-deployment.
  • Cross-platform - Run on MacOS, Linux, and Windows.

Support

This project uses GitHub Issues to track bugs and feature requests. Please search the existing issues before filing new issues to avoid duplicates.

  • For new issues, file your bug or feature request as a new Issue.
  • For help and questions about using this project, we have a Gitter room which you can join below.

Join the chat

If you have any problems with the PSRule engine, please check the project GitHub issues page instead.

Support for this project/ product is limited to the resources listed above.

Getting the modules

This project requires the PSRule, PSRule.Rules.Azure and Az PowerShell modules. For details on each see install.

You can download and install these modules from the PowerShell Gallery.

Module Description Downloads / instructions
PSRule.Rules.CAF Validate Azure resources against the CAF. latest / instructions

Getting started

Export resource data

To validate Azure resources running in a subscription, export the resource data with the Export-AzRuleData cmdlet. The Export-AzRuleData cmdlet exports a resource graph for one or more subscriptions that can be used for analysis with the rules in this module.

By default, resources for the current subscription context are exported. See below for more options.

Before running this command you should connect to Azure by using the Connect-AzAccount cmdlet.

For example:

# Authenticate to Azure, only required if not currently connected
Connect-AzAccount;

# Export resource data
Export-AzRuleData;

Validate resources

To validate Azure resources use the extracted data with the Invoke-PSRule cmdlet.

For example:

Invoke-PSRule -InputPath .\*.json -Module 'PSRule.Rules.CAF';

Rule reference

For a list of rules included in the PSRule.Rules.CAF module see:

Language reference

Commands

This module uses commands from the PSRule.Rules.Azure module to export resource configuration data. The PSRule.Rules.Azure module is included as a dependency of PSRule.Rules.CAF.

For details of PSRule.Rules.Azure commands see:

Changes and versioning

Modules in this repository will use the semantic versioning model to declare breaking changes from v1.0.0. Prior to v1.0.0, breaking changes may be introduced in minor (0.x.0) version increments. For a list of module changes please see the change log.

Pre-release module versions are created on major commits and can be installed from the PowerShell Gallery. Pre-release versions should be considered experimental. Modules and change log details for pre-releases will be removed as standard releases are made available.

Contributing

This project welcomes contributions and suggestions. If you are ready to contribute, please visit the contribution guide.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Maintainers

License

This project is licensed under the MIT License.