You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: CONTRIBUTING.md
+10-8
Original file line number
Diff line number
Diff line change
@@ -67,14 +67,14 @@ Before improving rule recommendations familiarize yourself with writing [rule ma
67
67
Rule documentation requires the following annotations for use with PSRule for Azure:
68
68
69
69
-`severity` - A subjective rating of the impact of a rule on the solution or platform.
70
-
*NB* - the severity ratings reflect a productionised implementation, consideration should be applied for pre-production environments.
71
-
70
+
*NB* - the severity ratings reflect a production implementation, consideration should be applied for pre-production environments.
71
+
72
72
Available severities are:
73
73
-`Critical` - A 'must have' if the solution is to be considered 'fit for purpose', secure, well governed and managed inline with the Microsoft Azure [Well-Architected Framework](https://learn.microsoft.com/azure/well-architected/).
74
74
-`Important` - A 'to be considered' within the context of the solution and domain.
75
75
In some cases, can introduce cost or complexity that should be considered as a trade off and explicitly documented as a [Key Design Decision](https://learn.microsoft.com/azure/cloud-adoption-framework/decision-guides/).
76
76
-`Awareness` - A 'good to have' feature, normally reserved for solutions with the highest [non-functional requirements](https://learn.microsoft.com/azure/well-architected/reliability/checklist).
77
-
77
+
78
78
-`pillar` - A Azure Well-Architected Framework pillar.
79
79
Either `Cost Optimization`, `Operational Excellence`, `Performance Efficiency`, `Reliability`, `Security`.
80
80
-`category` - A category of Azure Well-Architected Framework pillar.
@@ -148,19 +148,21 @@ metadata:
148
148
ruleSet: '2020_06'
149
149
spec:
150
150
type:
151
-
- Microsoft.ApiManagement/service
151
+
- Microsoft.ApiManagement/service
152
152
condition:
153
153
field: 'Identity.Type'
154
154
in:
155
-
- 'SystemAssigned'
156
-
- 'UserAssigned'
155
+
- 'SystemAssigned'
156
+
- 'UserAssigned'
157
157
```
158
158
159
159
**Tips for authoring rules:**
160
160
161
161
- To create new rules, snippets in the VS Code extension for PSRule can be used.
162
+
- Use YAML-based rules over PowerShell-based rules when possible.
163
+
We prefer YAML-based because they are easier for the community read and maintain.
162
164
- Use `-Type` over `-If` pre-conditions when possible.
163
-
Both may be required in some cases.
165
+
Both may be required in some cases.
164
166
165
167
### Adding rule configuration options
166
168
@@ -184,7 +186,7 @@ When adding configuration options, please follow these guidelines:
184
186
When you are ready to contribute a fix or feature:
185
187
186
188
- Start by [forking the PSRule.Rules.Azure repo][github-fork].
187
-
- Create a new branch from main in your fork.
189
+
- Create a new branch from `main` in your fork.
188
190
- Add commits in your branch.
189
191
- If you have updated module code or rules also update `CHANGELOG.md`.
190
192
- You don't need to update the `CHANGELOG.md` for changes to unit tests or documentation.
Copy file name to clipboardexpand all lines: README.md
+5-35
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# PSRule for Azure
2
2
3
-
A suite of rules to validate Azure resources and infrastructure as code (IaC) using PSRule.
3
+
A suite of rules to test Azure resources and infrastructure as code (IaC) using PSRule.
4
4
5
5
[][1]
6
6
@@ -27,8 +27,8 @@ Features of PSRule for Azure include:
27
27
- Provide a [Azure Well-Architected Framework][5] aligned suite of rules for validating Azure resources.
28
28
- Provide meaningful information to allow remediation.
29
29
2.**DevOps**:
30
-
- Resources and templates can be validated before deployment within DevOps workflows.
31
-
- Allow pull request (PR) validation to prevent invalid configuration being merged.
30
+
- Resources and Azure code can be tested before deployment within DevOps workflows.
31
+
- Allow pull request (PR) validation to prevent invalid configuration from being merged.
32
32
3.**Enterprise ready**:
33
33
- Rules can be directly adopted and additional enterprise specific rules can be layed on.
34
34
- Provide regular baselines to allow progressive adoption.
@@ -85,7 +85,7 @@ To get started with a sample repository, see [PSRule for Azure Quick Start][13]
85
85
The following example shows how to setup GitHub Actions to validate templates pre-flight.
86
86
87
87
1. See [Creating a workflow file][create-workflow].
88
-
2. Reference `Microsoft/ps-rule` with `modules: 'PSRule.Rules.Azure'`.
88
+
2. Reference `microsoft/ps-rule` with `modules: 'PSRule.Rules.Azure'`.
89
89
90
90
For example:
91
91
@@ -316,37 +316,7 @@ To view a list of rules by Azure resources see:
316
316
317
317
## Baseline reference
318
318
319
-
The following baselines are included within `PSRule.Rules.Azure`.
320
-
321
-
- [Azure.Default](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Default/) - Default baseline for Azure rules.
322
-
- [Azure.All](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.All/) - Includes all Azure rules.
323
-
- [Azure.GA_2020_06](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2020_06/) - Baseline for GA rules released June 2020 or prior.
324
-
- [Azure.GA_2020_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2020_09/) - Baseline for GA rules released September 2020 or prior.
325
-
- [Azure.GA_2020_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2020_12/) - Baseline for GA rules released December 2020 or prior.
326
-
- [Azure.GA_2021_03](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2021_03/) - Baseline for GA rules released March 2021 or prior.
327
-
- [Azure.GA_2021_06](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2021_06/) - Baseline for GA rules released June 2021 or prior.
328
-
- [Azure.GA_2021_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2021_09/) - Baseline for GA rules released September 2021 or prior.
329
-
- [Azure.GA_2021_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2021_12/) - Baseline for GA rules released December 2021 or prior.
330
-
- [Azure.GA_2022_03](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2022_03/) - Baseline for GA rules released March 2022 or prior.
331
-
- [Azure.GA_2022_06](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2022_06/) - Baseline for GA rules released June 2022 or prior.
332
-
- [Azure.GA_2022_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2022_09/) - Baseline for GA rules released September 2022 or prior.
333
-
- [Azure.GA_2022_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2022_12/) - Baseline for GA rules released December 2022 or prior.
334
-
- [Azure.GA_2023_03](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2023_03/) - Baseline for GA rules released March 2023 or prior.
335
-
- [Azure.GA_2023_06](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2023_06/) - Baseline for GA rules released June 2023 or prior.
336
-
- [Azure.GA_2023_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2023_09/) - Baseline for GA rules released September 2023 or prior.
337
-
- [Azure.GA_2023_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.GA_2023_12/) - Baseline for GA rules released December 2023 or prior.
338
-
- [Azure.Preview](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview/) - Includes rules for Azure GA and preview features.
339
-
- [Azure.Preview_2021_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2021_09/) - Baseline for rules released September 2021 or prior for Azure preview only features.
340
-
- [Azure.Preview_2021_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2021_12/) - Baseline for rules released December 2021 or prior for Azure preview only features.
341
-
- [Azure.Preview_2022_03](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2022_03/) - Baseline for rules released March 2022 or prior for Azure preview only features.
342
-
- [Azure.Preview_2022_06](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2022_06/) - Baseline for rules released June 2022 or prior for Azure preview only features.
343
-
- [Azure.Preview_2022_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2022_09/) - Baseline for rules released September 2022 or prior for Azure preview only features.
344
-
- [Azure.Preview_2022_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2022_12/) - Baseline for rules released December 2022 or prior for Azure preview only features.
345
-
- [Azure.Preview_2023_03](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2023_03/) - Baseline for rules released March 2023 or prior for Azure preview only features.
346
-
- [Azure.Preview_2023_06](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2023_06/) - Baseline for rules released June 2023 or prior for Azure preview only features.
347
-
- [Azure.Preview_2023_09](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2023_09/) - Baseline for rules released September 2023 or prior for Azure preview only features.
348
-
- [Azure.Preview_2023_12](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.Preview_2023_12/) - Baseline for rules released December 2023 or prior for Azure preview only features.
349
-
- [Azure.MCSB.v1](https://azure.github.io/PSRule.Rules.Azure/en/baselines/Azure.MCSB.v1/) - A baseline aligned to Microsoft Cloud Security Benchmark v1 controls.
319
+
For a list of baselines you can use in your configuration see [Baselines](https://azure.github.io/PSRule.Rules.Azure/en/baselines/).
0 commit comments