A suite of rules to validate Azure resources against the Cloud Adoption Framework (CAF) using PSRule.
Перейти к файлу
Bernie White 4502f56db8
Add manual build script (#15)
2020-04-25 17:09:20 +10:00
.azure-pipelines Update CI pipeline to use PS 7.0 #14 (#16) 2020-04-25 15:40:14 +10:00
.github Add inital project files (#1) 2019-12-16 15:56:41 +10:00
.ps-rule Add CI and update readme (#8) 2020-01-05 21:47:22 +10:00
.vscode Add CI and update readme (#8) 2020-01-05 21:47:22 +10:00
docs Add manual build script (#15) 2020-04-25 17:09:20 +10:00
src/PSRule.Rules.CAF Update CI pipeline to use PS 7.0 #14 (#16) 2020-04-25 15:40:14 +10:00
tests/PSRule.Rules.CAF.Tests Add NSG unit tests (#9) 2020-01-05 22:12:32 +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
CHANGELOG.md Pre-release v0.1.0-B2001009 (#12) 2020-01-05 23:09:28 +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 Update README with published info (#13) 2020-01-05 23:31:56 +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
build.ps1 Add manual build script (#15) 2020-04-25 17:09:20 +10:00
pipeline.build.ps1 Update CI pipeline to use PS 7.0 #14 (#16) 2020-04-25 15:40:14 +10:00
ps-project.yaml Add inital project files (#1) 2019-12-16 15:56:41 +10:00
ps-rule.yaml Update CI pipeline to use PS 7.0 #14 (#16) 2020-04-25 15:40:14 +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

More to come soon.

Disclaimer

This project is to be considered a proof-of-concept and not a supported product.

For issues with rules and documentation please check our GitHub issues page. If you do not see your problem captured, please file a new issue and follow the provided template.

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

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.