diff --git a/.azure-pipelines/common-templates/download-openapi-docs.yml b/.azure-pipelines/common-templates/download-openapi-docs.yml index d6d9447deb9..1506b9d5f54 100644 --- a/.azure-pipelines/common-templates/download-openapi-docs.yml +++ b/.azure-pipelines/common-templates/download-openapi-docs.yml @@ -92,7 +92,7 @@ jobs: # Calculate meta-module version $MetaModule = Find-Module "Microsoft.Graph" -Repository PSGallery $MetaModuleVersion = [System.Version]($MetaModule.Version) - $NewMetaModuleVersion = "$($MetaModuleVersion.Major).$($MetaModuleVersion.Minor + 1).$($MetaModuleVersion.Build)" + $NewMetaModuleVersion = "$($MetaModuleVersion.Major).$($MetaModuleVersion.Minor).$($MetaModuleVersion.Build + 1)" # Bump meta-module minor version Write-Host "Bumping Microsoft.Graph to $NewMetaModuleVersion." & "$(System.DefaultWorkingDirectory)\tools\SetMetaModuleVersion.ps1" -VersionNumber $NewMetaModuleVersion @@ -102,7 +102,7 @@ jobs: try { $Module = Find-Module "Microsoft.Graph.$_" -Repository PSGallery -ErrorAction Stop $ModuleVersion = [System.Version]($Module.Version) - $NewModuleVersion = "$($ModuleVersion.Major).$($ModuleVersion.Minor + 1).$($ModuleVersion.Build)" + $NewModuleVersion = "$($ModuleVersion.Major).$($ModuleVersion.Minor).$($ModuleVersion.Build + 1)" Write-Host "Bumping $_ to $NewModuleVersion." . "$(System.DefaultWorkingDirectory)\tools\SetServiceModuleVersion.ps1" -VersionNumber $NewModuleVersion -Modules $_ } catch { diff --git a/.azure-pipelines/install-tools-template.yml b/.azure-pipelines/install-tools-template.yml index cb8bade86c0..7bba77a0bba 100644 --- a/.azure-pipelines/install-tools-template.yml +++ b/.azure-pipelines/install-tools-template.yml @@ -50,7 +50,7 @@ steps: displayName: 'Install AutoRest' inputs: command: 'custom' - customCommand: 'install -g autorest@beta' + customCommand: 'install -g autorest@latest' - task: PowerShell@2 displayName: 'Register PS Repository' diff --git a/src/Compliance/Compliance/readme.md b/src/Compliance/Compliance/readme.md index dfa623677d3..4f55bd8ad86 100644 --- a/src/Compliance/Compliance/readme.md +++ b/src/Compliance/Compliance/readme.md @@ -31,6 +31,20 @@ require: title: $(service-name) subject-prefix: '' ``` + +### Directives + +> see https://github.com/Azure/autorest/blob/master/docs/powershell/directives.md + +``` yaml +directive: +# Remove undocumented cmdlets + - where: + subject: (^ComplianceEdiscoveryCaseNoncustodialDataSource$) + variant: ^Get1$|^GetViaIdentity1$|^Update1$|^UpdateExpanded1$|^UpdateViaIdentity1$|^UpdateViaIdentityExpanded1$|^Delete1$|^DeleteViaIdentity1$ + remove: true +``` + ### Versioning ``` yaml diff --git a/src/Users.Actions/Users.Actions/readme.md b/src/Users.Actions/Users.Actions/readme.md index 1aca330e61f..78bc4f7af6c 100644 --- a/src/Users.Actions/Users.Actions/readme.md +++ b/src/Users.Actions/Users.Actions/readme.md @@ -45,7 +45,7 @@ directive: - where: verb: Clear subject: ^UserManagedAppRegistration$ - variant: ^Wipe1$|^WipeExpanded1$|^WipeViaIdentity1$|^WipeViaIdentityExpanded1$ + variant: ^Wipe(1|2)$|^WipeExpanded(1|2)$|^WipeViaIdentity(1|2)$|^WipeViaIdentityExpanded(1|2)$ remove: true - where: verb: Get diff --git a/src/readme.graph.md b/src/readme.graph.md index 1ae2ac3c1e4..38bedef23f7 100644 --- a/src/readme.graph.md +++ b/src/readme.graph.md @@ -86,6 +86,8 @@ directive: - microsoft.graph.governanceRoleDefinition - microsoft.graph.workbookOperationError - microsoft.graph.parentLabelDetails + - microsoft.graph.ediscovery.tag + - microsoft.graph.ediscovery.sourceCollection # Set parameter alias - where: diff --git a/tools/GenerateModules.ps1 b/tools/GenerateModules.ps1 index b55f218dc79..f802d563ab1 100644 --- a/tools/GenerateModules.ps1 +++ b/tools/GenerateModules.ps1 @@ -20,15 +20,21 @@ enum VersionState { EqualToFeed NotOnFeed } +$Error.Clear() $ErrorActionPreference = 'Continue' if ($PSEdition -ne 'Core') { Write-Error 'This script requires PowerShell Core to execute. [Note] Generated cmdlets will work in both PowerShell Core or Windows PowerShell.' } +# Module import. +Import-Module PowerShellGet + # Install Powershell-yaml if (!(Get-Module -Name powershell-yaml -ListAvailable)) { Install-Module powershell-yaml -Force } +# Set NODE max memory to 8 Gb. +$ENV:NODE_OPTIONS='--max-old-space-size=8192' $ModulePrefix = "Microsoft.Graph" $ScriptRoot = $PSScriptRoot $ModulesOutputDir = Join-Path $ScriptRoot "..\src\" @@ -130,7 +136,8 @@ $ModulesToGenerate | ForEach-Object -ThrottleLimit $ModulesToGenerate.Count -Par # Generate PowerShell modules. & autorest --module-version:$ModuleVersion --service-name:$ModuleName $ModuleLevelReadMePath --version:"3.0.6306" --verbose if ($LASTEXITCODE) { - Write-Error "Failed to generate '$ModuleName' module." + Write-Error "AutoREST failed to generate '$ModuleName' module." + break; } Write-Host -ForegroundColor Green "AutoRest generated '$FullyQualifiedModuleName' successfully." @@ -192,10 +199,6 @@ $ModulesToGenerate | ForEach-Object -ThrottleLimit $ModulesToGenerate.Count -Par } $updatedLine } | Set-Content $InternalModulePsm1 - - if ($LASTEXITCODE) { - Write-Error "Failed to build '$ModuleName' module." - } } if ($Using:Test) { @@ -206,14 +209,21 @@ $ModulesToGenerate | ForEach-Object -ThrottleLimit $ModulesToGenerate.Count -Par # Pack generated module. . $Using:PackModulePS1 -Module $ModuleName -ArtifactsLocation $Using:ArtifactsLocation } + + Write-Host -ForeGroundColor Green "Generating $ModuleName Completed" } catch { - throw $_ + Write-Error $_ } - Write-Host -ForeGroundColor Green "Generating $ModuleName Completed" } } +if ($Error.Count -ge 1) { + # Write generation errors to pipeline. + $Error + Write-Error "The SDK failed to build due to $($Error.Count) errors listed above." -ErrorAction "Stop" +} + if ($Publish) { # Publish generated modules. & $PublishModulePS1 -Modules $ModuleMapping.Keys -ModulePrefix $ModulePrefix -ArtifactsLocation $ArtifactsLocation -RepositoryName $RepositoryName -RepositoryApiKey $RepositoryApiKey diff --git a/tools/ValidateUpdatedModuleVersion.ps1 b/tools/ValidateUpdatedModuleVersion.ps1 index b83b0561429..9ec173eef9e 100644 --- a/tools/ValidateUpdatedModuleVersion.ps1 +++ b/tools/ValidateUpdatedModuleVersion.ps1 @@ -13,6 +13,11 @@ enum VersionState { EqualToFeed NotOnFeed } + +# Module import. +Import-Module PackageManagement +Import-Module PowerShellGet + $AllowPreRelease = $true if($ModulePreviewNumber -eq -1) { $AllowPreRelease = $false