Skip to content

Commit a3f6de8

Browse files
sangs-msftisra-fel
andauthored
Azure DNS Resolver Outbound resources for Private Preview (#15448)
* made some changes * made some changes * made some changes * made some changes * made some changes * made some changes * made some changes * made some changes * made some changes * made some changes * reverting inbound changes * made some changes * resolving comments * made some changes * PR comments addressed - reverting any inbound changes * revered DnsResolver Get changes * revered readme * Reverted all Inbound scenarios * revered update inbound * Reverted * Update GeneratedModuleList.txt try to fix CI error * updated readme and added spec file to PS repo * Unskip DnsResolver for CI * add common types spec * ensured swagger diff is resolved * fix casing in readme * resolved help link issue * suppress signature issues Co-authored-by: Yeming Liu <[email protected]> Co-authored-by: Yeming Liu <[email protected]>
1 parent ed61d76 commit a3f6de8

File tree

76 files changed

+8472
-136
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+8472
-136
lines changed

src/DnsResolver/Az.DnsResolver.psd1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@
99
Description = 'Microsoft Azure PowerShell: DnsResolver cmdlets'
1010
PowerShellVersion = '5.1'
1111
DotNetFrameworkVersion = '4.7.2'
12-
RequiredAssemblies = './bin/DnsResolver.private.dll'
12+
RequiredAssemblies = './bin/Az.DnsResolver.private.dll'
1313
FormatsToProcess = './Az.DnsResolver.format.ps1xml'
14-
FunctionsToExport = 'Get-AzDnsResolver', 'Get-AzDnsResolverInboundEndpoint', 'New-AzDnsResolver', 'New-AzDnsResolverInboundEndpoint', 'New-AzDnsResolverIPConfigurationObject', 'Remove-AzDnsResolver', 'Remove-AzDnsResolverInboundEndpoint', 'Update-AzDnsResolver', 'Update-AzDnsResolverInboundEndpoint', '*'
14+
FunctionsToExport = 'Get-AzDnsResolver', 'Get-AzDnsResolverDnsForwardingRuleset', 'Get-AzDnsResolverForwardingRule', 'Get-AzDnsResolverInboundEndpoint', 'Get-AzDnsResolverOutboundEndpoint', 'Get-AzDnsResolverVirtualNetworkLink', 'New-AzDnsResolver', 'New-AzDnsResolverDnsForwardingRuleset', 'New-AzDnsResolverForwardingRule', 'New-AzDnsResolverInboundEndpoint', 'New-AzDnsResolverIPConfigurationObject', 'New-AzDnsResolverOutboundEndpoint', 'New-AzDnsResolverTargetDnsServerObject', 'New-AzDnsResolverVirtualNetworkLink', 'Remove-AzDnsResolver', 'Remove-AzDnsResolverDnsForwardingRuleset', 'Remove-AzDnsResolverForwardingRule', 'Remove-AzDnsResolverInboundEndpoint', 'Remove-AzDnsResolverOutboundEndpoint', 'Remove-AzDnsResolverVirtualNetworkLink', 'Update-AzDnsResolver', 'Update-AzDnsResolverDnsForwardingRuleset', 'Update-AzDnsResolverForwardingRule', 'Update-AzDnsResolverInboundEndpoint', 'Update-AzDnsResolverOutboundEndpoint', 'Update-AzDnsResolverVirtualNetworkLink', '*'
1515
AliasesToExport = '*'
1616
PrivateData = @{
1717
PSData = @{

src/DnsResolver/custom/New-AzDnsResolverIPConfigurationObject.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Create a in-memory object for IPConfiguration
2222
.Outputs
2323
Microsoft.Azure.PowerShell.Cmdlets.DnsResolver.Models.Api20200401Preview.IPConfiguration
2424
.Link
25-
https://docs.microsoft.com/en-us/powershell/module/az.DnsResolver/new-AzDnsResolverIPConfigurationObject
25+
https://docs.microsoft.com/powershell/module/az.dnsresolver/new-azdnsresolveripconfigurationobject
2626
#>
2727
function New-AzDnsResolverIPConfigurationObject {
2828
[OutputType('Microsoft.Azure.PowerShell.Cmdlets.DnsResolver.Models.Api20200401Preview.IPConfiguration')]
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
2+
# ----------------------------------------------------------------------------------
3+
#
4+
# Copyright Microsoft Corporation
5+
# Licensed under the Apache License, Version 2.0 (the \"License\");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an \"AS IS\" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
# ----------------------------------------------------------------------------------
15+
16+
<#
17+
.Synopsis
18+
Create a in-memory object for Target DNS server
19+
.Description
20+
Create a in-memory object for Target DNS server
21+
22+
.Outputs
23+
Microsoft.Azure.PowerShell.Cmdlets.DnsResolver.Models.Api20200401Preview.TargetDnsServer
24+
.Link
25+
https://docs.microsoft.com/powershell/module/az.dnsresolver/new-azdnsresolvertargetdnsserverobject
26+
#>
27+
function New-AzDnsResolverTargetDnsServerObject {
28+
[OutputType('Microsoft.Azure.PowerShell.Cmdlets.DnsResolver.Models.Api20200401Preview.TargetDnsServer')]
29+
[CmdletBinding(PositionalBinding=$false)]
30+
Param(
31+
32+
[Parameter(HelpMessage="DNS server IP address.")]
33+
[string]
34+
$IPAddress,
35+
[Parameter(HelpMessage="DNS server port.")]
36+
[int]
37+
$Port
38+
)
39+
40+
process {
41+
$Object = [Microsoft.Azure.PowerShell.Cmdlets.DnsResolver.Models.Api20200401Preview.TargetDnsServer]::New()
42+
43+
$Object.IPAddress = $IPAddress
44+
$Object.Port = $Port
45+
return $Object
46+
}
47+
}
48+

src/DnsResolver/custom/readme.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This directory contains custom implementation for non-generated cmdlets for the
1010
## Details
1111
For `Az.DnsResolver` to use custom cmdlets, it does this two different ways. We **highly recommend** creating script cmdlets, as they are easier to write and allow access to the other exported cmdlets. C# cmdlets *cannot access exported cmdlets*.
1212

13-
For C# cmdlets, they are compiled with the rest of the generated low-level cmdlets into the `./bin/DnsResolver.private.dll`. The names of the cmdlets (methods) and files must follow the `[cmdletName]_[variantName]` syntax used for generated cmdlets. The `variantName` is used as the `ParameterSetName`, so use something appropriate that doesn't clash with already created variant or parameter set names. You cannot use the `ParameterSetName` property in the `Parameter` attribute on C# cmdlets. Each cmdlet must be separated into variants using the same pattern as seen in the `generated/cmdlets` folder.
13+
For C# cmdlets, they are compiled with the rest of the generated low-level cmdlets into the `./bin/Az.DnsResolver.private.dll`. The names of the cmdlets (methods) and files must follow the `[cmdletName]_[variantName]` syntax used for generated cmdlets. The `variantName` is used as the `ParameterSetName`, so use something appropriate that doesn't clash with already created variant or parameter set names. You cannot use the `ParameterSetName` property in the `Parameter` attribute on C# cmdlets. Each cmdlet must be separated into variants using the same pattern as seen in the `generated/cmdlets` folder.
1414

1515
For script cmdlets, these are loaded via the `Az.DnsResolver.custom.psm1`. Then, during the build process, this module is loaded and processed in the same manner as the C# cmdlets. The fundemental difference is the script cmdlets use the `ParameterSetName` attribute and C# cmdlets do not. To create a script cmdlet variant of a generated cmdlet, simply decorate all parameters in the script with the new `ParameterSetName` in the `Parameter` attribute. This will appropriately treat each parameter set as a separate variant when processed to be exported during the build.
1616

src/DnsResolver/docs/Az.DnsResolver.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,85 @@ Microsoft Azure PowerShell: DnsResolver cmdlets
1414
### [Get-AzDnsResolver](Get-AzDnsResolver.md)
1515
Gets properties of a DNS resolver.
1616

17+
### [Get-AzDnsResolverDnsForwardingRuleset](Get-AzDnsResolverDnsForwardingRuleset.md)
18+
Gets a DNS forwarding ruleset properties.
19+
20+
### [Get-AzDnsResolverForwardingRule](Get-AzDnsResolverForwardingRule.md)
21+
Gets properties of a forwarding rule in a DNS forwarding ruleset.
22+
1723
### [Get-AzDnsResolverInboundEndpoint](Get-AzDnsResolverInboundEndpoint.md)
1824
Gets properties of an inbound endpoint for a DNS resolver.
1925

26+
### [Get-AzDnsResolverOutboundEndpoint](Get-AzDnsResolverOutboundEndpoint.md)
27+
Gets properties of an outbound endpoint for a DNS resolver.
28+
29+
### [Get-AzDnsResolverVirtualNetworkLink](Get-AzDnsResolverVirtualNetworkLink.md)
30+
Gets properties of a virtual network link to a DNS forwarding ruleset.
31+
2032
### [New-AzDnsResolver](New-AzDnsResolver.md)
2133
Creates or updates a DNS resolver.
2234

35+
### [New-AzDnsResolverDnsForwardingRuleset](New-AzDnsResolverDnsForwardingRuleset.md)
36+
Creates or updates a DNS forwarding ruleset.
37+
38+
### [New-AzDnsResolverForwardingRule](New-AzDnsResolverForwardingRule.md)
39+
Creates or updates a forwarding rule in a DNS forwarding ruleset.
40+
2341
### [New-AzDnsResolverInboundEndpoint](New-AzDnsResolverInboundEndpoint.md)
2442
Creates or updates an inbound endpoint for a DNS resolver.
2543

2644
### [New-AzDnsResolverIPConfigurationObject](New-AzDnsResolverIPConfigurationObject.md)
2745
Create a in-memory object for IPConfiguration
2846

47+
### [New-AzDnsResolverOutboundEndpoint](New-AzDnsResolverOutboundEndpoint.md)
48+
Creates or updates an outbound endpoint for a DNS resolver.
49+
50+
### [New-AzDnsResolverTargetDnsServerObject](New-AzDnsResolverTargetDnsServerObject.md)
51+
Create a in-memory object for Target DNS server
52+
53+
### [New-AzDnsResolverVirtualNetworkLink](New-AzDnsResolverVirtualNetworkLink.md)
54+
Creates or updates a virtual network link to a DNS forwarding ruleset.
55+
2956
### [Remove-AzDnsResolver](Remove-AzDnsResolver.md)
3057
Deletes a DNS resolver.
3158
WARNING: This operation cannot be undone.
3259

60+
### [Remove-AzDnsResolverDnsForwardingRuleset](Remove-AzDnsResolverDnsForwardingRuleset.md)
61+
Deletes a DNS forwarding ruleset.
62+
WARNING: This operation cannot be undone.
63+
All forwarding rules within the ruleset will be deleted.
64+
65+
### [Remove-AzDnsResolverForwardingRule](Remove-AzDnsResolverForwardingRule.md)
66+
Deletes a forwarding rule in a DNS forwarding ruleset.
67+
WARNING: This operation cannot be undone.
68+
3369
### [Remove-AzDnsResolverInboundEndpoint](Remove-AzDnsResolverInboundEndpoint.md)
3470
Deletes an inbound endpoint for a DNS resolver.
3571
WARNING: This operation cannot be undone.
3672

73+
### [Remove-AzDnsResolverOutboundEndpoint](Remove-AzDnsResolverOutboundEndpoint.md)
74+
Deletes an outbound endpoint for a DNS resolver.
75+
WARNING: This operation cannot be undone.
76+
77+
### [Remove-AzDnsResolverVirtualNetworkLink](Remove-AzDnsResolverVirtualNetworkLink.md)
78+
Deletes a virtual network link to a DNS forwarding ruleset.
79+
WARNING: This operation cannot be undone.
80+
3781
### [Update-AzDnsResolver](Update-AzDnsResolver.md)
3882
Updates a DNS resolver.
3983

84+
### [Update-AzDnsResolverDnsForwardingRuleset](Update-AzDnsResolverDnsForwardingRuleset.md)
85+
Updates a DNS forwarding ruleset.
86+
87+
### [Update-AzDnsResolverForwardingRule](Update-AzDnsResolverForwardingRule.md)
88+
Updates a forwarding rule in a DNS forwarding ruleset.
89+
4090
### [Update-AzDnsResolverInboundEndpoint](Update-AzDnsResolverInboundEndpoint.md)
4191
Updates an inbound endpoint for a DNS resolver.
4292

93+
### [Update-AzDnsResolverOutboundEndpoint](Update-AzDnsResolverOutboundEndpoint.md)
94+
Updates an outbound endpoint for a DNS resolver.
95+
96+
### [Update-AzDnsResolverVirtualNetworkLink](Update-AzDnsResolverVirtualNetworkLink.md)
97+
Updates a virtual network link to a DNS forwarding ruleset.
98+

src/DnsResolver/docs/Get-AzDnsResolver.md

Lines changed: 7 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,6 @@ Get-AzDnsResolver -ResourceGroupName <String> [-SubscriptionId <String[]>] [-Top
3535
[-DefaultProfile <PSObject>] [<CommonParameters>]
3636
```
3737

38-
### List2
39-
```
40-
Get-AzDnsResolver -ResourceGroupName <String> -VirtualNetworkName <String> [-SubscriptionId <String[]>]
41-
[-Top <Int32>] [-DefaultProfile <PSObject>] [<CommonParameters>]
42-
```
43-
4438
## DESCRIPTION
4539
Gets properties of a DNS resolver.
4640

@@ -146,7 +140,7 @@ The name is case insensitive.
146140
147141
```yaml
148142
Type: System.String
149-
Parameter Sets: Get, List, List2
143+
Parameter Sets: Get, List
150144
Aliases:
151145

152146
Required: True
@@ -161,7 +155,7 @@ The ID of the target subscription.
161155
162156
```yaml
163157
Type: System.String[]
164-
Parameter Sets: Get, List, List1, List2
158+
Parameter Sets: Get, List, List1
165159
Aliases:
166160

167161
Required: False
@@ -177,7 +171,7 @@ If not specified, returns up to 100 results.
177171
178172
```yaml
179173
Type: System.Int32
180-
Parameter Sets: List, List1, List2
174+
Parameter Sets: List, List1
181175
Aliases:
182176

183177
Required: False
@@ -187,21 +181,6 @@ Accept pipeline input: False
187181
Accept wildcard characters: False
188182
```
189183
190-
### -VirtualNetworkName
191-
The name of the virtual network.
192-
193-
```yaml
194-
Type: System.String
195-
Parameter Sets: List2
196-
Aliases:
197-
198-
Required: True
199-
Position: Named
200-
Default value: None
201-
Accept pipeline input: False
202-
Accept wildcard characters: False
203-
```
204-
205184
### CommonParameters
206185
This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216).
207186
@@ -223,12 +202,15 @@ To create the parameters described below, construct a hash table containing the
223202
224203
225204
INPUTOBJECT <IDnsResolverIdentity>: Identity Parameter
205+
- `[DnsForwardingRulesetName <String>]`: The name of the DNS forwarding ruleset.
226206
- `[DnsResolverName <String>]`: The name of the DNS resolver.
207+
- `[ForwardingRuleName <String>]`: The name of the forwarding rule.
227208
- `[Id <String>]`: Resource identity path
228209
- `[InboundEndpointName <String>]`: The name of the inbound endpoint for the DNS resolver.
210+
- `[OutboundEndpointName <String>]`: The name of the outbound endpoint for the DNS resolver.
229211
- `[ResourceGroupName <String>]`: The name of the resource group. The name is case insensitive.
230212
- `[SubscriptionId <String>]`: The ID of the target subscription.
231-
- `[VirtualNetworkName <String>]`: The name of the virtual network.
213+
- `[VirtualNetworkLinkName <String>]`: The name of the virtual network link.
232214

233215
## RELATED LINKS
234216

0 commit comments

Comments
 (0)