Skip to content
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

[Utility] Created REST-2-CARML module that allows users to generate most of a module's code for them #2130

Draft
wants to merge 142 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
142 commits
Select commit Hold shift + click to select a range
95c7112
Added dummy REST Fetch script
AlexanderSehr Sep 19, 2022
4dc71b3
Update to latest
AlexanderSehr Sep 19, 2022
ff53765
Update to latest
AlexanderSehr Sep 19, 2022
fb2c770
Added PGtypes function
AlexanderSehr Sep 19, 2022
2a3f5ab
Get-ModuleDataRestApiSpecs intial file skeleton
krbar Sep 19, 2022
edd5b22
created new file for adding module structure
prteotia Sep 19, 2022
f21b22a
Update to latest
AlexanderSehr Sep 19, 2022
77f7807
Removed repo
AlexanderSehr Sep 19, 2022
178c66f
Getting all resource paths with a put method
krbar Sep 19, 2022
bc343f3
Cleaning output
krbar Sep 19, 2022
7bd15e7
Extended folder & file creation structure (#2069)
AlexanderSehr Sep 20, 2022
0365c62
Added RoleDef template
AlexanderSehr Sep 20, 2022
962dc8e
Update Get-ModuleDataRestApiSpecs.ps1
georgedobrin Sep 20, 2022
e38bada
Added diagnostic settings fetch + added template generation script
AlexanderSehr Sep 20, 2022
13d2721
Cleanup
AlexanderSehr Sep 20, 2022
b2788ec
Get-ModuleDataSource function
krbar Sep 20, 2022
a120d85
Merge branch 'users/hack-REST2CARML' of https://github.com/Azure/Reso…
krbar Sep 20, 2022
7997301
adding some temporary debug code (will be removed later)
krbar Sep 20, 2022
839785d
some debug output, example call modfied
krbar Sep 20, 2022
4560af2
Update to latest
AlexanderSehr Sep 21, 2022
12a11d1
Update Get-ModuleDataRestApiSpecs.ps1
georgedobrin Sep 21, 2022
8fb58bc
Update Get-ModuleDataRestApiSpecs.ps1
georgedobrin Sep 21, 2022
9186686
Updated scripts
AlexanderSehr Sep 21, 2022
34a5003
Allowing more than one result per resource type
krbar Sep 21, 2022
88bdd39
Data mock
AlexanderSehr Sep 21, 2022
f244d58
Data mock
AlexanderSehr Sep 21, 2022
5827f65
Data mock
AlexanderSehr Sep 21, 2022
8f80477
Added file Get-ModuleLockDetail
prteotia Sep 21, 2022
c264c14
Renaming Set-ModuleTemplate to Set-Module
krbar Sep 21, 2022
fc0b578
Merge branch 'users/hack-REST2CARML' of https://github.com/Azure/Reso…
krbar Sep 21, 2022
42b31c5
Update Get-ModuleLockDetail.ps1
prteotia Sep 21, 2022
2f8b57b
Set-ModuleTemplate initial empty file
krbar Sep 21, 2022
8688cbf
Merge branch 'users/hack-REST2CARML' of https://github.com/Azure/Reso…
krbar Sep 21, 2022
65c1d26
Update Get-ModuleLockDetail.ps1
prteotia Sep 21, 2022
4051bdd
Merge branch 'users/hack-REST2CARML' of https://github.com/Azure/Reso…
krbar Sep 21, 2022
aaf941a
Added Get-RoleDefinitionList.ps1
shrivastavarashmi Sep 21, 2022
e0761a4
Updated comments for Get-RoleAssignmentList.ps1
shrivastavarashmi Sep 21, 2022
2c61cd6
Updated parameter fetch function
AlexanderSehr Sep 21, 2022
d2e6294
Added docs
AlexanderSehr Sep 21, 2022
2d33e88
Update Get-ModuleLockDetail.ps1
prteotia Sep 21, 2022
12742e6
Set-ModuleTemplate - first draft params section
krbar Sep 21, 2022
76afdcd
Minor updates to bring all extension fetch elements together
AlexanderSehr Sep 22, 2022
bf4da4a
Added min/max support
AlexanderSehr Sep 22, 2022
e5aa7c9
Cleanup
AlexanderSehr Sep 22, 2022
4a70124
Generating deployment resource section - first draft
krbar Sep 22, 2022
e7ebf7f
Merge branch 'users/hack-REST2CARML' of https://github.com/Azure/Reso…
krbar Sep 22, 2022
c8df1a2
Update to latest
AlexanderSehr Sep 22, 2022
5588883
Get-ServiceSpecPathData commenting out debug lines
krbar Sep 22, 2022
ef9f12f
Fixed some bicep-related issues
krbar Sep 22, 2022
6c3ec6c
Ignore ReadOnly
AlexanderSehr Sep 22, 2022
e9509e4
Added git clone to entry func
AlexanderSehr Sep 22, 2022
c38898c
Added git clone to entry func
AlexanderSehr Sep 22, 2022
117f9d8
Searching logic improved
krbar Sep 22, 2022
121e950
Added Output Section for deploy.bicep
shrivastavarashmi Sep 22, 2022
036b6f9
Update to latest
AlexanderSehr Sep 22, 2022
020b9cc
Update to latest
AlexanderSehr Sep 22, 2022
f9b82cd
Update to latest
AlexanderSehr Sep 22, 2022
81f923a
Finding child resources - first draft
krbar Sep 23, 2022
4eefeeb
Vastly improved parameter fetch (now considering patch too & be more …
AlexanderSehr Sep 23, 2022
0027844
Small refactoring
AlexanderSehr Sep 23, 2022
84c023c
Get-ServiceSpecPathData call updated
krbar Sep 23, 2022
af27dcb
Merge branch 'users/hack-REST2CARML' of https://github.com/Azure/Reso…
krbar Sep 23, 2022
4ca4aa7
Small refactoring
AlexanderSehr Sep 23, 2022
d4c8258
Refectored extension resources application
AlexanderSehr Sep 23, 2022
6cb86b1
Fixed typo
AlexanderSehr Sep 23, 2022
afb6277
Fixed typo
AlexanderSehr Sep 23, 2022
d9f3758
Improved performance
AlexanderSehr Sep 23, 2022
8f18644
Fixed typo
AlexanderSehr Sep 23, 2022
6025758
Update to latest
AlexanderSehr Sep 23, 2022
1ab5c97
Fixed typo
AlexanderSehr Sep 23, 2022
9b30173
Minor update
AlexanderSehr Sep 23, 2022
a0214a4
Fixed input
AlexanderSehr Sep 23, 2022
9e4bfdf
Minor updates
AlexanderSehr Sep 23, 2022
9d9309b
Further updates to parameters & variables
AlexanderSehr Sep 23, 2022
8c1f76a
Finished draft of Set-ModuleTemplate + numerous other improvements
AlexanderSehr Sep 23, 2022
5c2f431
Refactored REST2CARML to PS-Module
AlexanderSehr Sep 23, 2022
e01eef6
Added documentation
AlexanderSehr Sep 23, 2022
c1fdf75
Added documentation
AlexanderSehr Sep 23, 2022
ba2db7e
Added documentation
AlexanderSehr Sep 23, 2022
7758852
Added documentation
AlexanderSehr Sep 23, 2022
708f4d1
Update to latest
AlexanderSehr Sep 23, 2022
67f44ef
Update to latest
AlexanderSehr Sep 25, 2022
ee36c25
Added docs
AlexanderSehr Sep 25, 2022
5081526
Updated role assignment func
AlexanderSehr Sep 30, 2022
1a3539c
Small update to custom roles utilty
AlexanderSehr Oct 1, 2022
efd6113
Merge branch 'main' into users/hack-REST2CARML
AlexanderSehr Oct 1, 2022
729ad32
[Utilities] Enabled API Specs Child-Resource fetch (#2248)
AlexanderSehr Oct 23, 2022
8730cbd
Applied several smaller fixes
AlexanderSehr Oct 23, 2022
5efbdf2
Updated to latest api version
AlexanderSehr Oct 25, 2022
c002a38
Additional updates
AlexanderSehr Oct 25, 2022
d09e574
Small fixes
AlexanderSehr Oct 26, 2022
5d44fa8
Enabled first draft of child-modules
AlexanderSehr Oct 27, 2022
eb29e05
Enabled first draft of child-modules
AlexanderSehr Oct 27, 2022
bd202bf
Update to latest
AlexanderSehr Oct 27, 2022
2f643a6
Several fixes
AlexanderSehr Oct 27, 2022
8624670
Fixed child resource ref
AlexanderSehr Oct 27, 2022
540cf78
Update to latest
AlexanderSehr Oct 27, 2022
6a4c3db
Update to latest
AlexanderSehr Oct 27, 2022
99c87b1
Update to latest
AlexanderSehr Oct 27, 2022
6585763
Update to latest
AlexanderSehr Oct 27, 2022
3468b6d
Update to latest
AlexanderSehr Oct 27, 2022
6a13ee1
Latest draft
AlexanderSehr Oct 28, 2022
a5fda87
Update to latest
AlexanderSehr Oct 28, 2022
d7cba51
Small fix
AlexanderSehr Oct 28, 2022
767040c
Further updates & fixes
AlexanderSehr Oct 28, 2022
13aefc1
Cleanup
AlexanderSehr Oct 28, 2022
a6c7da8
Further updates for parent/child relation
AlexanderSehr Oct 28, 2022
28b201e
Update to latest
AlexanderSehr Oct 28, 2022
6cb7080
Update to latest
AlexanderSehr Oct 28, 2022
9b5f20c
Latest update
AlexanderSehr Oct 29, 2022
27751ef
Update to latest
AlexanderSehr Oct 29, 2022
1dad3af
Additional fixes
AlexanderSehr Oct 29, 2022
9080dea
Added latest todos & updated AVS
AlexanderSehr Oct 29, 2022
e1a0a8a
Latest draft
AlexanderSehr Oct 29, 2022
f26e3ec
Update to latest
AlexanderSehr Oct 29, 2022
0b6319a
Added sorting and the like
AlexanderSehr Oct 29, 2022
4d8ac3c
Further refined paramters declaration & sorting
AlexanderSehr Oct 29, 2022
5db2ffd
[Utilities] Added extraction function to get template content to enab…
AlexanderSehr Oct 30, 2022
47c8308
Users/hack rest2 carml idemp enable (#2257)
AlexanderSehr Oct 31, 2022
37359eb
Users/hack rest2 carml idemp enable (#2285)
AlexanderSehr Nov 6, 2022
c5a59fa
Update to latest
AlexanderSehr Nov 8, 2022
bb8256f
[Utilities] Update REST2CARML to leverage AzureAPICrawler module (#2356)
AlexanderSehr Nov 23, 2022
a307030
Merge branch 'main' of https://github.com/Azure/ResourceModules into …
Dec 23, 2022
43fbbe9
Update of pipeline/workflow yml templates
krbar Dec 23, 2022
291fd46
minor fixes: test file names, roles formatting
krbar Dec 23, 2022
9c18010
Merge branch 'main' of https://github.com/Azure/ResourceModules into …
krbar Dec 29, 2022
938f2b3
Push updated API Specs file
Dec 29, 2022
d01fbc3
Update of pipeline/workflow yml templates
krbar Dec 29, 2022
059e83c
Set-ModuleReadMe: handling empty test files
krbar Dec 29, 2022
a5107f4
Fixing double defaultTelemetry issue
krbar Dec 30, 2022
f4b0360
making resource's properties parameter conditional
krbar Dec 30, 2022
937ec02
Fixing missing and wrong location output
krbar Dec 30, 2022
b1e31fa
Fixing last line diffs in additional files on create and update
krbar Dec 30, 2022
cdab7ff
Fixing Get-TargetScope
krbar Dec 30, 2022
13bc300
Fixing double child parameter issue
krbar Dec 30, 2022
aaa906d
Merge branch 'main' of https://github.com/Azure/ResourceModules into …
krbar Dec 30, 2022
e8e8868
Push updated API Specs file
Dec 30, 2022
45b1e92
Merge branch 'main' of https://github.com/Azure/ResourceModules into …
krbar Aug 29, 2023
7970d03
Set-ModuleReadme - updated to latest
krbar Aug 29, 2023
7fb1122
apiSpecList - updated to latest
krbar Aug 29, 2023
a75fa68
Set-ModuleReadMe: handling empty test files (repeating after main merge)
krbar Aug 29, 2023
847a40a
Merge branch 'main' of https://github.com/Azure/ResourceModules into …
krbar Sep 5, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .azuredevops/modulePipelines/ms.avs.privateclouds.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: 'AVS - PrivateClouds'

parameters:
- name: removeDeployment
displayName: Remove deployed module
type: boolean
default: true
- name: prerelease
displayName: Publish prerelease module
type: boolean
default: false

pr: none

trigger:
batch: true
branches:
include:
- main
paths:
include:
- '/.azuredevops/modulePipelines/ms.avs.privateclouds.yml'
- '/.azuredevops/pipelineTemplates/*.yml'
- '/modules/Microsoft.AVS/privateClouds/*'
- '/utilities/pipelines/*'
exclude:
- '/utilities/pipelines/dependencies/*'
- '/**/*.md'

variables:
- template: '../../settings.yml'
- group: 'PLATFORM_VARIABLES'
- name: modulePath
value: '/modules/Microsoft.AVS/privateClouds'

stages:
- template: /.azuredevops/pipelineTemplates/stages.module.yml
parameters:
removeDeployment: '${{ parameters.removeDeployment }}'
prerelease: '${{ parameters.prerelease }}'
145 changes: 145 additions & 0 deletions .github/workflows/ms.avs.privateclouds.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
name: 'AVS: PrivateClouds'

on:
workflow_dispatch:
inputs:
removeDeployment:
type: boolean
description: 'Remove deployed module'
required: false
default: true
prerelease:
type: boolean
description: 'Publish prerelease module'
required: false
default: false
push:
branches:
- main
paths:
- '.github/actions/templates/**'
- '.github/workflows/ms.avs.privateclouds.yml'
- 'modules/Microsoft.AVS/privateClouds/**'
- 'utilities/pipelines/**'
- '!utilities/pipelines/dependencies/**'
- '!*/**/readme.md'

env:
variablesPath: 'settings.yml'
modulePath: 'modules/Microsoft.AVS/privateClouds'
workflowPath: '.github/workflows/ms.avs.privateclouds.yml'
AZURE_CREDENTIALS: ${{ secrets.AZURE_CREDENTIALS }}
ARM_SUBSCRIPTION_ID: '${{ secrets.ARM_SUBSCRIPTION_ID }}'
ARM_MGMTGROUP_ID: '${{ secrets.ARM_MGMTGROUP_ID }}'
ARM_TENANT_ID: '${{ secrets.ARM_TENANT_ID }}'
TOKEN_NAMEPREFIX: '${{ secrets.TOKEN_NAMEPREFIX }}'

jobs:
###########################
# Initialize pipeline #
###########################
job_initialize_pipeline:
runs-on: ubuntu-20.04
name: 'Initialize pipeline'
steps:
- name: 'Checkout'
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: 'Set input parameters to output variables'
id: get-workflow-param
uses: ./.github/actions/templates/getWorkflowInput
with:
workflowPath: '${{ env.workflowPath}}'
- name: 'Get parameter file paths'
id: get-module-test-file-paths
uses: ./.github/actions/templates/getModuleTestFiles
with:
modulePath: '${{ env.modulePath }}'
outputs:
removeDeployment: ${{ steps.get-workflow-param.outputs.removeDeployment }}
moduleTestFilePaths: ${{ steps.get-module-test-file-paths.outputs.moduleTestFilePaths }}

#########################
# Static validation #
#########################
job_module_pester_validation:
runs-on: ubuntu-20.04
name: 'Static validation'
steps:
- name: 'Checkout'
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set environment variables
uses: ./.github/actions/templates/setEnvironmentVariables
with:
variablesPath: ${{ env.variablesPath }}
- name: 'Run tests'
uses: ./.github/actions/templates/validateModulePester
with:
modulePath: '${{ env.modulePath }}'
moduleTestFilePath: '${{ env.moduleTestFilePath }}'

#############################
# Deployment validation #
#############################
job_module_deploy_validation:
runs-on: ubuntu-20.04
name: 'Deployment validation'
needs:
- job_initialize_pipeline
- job_module_pester_validation
strategy:
fail-fast: false
matrix:
moduleTestFilePaths: ${{ fromJSON(needs.job_initialize_pipeline.outputs.moduleTestFilePaths) }}
steps:
- name: 'Checkout'
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set environment variables
uses: ./.github/actions/templates/setEnvironmentVariables
with:
variablesPath: ${{ env.variablesPath }}
- name: 'Using test file [${{ matrix.moduleTestFilePaths }}]'
uses: ./.github/actions/templates/validateModuleDeployment
with:
templateFilePath: '${{ env.modulePath }}/${{ matrix.moduleTestFilePaths }}'
location: '${{ env.location }}'
resourceGroupName: '${{ env.resourceGroupName }}'
subscriptionId: '${{ secrets.ARM_SUBSCRIPTION_ID }}'
managementGroupId: '${{ secrets.ARM_MGMTGROUP_ID }}'
removeDeployment: '${{ needs.job_initialize_pipeline.outputs.removeDeployment }}'

##################
# Publishing #
##################
job_publish_module:
name: 'Publishing'
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/master' || github.event.inputs.prerelease == 'true'
runs-on: ubuntu-20.04
needs:
- job_module_deploy_validation
steps:
- name: 'Checkout'
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Set environment variables
uses: ./.github/actions/templates/setEnvironmentVariables
with:
variablesPath: ${{ env.variablesPath }}
- name: 'Publishing'
uses: ./.github/actions/templates/publishModule
with:
templateFilePath: '${{ env.modulePath }}/deploy.bicep'
templateSpecsRGName: '${{ env.templateSpecsRGName }}'
templateSpecsRGLocation: '${{ env.templateSpecsRGLocation }}'
templateSpecsDescription: '${{ env.templateSpecsDescription }}'
templateSpecsDoPublish: '${{ env.templateSpecsDoPublish }}'
bicepRegistryName: '${{ env.bicepRegistryName }}'
bicepRegistryRGName: '${{ env.bicepRegistryRGName }}'
bicepRegistryRgLocation: '${{ env.bicepRegistryRgLocation }}'
bicepRegistryDoPublish: '${{ env.bicepRegistryDoPublish }}'
Empty file.
Empty file.
62 changes: 62 additions & 0 deletions modules/Microsoft.AVS/privateClouds/addons/deploy.bicep
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
// ============== //
// Parameters //
// ============== //

@description('Required. Name of the addon for the private cloud')
param name string

@description('Conditional. The name of the parent privateClouds. Required if the template is used in a standalone deployment.')
param privateCloudName string

@description('Optional. The type of private cloud addon')
@allowed([
'SRM'
'VR'
'HCX'
'Arc'
])
param addonType string = ''

@description('Optional. Enable telemetry via the Customer Usage Attribution ID (GUID).')
param enableDefaultTelemetry bool = true

// =============== //
// Deployments //
// =============== //

resource defaultTelemetry 'Microsoft.Resources/deployments@2021-04-01' = if (enableDefaultTelemetry) {
name: 'pid-47ed15a6-730a-4827-bcb4-0fd963ffbd82-${uniqueString(deployment().name)}'
properties: {
mode: 'Incremental'
template: {
'$schema': 'https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#'
contentVersion: '1.0.0.0'
resources: []
}
}
}

resource privateCloud 'Microsoft.AVS/privateClouds@2022-05-01' existing = {
name: privateCloudName
}

resource addon 'Microsoft.AVS/privateClouds/addons@2022-05-01' = {
parent: privateCloud
name: name
properties: {
addonType: addonType
}
}

// =========== //
// Outputs //
// =========== //

@description('The name of the addon.')
output name string = addon.name

@description('The resource ID of the addon.')
output resourceId string = addon.id

@description('The name of the resource group the addon was created in.')
output resourceGroupName string = resourceGroup().name
4 changes: 4 additions & 0 deletions modules/Microsoft.AVS/privateClouds/addons/version.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json",
"version": "0.1"
}
52 changes: 52 additions & 0 deletions modules/Microsoft.AVS/privateClouds/authorizations/deploy.bicep
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
// ============== //
// Parameters //
// ============== //

@description('Required. Name of the ExpressRoute Circuit Authorization in the private cloud')
param name string

@description('Conditional. The name of the parent privateClouds. Required if the template is used in a standalone deployment.')
param privateCloudName string

@description('Optional. Enable telemetry via the Customer Usage Attribution ID (GUID).')
param enableDefaultTelemetry bool = true

// =============== //
// Deployments //
// =============== //

resource defaultTelemetry 'Microsoft.Resources/deployments@2021-04-01' = if (enableDefaultTelemetry) {
name: 'pid-47ed15a6-730a-4827-bcb4-0fd963ffbd82-${uniqueString(deployment().name)}'
properties: {
mode: 'Incremental'
template: {
'$schema': 'https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#'
contentVersion: '1.0.0.0'
resources: []
}
}
}

resource privateCloud 'Microsoft.AVS/privateClouds@2022-05-01' existing = {
name: privateCloudName
}

resource authorization 'Microsoft.AVS/privateClouds/authorizations@2022-05-01' = {
parent: privateCloud
name: name
properties: {
}
}

// =========== //
// Outputs //
// =========== //

@description('The name of the authorization.')
output name string = authorization.name

@description('The resource ID of the authorization.')
output resourceId string = authorization.id

@description('The name of the resource group the authorization was created in.')
output resourceGroupName string = resourceGroup().name
54 changes: 54 additions & 0 deletions modules/Microsoft.AVS/privateClouds/authorizations/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# AVS PrivateClouds Authorizations `[Microsoft.AVS/privateClouds/authorizations]`

This module deploys AVS PrivateClouds Authorizations.
// TODO: Replace Resource and fill in description

## Navigation

- [Resource Types](#Resource-Types)
- [Parameters](#Parameters)
- [Outputs](#Outputs)
- [Cross-referenced modules](#Cross-referenced-modules)

## Resource Types

| Resource Type | API Version |
| :-- | :-- |
| `Microsoft.AVS/privateClouds/authorizations` | [2022-05-01](https://docs.microsoft.com/en-us/azure/templates/Microsoft.AVS/privateClouds/authorizations) |

## Parameters

**Required parameters**

| Parameter Name | Type | Description |
| :-- | :-- | :-- |
| `name` | string | Name of the ExpressRoute Circuit Authorization in the private cloud |

**Conditional parameters**

| Parameter Name | Type | Description |
| :-- | :-- | :-- |
| `privateCloudName` | string | The name of the parent privateClouds. Required if the template is used in a standalone deployment. |

**Optional parameters**

| Parameter Name | Type | Default Value | Description |
| :-- | :-- | :-- | :-- |
| `enableDefaultTelemetry` | bool | `True` | Enable telemetry via the Customer Usage Attribution ID (GUID). |


### Parameter Usage: `<ParameterPlaceholder>`

// TODO: Fill in Parameter usage

## Outputs

| Output Name | Type | Description |
| :-- | :-- | :-- |
| `name` | string | The name of the authorization. |
| `resourceGroupName` | string | The name of the resource group the authorization was created in. |
| `resourceId` | string | The resource ID of the authorization. |

## Cross-referenced modules

_None_
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json",
"version": "0.1"
}
Loading