New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add JSON output format for Baseline cmdlets #839
Comments
@BernieWhite Tested this out and have this: [
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.Default"
},
"spec": {
"rule": {
"tag": {
"release": "GA"
}
}
},
"synopsis": "Default baseline for Azure rules."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.Preview"
},
"spec": {
"rule": {
"tag": {
"release": [
"GA",
"preview"
]
}
}
},
"synopsis": "Includes Azure features in preview."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.All"
},
"spec": {
"rule": {
"tag": {}
}
},
"synopsis": "Includes all Azure rules."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2020_06"
},
"spec": {
"rule": {
"tag": {
"ruleSet": [
"2020_06"
],
"release": "GA"
}
}
},
"synopsis": "Include rules released June 2020 or prior for Azure GA features."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2020_09"
},
"spec": {
"rule": {
"tag": {
"ruleSet": [
"2020_06",
"2020_09"
],
"release": "GA"
}
}
},
"synopsis": "Include rules released September 2020 or prior for Azure GA features."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2020_12"
},
"spec": {
"rule": {
"tag": {
"ruleSet": [
"2020_06",
"2020_09",
"2020_12"
],
"release": "GA"
}
}
},
"synopsis": "Include rules released December 2020 or prior for Azure GA features."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2021_03"
},
"spec": {
"rule": {
"tag": {
"ruleSet": [
"2020_06",
"2020_09",
"2020_12",
"2021_03"
],
"release": "GA"
}
}
},
"synopsis": "Include rules released March 2021 or prior for Azure GA features."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2021_06"
},
"spec": {
"rule": {
"tag": {
"ruleSet": [
"2020_06",
"2020_09",
"2020_12",
"2021_03",
"2021_06"
],
"release": "GA"
}
}
},
"synopsis": "Include rules released June 2021 or prior for Azure GA features."
},
{
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.GA_2021_09"
},
"spec": {
"rule": {
"tag": {
"ruleSet": [
"2020_06",
"2020_09",
"2020_12",
"2021_03",
"2021_06",
"2021_09"
],
"release": "GA"
}
}
},
"synopsis": "Include rules released September 2021 or prior for Azure GA features."
}
] I included synopsis as a property, given JSON doesn't support But JSONC (json with comments) is an option, and this would be fine with having a synopsis as a comment. |
This would be acceptable for JSONC [
{/* Synopsis: Default baseline for Azure rules. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.Default"
},
"spec": {
"rule": {
"tag": {
"release": "GA"
}
}
}
},
{/* Synopsis: Includes Azure features in preview. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.Preview"
},
"spec": {
"rule": {
"tag": {
"release": [
"GA",
"preview"
]
}
}
}
},
{/* Synopsis: Includes all Azure rules. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.All"
},
"spec": {
"rule": {
"tag": {}
}
}
},
{/* Synopsis: Include rules released June 2020 or prior for Azure GA features. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2020_06"
},
"spec": {
"rule": {
"tag": {
"release": "GA",
"ruleSet": [
"2020_06"
]
}
}
}
},
{/* Synopsis: Include rules released September 2020 or prior for Azure GA features. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2020_09"
},
"spec": {
"rule": {
"tag": {
"release": "GA",
"ruleSet": [
"2020_06",
"2020_09"
]
}
}
}
},
{/* Synopsis: Include rules released December 2020 or prior for Azure GA features. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2020_12"
},
"spec": {
"rule": {
"tag": {
"release": "GA",
"ruleSet": [
"2020_06",
"2020_09",
"2020_12"
]
}
}
}
},
{/* Synopsis: Include rules released March 2021 or prior for Azure GA features. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2021_03"
},
"spec": {
"rule": {
"tag": {
"release": "GA",
"ruleSet": [
"2020_06",
"2020_09",
"2020_12",
"2021_03"
]
}
}
}
},
{/* Synopsis: Include rules released June 2021 or prior for Azure GA features. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"annotations": {
"obsolete": "true"
},
"name": "Azure.GA_2021_06"
},
"spec": {
"rule": {
"tag": {
"release": "GA",
"ruleSet": [
"2020_06",
"2020_09",
"2020_12",
"2021_03",
"2021_06"
]
}
}
}
},
{/* Synopsis: Include rules released September 2021 or prior for Azure GA features. */
"apiVersion": "github.com/microsoft/PSRule/v1",
"kind": "Baseline",
"metadata": {
"name": "Azure.GA_2021_09"
},
"spec": {
"rule": {
"tag": {
"release": "GA",
"ruleSet": [
"2020_06",
"2020_09",
"2020_12",
"2021_03",
"2021_06",
"2021_09"
]
}
}
}
}
] |
@ArmaanMcleod Currently synopsis is not included in the schema. So when we take the next step and support JSON-based resources then this might be a problem. My preference would be to |
Extending from #833
We can added JSON output format to the following cmdlets:
Get-PSRuleBaseline
Export-PSRuleBaseline
E.g.
The text was updated successfully, but these errors were encountered: