Skip to content

Commit ef30fb1

Browse files
authored
Snippet improvements #84 #94 #95 #96 (#97)
1 parent ab4d8c4 commit ef30fb1

17 files changed

Lines changed: 589 additions & 66 deletions

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,20 @@
22

33
## Unreleased
44

5+
What's changed since pre-release v0.4.0-B2107004:
6+
7+
- General improvements:
8+
- Secret string parameters now include an example Key Vault reference. [#94](https://github.com/Azure/PSDocs.Azure/issues/94)
9+
- Improved output of parameter object default values. [#84](https://github.com/Azure/PSDocs.Azure/issues/84)
10+
- Default values and allowed values now appear in a code block.
11+
- Allow optional parameters to be skipped in snippet. [#96](https://github.com/Azure/PSDocs.Azure/issues/96)
12+
- To exclude optional parameters from snippets configure `AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER`.
13+
- See [about_PSDocs_Azure_Configuration] for details.
14+
- Bug fixes:
15+
- Ignore function default values in snippets. [#95](https://github.com/Azure/PSDocs.Azure/issues/95)
16+
- To include parameters using a function default value configure `AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN`.
17+
- See [about_PSDocs_Azure_Configuration] for details.
18+
519
## v0.4.0-B2107004 (pre-release)
620

721
What's changed since v0.3.0:

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -290,6 +290,8 @@ The following conceptual topics exist in the `PSDocs.Azure` module:
290290

291291
- [Badges](docs/concepts/en-US/about_PSDocs_Azure_Badges.md)
292292
- [Configuration](docs/concepts/en-US/about_PSDocs_Azure_Configuration.md)
293+
- [AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN](docs/concepts/en-US/about_PSDocs_Azure_Configuration.md#azure_snippet_skip_default_value_fn)
294+
- [AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER](docs/concepts/en-US/about_PSDocs_Azure_Configuration.md#azure_snippet_skip_optional_parameter)
293295
- [AZURE_USE_PARAMETER_FILE_SNIPPET](docs/concepts/en-US/about_PSDocs_Azure_Configuration.md#azure_use_parameter_file_snippet)
294296
- [AZURE_USE_COMMAND_LINE_SNIPPET](docs/concepts/en-US/about_PSDocs_Azure_Configuration.md#azure_use_command_line_snippet)
295297
- [Conventions](docs/concepts/en-US/about_PSDocs_Azure_Conventions.md)

docs/concepts/en-US/about_PSDocs_Azure_Configuration.md

Lines changed: 60 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,69 @@ For details of setting configuration options see [PSDocs options][options]
1717

1818
The following configurations options are available for use:
1919

20+
- [AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN](#azure_snippet_skip_default_value_fn)
21+
- [AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER](#azure_snippet_skip_optional_parameter)
2022
- [AZURE_USE_PARAMETER_FILE_SNIPPET](#azure_use_parameter_file_snippet)
2123
- [AZURE_USE_COMMAND_LINE_SNIPPET](#azure_use_command_line_snippet)
2224

25+
### AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN
26+
27+
This configuration option determines if parameters with a function defaultValue are included in snippets.
28+
By default, a parameters with a function default value are not included in snippets.
29+
i.e. If a parameter default value is set to `[resourceGroup.location]` it is not included in snippets.
30+
31+
Syntax:
32+
33+
```yaml
34+
configuration:
35+
AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN: bool # Either true or false
36+
```
37+
38+
Default:
39+
40+
```yaml
41+
# YAML: The default AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN configuration option
42+
configuration:
43+
AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN: true
44+
```
45+
46+
Example:
47+
48+
```yaml
49+
# YAML: Include parameters with a function default value in snippets.
50+
configuration:
51+
AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN: false
52+
```
53+
54+
### AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER
55+
56+
This configuration option determines optional parameters are included in snippets.
57+
By default, optional parameters are included in snippets.
58+
To ignore optional parameter, set this option to `false`.
59+
60+
Syntax:
61+
62+
```yaml
63+
configuration:
64+
AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER: bool # Either true or false
65+
```
66+
67+
Default:
68+
69+
```yaml
70+
# YAML: The default AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER configuration option
71+
configuration:
72+
AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER: false
73+
```
74+
75+
Example:
76+
77+
```yaml
78+
# YAML: Do not include optional parameters in snippets
79+
configuration:
80+
AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER: true
81+
```
82+
2383
### AZURE_USE_PARAMETER_FILE_SNIPPET
2484

2585
This configuration option determines if a parameter file snippet is added to documentation.
@@ -49,7 +109,6 @@ configuration:
49109
AZURE_USE_PARAMETER_FILE_SNIPPET: false
50110
```
51111

52-
53112
### AZURE_USE_COMMAND_LINE_SNIPPET
54113

55114
This configuration option determines if a command line snippet is added to documentation.

docs/setup/configuring-options.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Configuring options
2+
3+
PSDocs for Azure comes with many configuration options.
4+
Additionally, the PSDocs engine includes several options that apply to all rules.
5+
You can visit the [about_PSDocs_Options][1] topic to read about general PSDocs options.
6+
7+
[1]: https://github.com/microsoft/PSDocs/blob/main/docs/concepts/PSDocs/en-US/about_PSDocs_Options.md
8+
9+
## Setting options
10+
11+
Configuration options are set within the `ps-docs.yaml` file.
12+
If you don't already have a `ps-docs.yaml` file you can create one in the root of your repository.
13+
14+
Configuration can be combined as indented keys.
15+
Use comments to add context.
16+
Here are some examples:
17+
18+
```yaml
19+
configuration:
20+
# Show command line snippet
21+
AZURE_USE_COMMAND_LINE_SNIPPET: true
22+
23+
# Hide parameter file snippet
24+
AZURE_PARAMETER_FILE_EXPANSION: false
25+
```
26+
27+
!!! Tip
28+
YAML can be a bit particular about indenting.
29+
If something is not working, double check that you have consistent spacing in your options file.

docs/setup/configuring-snippets.md

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
# Configuring snippets
2+
3+
PSDocs for Azure supports a number of snippets that can be included in documentation.
4+
This feature can be enabled by using the following configuration options.
5+
6+
## Configuration
7+
8+
!!! Tip
9+
Each of these configuration options are set within the `ps-docs.yaml` file.
10+
To learn how to set configuration options see [Configuring options][1].
11+
12+
[1]: configuring-options.md
13+
14+
### Skip function default value parameters
15+
16+
:octicons-milestone-24: v0.4.0
17+
18+
This configuration option determines if parameters with a function defaultValue are included in snippets.
19+
By default, a parameters with a function default value are not included in snippets.
20+
i.e. If a parameter default value is set to `[resourceGroup.location]` it is not included in snippets.
21+
22+
Syntax:
23+
24+
```yaml
25+
configuration:
26+
AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN: bool # Either true or false
27+
```
28+
29+
Default:
30+
31+
```yaml
32+
# YAML: The default AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN configuration option
33+
configuration:
34+
AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN: true
35+
```
36+
37+
Example:
38+
39+
```yaml
40+
# YAML: Include parameters with a function default value in snippets.
41+
configuration:
42+
AZURE_SNIPPET_SKIP_DEFAULT_VALUE_FN: false
43+
```
44+
45+
### Skip optional parameters
46+
47+
:octicons-milestone-24: v0.4.0
48+
49+
This configuration option determines optional parameters are included in snippets.
50+
By default, optional parameters are included in snippets.
51+
To ignore optional parameter, set this option to `false`.
52+
53+
Syntax:
54+
55+
```yaml
56+
configuration:
57+
AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER: bool # Either true or false
58+
```
59+
60+
Default:
61+
62+
```yaml
63+
# YAML: The default AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER configuration option
64+
configuration:
65+
AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER: false
66+
```
67+
68+
Example:
69+
70+
```yaml
71+
# YAML: Do not include optional parameters in snippets
72+
configuration:
73+
AZURE_SNIPPET_SKIP_OPTIONAL_PARAMETER: true
74+
```
75+
76+
### Parameter file snippet
77+
78+
:octicons-milestone-24: v0.2.0
79+
80+
This configuration option determines if a parameter file snippet is added to documentation.
81+
By default, a snippet is generated.
82+
To prevent a parameter file snippet being generated, set this option to `false`.
83+
84+
Syntax:
85+
86+
```yaml
87+
configuration:
88+
AZURE_USE_PARAMETER_FILE_SNIPPET: bool
89+
```
90+
91+
Default:
92+
93+
```yaml
94+
# YAML: The default AZURE_USE_PARAMETER_FILE_SNIPPET configuration option
95+
configuration:
96+
AZURE_USE_PARAMETER_FILE_SNIPPET: false
97+
```
98+
99+
Example:
100+
101+
```yaml
102+
# YAML: Set the AZURE_USE_PARAMETER_FILE_SNIPPET configuration option to enable expansion
103+
configuration:
104+
AZURE_USE_PARAMETER_FILE_SNIPPET: true
105+
```
106+
107+
### Command line snippet
108+
109+
:octicons-milestone-24: v0.2.0
110+
111+
This configuration option determines if a command line snippet is added to documentation.
112+
By default, this command line snippet is not generated.
113+
To generate command line snippet, set this option to `true`.
114+
115+
Syntax:
116+
117+
```yaml
118+
configuration:
119+
AZURE_USE_COMMAND_LINE_SNIPPET: bool # Either true or false
120+
```
121+
122+
Default:
123+
124+
```yaml
125+
# YAML: The default AZURE_USE_COMMAND_LINE_SNIPPET configuration option is to disable generation
126+
configuration:
127+
AZURE_USE_COMMAND_LINE_SNIPPET: false
128+
```
129+
130+
Example:
131+
132+
```yaml
133+
# YAML: To enable command line snippet
134+
configuration:
135+
AZURE_USE_COMMAND_LINE_SNIPPET: true
136+
```

mkdocs.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,9 @@ nav:
4848
- Releases:
4949
- Change log: https://github.com/Azure/PSDocs.Azure/blob/main/CHANGELOG.md
5050
- Support: support.md
51-
# - Setup:
52-
# - Configuring options: setup/configuring-options.md
53-
# - Configuring rule defaults: setup/configuring-rules.md
51+
- Setup:
52+
- Configuring options: setup/configuring-options.md
53+
- Configuring snippets: setup/configuring-snippets.md
5454
# - Configuring expansion: setup/configuring-expansion.md
5555

5656
# - Configuration options: concepts/about_PSRule_Azure_Configuration.md

0 commit comments

Comments
 (0)