Skip to content

Correct Schema for Virtual Machine Scaleset diskControllerType field #25628

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Navigatron
Copy link

The Virtual Machine Scaleset diskControllerType field is defined as:

"diskControllerType": {
  "type": "string",
  "items": {
    "$ref": "./computeRPCommon.json#/definitions/DiskControllerType",
    "description": "Specifies the disk controller type configured for the virtual machines in the scale set. Minimum api-version: 2022-08-01"
  }
}

And references this definition:

"DiskControllerType": {
  "type": "string",
  "enum": [
    "SCSI",
    "NVMe"
  ],
  "x-ms-enum": {
    "name": "DiskControllerTypes",
    "modelAsString": true
  },
  "description": "Specifies the disk controller type configured for the VM and VirtualMachineScaleSet. This property is only supported for virtual machines whose operating system disk and VM sku supports Generation 2 (https://docs.microsoft.com/en-us/azure/virtual-machines/generation-2), please check the HyperVGenerations capability returned as part of VM sku capabilities in the response of Microsoft.Compute SKUs api for the region contains V2 (https://docs.microsoft.com/rest/api/compute/resourceskus/list). For more information about Disk Controller Types supported please refer to https://aka.ms/azure-diskcontrollertypes."
},

The presence of the items field causes diskControllerType to be treated as an array, where elements must be strings of the above enum. This PR elevates the description and $ref fields out of items, so that diskControllerType is correctly interpreted as a string.

Additionally, I removed the type field, as this is provided by the $ref, and follows the precedent set by other nearby fields that use a $ref to set their type.

This PR fixes #25202 and pulumi azure-native #2639

ARM (Control Plane) API Specification Update Pull Request

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

diagram

[1] ARM review queue (for merge queues, see [4])
The PRs are processed by time opened, ascending. Your PR may show up on 2nd or later page.
If you addressed Step 1 from the diagram and your PR is not showing up in the queue, ensure the label ARMChangesRequested
is removed from your PR. This should cause the label WaitForARMFeedback to be added.
[2] https://aka.ms/azsdk/support/specreview-channel
[3] List of SDK breaking changes approvers in pinned Teams announcement
[4] public repo merge queue, private repo merge queue (for ARM review queue, [1])

If you need further help with anything, see Getting help section below.

Purpose of this PR

What's the purpose of this PR? Check all that apply. This is mandatory!

  • New API version. (Such PR should have been generated with OpenAPI Hub, per this wiki doc.)
  • Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
  • Update existing version to fix swagger quality issues in S360.
  • Other, please clarify:
    • Fix a schema inaccuracy

Due diligence checklist

To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

Breaking changes review (Step 1)

  • If the automation determines you have breaking changes, i.e. Step 1 from the diagram applies to you,
    you must follow the breaking changes process.
    IMPORTANT This applies even if:
    • The tool fails while it shouldn't, e.g. due to runtime exception, or incorrect detection of breaking changes.
    • You believe there is no need for you to request breaking change approval, for any reason.
      Such claims must be reviewed, and the process is the same.

ARM API changes review (Step 2)

  • If this PR is in purview of ARM review then automation will add the ARMReview label.
  • If you want to force ARM review, add the label yourself.
  • Proceed according to the diagram at the top of this comment.

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
Swagger-Suppression-Process
to get approval.

Getting help

Remove the items wrapper, which causes the field to be interpreted as an array. Remove the type field, to match other field shapes, and deconflict with the type field in the referenced schema.
@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 1, 2023

Next Steps to Merge

⚠️ This is an experimental comment. It may not always be up-to-date. ⚠️

Next steps that must be taken to merge this PR:
  • ❌ Your PR has breaking changes (label: BreakingChangeReviewRequired). See the PR description for help.
  • ❌ The required check named Swagger BreakingChange has failed. Refer to the check in the PR's 'Checks' tab for details on how to fix it. In addition, refer to step 1 in the PR workflow diagram (even if your PR is for data plane, not ARM).

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 1, 2023

Swagger Validation Report

️❌BreakingChange: 4 Errors, 0 Warnings failed [Detail]
compared swaggers (via Oad v0.10.4)] new version base version
virtualMachineScaleSet.json 2023-07-01(94cd306) 2023-07-01(main)
Rule Message
1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4063:9
Old: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4063:9
1017 - ReferenceRedirection The '$ref' property points to different models in the old and new versions.
New: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4091:9
Old: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4094:9
1048 - AddedXmsEnum The new version adds a x-ms-enum extension.
New: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4063:9
Old: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4063:9
1048 - AddedXmsEnum The new version adds a x-ms-enum extension.
New: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4091:9
Old: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L4094:9
️️✔️Breaking Change(Cross-Version) succeeded [Detail] [Expand]
There are no breaking changes.
️️✔️CredScan succeeded [Detail] [Expand]
There is no credential detected.
️⚠️LintDiff: 0 Warnings warning [Detail]
compared tags (via openapi-validator v2.1.4) new version base version
package-2023-07-01 package-2023-07-01(94cd306) package-2023-07-01(main)

The following errors/warnings exist before current PR submission:

Rule Message
⚠️ PageableOperation Based on the response model schema, operation 'VirtualMachineScaleSetVMExtensions_List' might be pageable. Consider adding the x-ms-pageable extension.
Location: ComputeRP/stable/2023-07-01/virtualMachineScaleSet.json#L2457
️⚠️Avocado: 1 Warnings warning [Detail]
Rule Message
⚠️ MULTIPLE_API_VERSION The default tag contains multiple API versions swaggers.
readme: specification/compute/resource-manager/readme.md
tag: specification/compute/resource-manager/readme.md#tag-package-2023-07-01
️❌SwaggerAPIView: 0 Errors, 0 Warnings failed [Detail]
️️✔️TypeSpecAPIView succeeded [Detail] [Expand]
️️✔️ModelValidation succeeded [Detail] [Expand]
Validation passes for ModelValidation.
️️✔️SemanticValidation succeeded [Detail] [Expand]
Validation passes for SemanticValidation.
️️✔️PoliCheck succeeded [Detail] [Expand]
Validation passed for PoliCheck.
️️✔️PrettierCheck succeeded [Detail] [Expand]
Validation passes for PrettierCheck.
️️✔️SpellCheck succeeded [Detail] [Expand]
Validation passes for SpellCheck.
️️✔️Lint(RPaaS) succeeded [Detail] [Expand]
Validation passes for Lint(RPaaS).
️️✔️PR Summary succeeded [Detail] [Expand]
Validation passes for Summary.
️️✔️Automated merging requirements met succeeded [Detail] [Expand]
Posted by Swagger Pipeline | How to fix these errors?

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 1, 2023

Swagger Generation Artifacts

️️✔️ApiDocPreview succeeded [Detail] [Expand]
 Please click here to preview with your @microsoft account. 
️❌SDK Breaking Change Tracking failed [Detail]

Breaking Changes Tracking

azure-sdk-for-go - sdk/resourcemanager/compute/armcompute - 6.0.0
+	Type of `VirtualMachineScaleSetStorageProfile.DiskControllerType` has been changed from `*string` to `*DiskControllerTypes`
+	Type of `VirtualMachineScaleSetUpdateStorageProfile.DiskControllerType` has been changed from `*string` to `*DiskControllerTypes`
azure-sdk-for-js - @azure/arm-compute - 22.0.0
+	Type of parameter diskControllerType of interface VirtualMachineScaleSetStorageProfile is changed from string to DiskControllerTypes
+	Type of parameter diskControllerType of interface VirtualMachineScaleSetUpdateStorageProfile is changed from string to DiskControllerTypes

️️✔️ azure-sdk-for-net-track2 succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. SDK Automation 14.0.0
    command	pwsh ./eng/scripts/Automation-Sdk-Init.ps1 ../azure-sdk-for-net_tmp/initInput.json ../azure-sdk-for-net_tmp/initOutput.json
    command	pwsh ./eng/scripts/Invoke-GenerateAndBuildV2.ps1 ../azure-sdk-for-net_tmp/generateInput.json ../azure-sdk-for-net_tmp/generateOutput.json
  • ️✔️Azure.ResourceManager.Compute [View full logs]  [Preview SDK Changes] Breaking Change Detected
    info	[Changelog] Breaking Changes: /home/cloudtest/.nuget/packages/microsoft.dotnet.apicompat/5.0.0-beta.20467.1/build/Microsoft.DotNet.ApiCompat.targets(82,5): error : MembersMustExist : Member 'public System.String Azure.ResourceManager.Compute.Models.VirtualMachineScaleSetUpdateStorageProfile.DiskControllerType.get()' does not exist in the implementation but it does exist in the contract. [/mnt/vss/_work/1/s/azure-sdk-for-net/sdk/compute/Azure.ResourceManager.Compute/src/Azure.ResourceManager.Compute.csproj::TargetFramework=netstandard2.0],
    info	[Changelog] /home/cloudtest/.nuget/packages/microsoft.dotnet.apicompat/5.0.0-beta.20467.1/build/Microsoft.DotNet.ApiCompat.targets(82,5): error : MembersMustExist : Member 'public void Azure.ResourceManager.Compute.Models.VirtualMachineScaleSetUpdateStorageProfile.DiskControllerType.set(System.String)' does not exist in the implementation but it does exist in the contract. [/mnt/vss/_work/1/s/azure-sdk-for-net/sdk/compute/Azure.ResourceManager.Compute/src/Azure.ResourceManager.Compute.csproj::TargetFramework=netstandard2.0],
    info	[Changelog] /home/cloudtest/.nuget/packages/microsoft.dotnet.apicompat/5.0.0-beta.20467.1/build/Microsoft.DotNet.ApiCompat.targets(96,5): error : ApiCompat failed for '/mnt/vss/_work/1/s/azure-sdk-for-net/artifacts/bin/Azure.ResourceManager.Compute/Debug/netstandard2.0/Azure.ResourceManager.Compute.dll' [/mnt/vss/_work/1/s/azure-sdk-for-net/sdk/compute/Azure.ResourceManager.Compute/src/Azure.ResourceManager.Compute.csproj::TargetFramework=netstandard2.0]
️⚠️ azure-sdk-for-python-track2 warning [Detail]
  • ⚠️Warning [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. SDK Automation 14.0.0
    command	sh scripts/automation_init.sh ../azure-sdk-for-python_tmp/initInput.json ../azure-sdk-for-python_tmp/initOutput.json
    cmderr	[automation_init.sh] WARNING: Skipping azure-nspkg as it is not installed.
    command	sh scripts/automation_generate.sh ../azure-sdk-for-python_tmp/generateInput.json ../azure-sdk-for-python_tmp/generateOutput.json
    cmderr	[automation_generate.sh]  notice
    cmderr	[automation_generate.sh] npm notice New major version of npm available! 9.6.7 -> 10.0.0
    cmderr	[automation_generate.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.0.0>
    cmderr	[automation_generate.sh] npm notice Run `npm install -g [email protected]` to update!
    cmderr	[automation_generate.sh] npm notice
  • ️✔️track2_azure-mgmt-compute [View full logs]  [Preview SDK Changes]
    info	[Changelog] ### Features Added
    info	[Changelog]
    info	[Changelog]   - Model VirtualMachineNetworkInterfaceConfiguration has a new parameter auxiliary_mode
    info	[Changelog]   - Model VirtualMachineNetworkInterfaceConfiguration has a new parameter auxiliary_sku
    info	[Changelog]   - Model VirtualMachinePublicIPAddressDnsSettingsConfiguration has a new parameter domain_name_label_scope
    info	[Changelog]   - Model VirtualMachineScaleSetNetworkConfiguration has a new parameter auxiliary_mode
    info	[Changelog]   - Model VirtualMachineScaleSetNetworkConfiguration has a new parameter auxiliary_sku
    info	[Changelog]   - Model VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings has a new parameter domain_name_label_scope
    info	[Changelog]   - Model VirtualMachineScaleSetUpdateNetworkConfiguration has a new parameter auxiliary_mode
    info	[Changelog]   - Model VirtualMachineScaleSetUpdateNetworkConfiguration has a new parameter auxiliary_sku
    info	[Changelog]   - Model VirtualMachineScaleSetVM has a new parameter time_created
️⚠️ azure-sdk-for-java warning [Detail]
  • ⚠️Warning [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. SDK Automation 14.0.0
    command	./eng/mgmt/automation/init.sh ../azure-sdk-for-java_tmp/initInput.json ../azure-sdk-for-java_tmp/initOutput.json
    cmderr	[init.sh] [notice] A new release of pip is available: 23.0.1 -> 23.2.1
    cmderr	[init.sh] [notice] To update, run: pip install --upgrade pip
    cmderr	[init.sh] [notice] A new release of pip is available: 23.0.1 -> 23.2.1
    cmderr	[init.sh] [notice] To update, run: pip install --upgrade pip
    command	./eng/mgmt/automation/generate.py ../azure-sdk-for-java_tmp/generateInput.json ../azure-sdk-for-java_tmp/generateOutput.json
  • ️✔️azure-resourcemanager-compute-generated [View full logs]  [Preview SDK Changes]
️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. SDK Automation 14.0.0
    command	sh .scripts/automation_init.sh ../azure-sdk-for-js_tmp/initInput.json ../azure-sdk-for-js_tmp/initOutput.json
    warn	File azure-sdk-for-js_tmp/initOutput.json not found to read
    command	sh .scripts/automation_generate.sh ../azure-sdk-for-js_tmp/generateInput.json ../azure-sdk-for-js_tmp/generateOutput.json
  • ️✔️@azure/arm-compute [View full logs]  [Preview SDK Changes] Breaking Change Detected
    info	[Changelog] **Features**
    info	[Changelog]
    info	[Changelog]   - Added Type Alias DomainNameLabelScopeTypes
    info	[Changelog]   - Added Type Alias NetworkInterfaceAuxiliaryMode
    info	[Changelog]   - Added Type Alias NetworkInterfaceAuxiliarySku
    info	[Changelog]   - Interface CreationData has a new optional parameter elasticSanResourceId
    info	[Changelog]   - Interface Disk has a new optional parameter lastOwnershipUpdateTime
    info	[Changelog]   - Interface VirtualMachineNetworkInterfaceConfiguration has a new optional parameter auxiliaryMode
    info	[Changelog]   - Interface VirtualMachineNetworkInterfaceConfiguration has a new optional parameter auxiliarySku
    info	[Changelog]   - Interface VirtualMachinePublicIPAddressDnsSettingsConfiguration has a new optional parameter domainNameLabelScope
    info	[Changelog]   - Interface VirtualMachineScaleSetNetworkConfiguration has a new optional parameter auxiliaryMode
    info	[Changelog]   - Interface VirtualMachineScaleSetNetworkConfiguration has a new optional parameter auxiliarySku
    info	[Changelog]   - Interface VirtualMachineScaleSetPublicIPAddressConfigurationDnsSettings has a new optional parameter domainNameLabelScope
    info	[Changelog]   - Interface VirtualMachineScaleSetUpdateNetworkConfiguration has a new optional parameter auxiliaryMode
    info	[Changelog]   - Interface VirtualMachineScaleSetUpdateNetworkConfiguration has a new optional parameter auxiliarySku
    info	[Changelog]   - Interface VirtualMachineScaleSetVM has a new optional parameter timeCreated
    info	[Changelog]   - Added Enum KnownDomainNameLabelScopeTypes
    info	[Changelog]   - Added Enum KnownNetworkInterfaceAuxiliaryMode
    info	[Changelog]   - Added Enum KnownNetworkInterfaceAuxiliarySku
    info	[Changelog]   - Enum KnownDiskCreateOption has a new value CopyFromSanSnapshot
    info	[Changelog]
    info	[Changelog] **Breaking Changes**
    info	[Changelog]
    info	[Changelog]   - Type of parameter diskControllerType of interface VirtualMachineScaleSetStorageProfile is changed from string to DiskControllerTypes
    info	[Changelog]   - Type of parameter diskControllerType of interface VirtualMachineScaleSetUpdateStorageProfile is changed from string to DiskControllerTypes
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
  • ️✔️Succeeded [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. SDK Automation 14.0.0
    command	sh ./eng/scripts/automation_init.sh ../../../../../azure-sdk-for-go_tmp/initInput.json ../../../../../azure-sdk-for-go_tmp/initOutput.json
    command	generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
  • ️✔️sdk/resourcemanager/compute/armcompute [View full logs]  [Preview SDK Changes] Breaking Change Detected
    info	[Changelog] ### Breaking Changes
    info	[Changelog]
    info	[Changelog] - Type of `VirtualMachineScaleSetStorageProfile.DiskControllerType` has been changed from `*string` to `*DiskControllerTypes`
    info	[Changelog] - Type of `VirtualMachineScaleSetUpdateStorageProfile.DiskControllerType` has been changed from `*string` to `*DiskControllerTypes`
    info	[Changelog]
    info	[Changelog] ### Features Added
    info	[Changelog]
    info	[Changelog] - New value `DiskCreateOptionCopyFromSanSnapshot` added to enum type `DiskCreateOption`
    info	[Changelog] - New enum type `DomainNameLabelScopeTypes` with values `DomainNameLabelScopeTypesNoReuse`, `DomainNameLabelScopeTypesResourceGroupReuse`, `DomainNameLabelScopeTypesSubscriptionReuse`, `DomainNameLabelScopeTypesTenantReuse`
    info	[Changelog] - New enum type `NetworkInterfaceAuxiliaryMode` with values `NetworkInterfaceAuxiliaryModeAcceleratedConnections`, `NetworkInterfaceAuxiliaryModeFloating`, `NetworkInterfaceAuxiliaryModeNone`
    info	[Changelog] - New enum type `NetworkInterfaceAuxiliarySKU` with values `NetworkInterfaceAuxiliarySKUA1`, `NetworkInterfaceAuxiliarySKUA2`, `NetworkInterfaceAuxiliarySKUA4`, `NetworkInterfaceAuxiliarySKUA8`, `NetworkInterfaceAuxiliarySKUNone`
    info	[Changelog] - New field `ElasticSanResourceID` in struct `CreationData`
    info	[Changelog] - New field `LastOwnershipUpdateTime` in struct `DiskProperties`
    info	[Changelog] - New field `AuxiliaryMode`, `AuxiliarySKU` in struct `VirtualMachineNetworkInterfaceConfigurationProperties`
    info	[Changelog] - New field `DomainNameLabelScope` in struct `VirtualMachinePublicIPAddressDNSSettingsConfiguration`
    info	[Changelog] - New field `AuxiliaryMode`, `AuxiliarySKU` in struct `VirtualMachineScaleSetNetworkConfigurationProperties`
    info	[Changelog] - New field `DomainNameLabelScope` in struct `VirtualMachineScaleSetPublicIPAddressConfigurationDNSSettings`
    info	[Changelog] - New field `AuxiliaryMode`, `AuxiliarySKU` in struct `VirtualMachineScaleSetUpdateNetworkConfigurationProperties`
    info	[Changelog] - New field `TimeCreated` in struct `VirtualMachineScaleSetVMProperties`
    info	[Changelog]
    info	[Changelog] Total 2 breaking change(s), 24 additive change(s).
️❌ azure-resource-manager-schemas failed [Detail]
  • Code Generator Failed [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. Schema Automation 14.0.0
    command	.sdkauto/initScript.sh ../azure-resource-manager-schemas_tmp/initInput.json ../azure-resource-manager-schemas_tmp/initOutput.json
    cmderr	[initScript.sh]  ERR! code EBADENGINE
    cmderr	[initScript.sh]  Unsupported engine
    cmderr	[initScript.sh] npm ERR! engine Not compatible with your version of node/npm: [email protected]
    cmderr	[initScript.sh] npm ERR! notsup Not compatible with your version of node/npm: [email protected]
    cmderr	[initScript.sh] npm ERR! notsup Required: {"node":"^18.17.0 || >=20.5.0"}
    cmderr	[initScript.sh] npm ERR! notsup Actual:   {"npm":"8.19.4","node":"v16.20.2"}
    cmderr	[initScript.sh]  A complete log of this run can be found in:
    cmderr	[initScript.sh] npm ERR!     /home/cloudtest/.npm/_logs/2023-09-01T16_06_37_734Z-debug-0.log
    error	Script return with result [failed] code [1] signal [null] cwd [azure-resource-manager-schemas]: .sdkauto/initScript.sh
    warn	File azure-resource-manager-schemas_tmp/initOutput.json not found to read
    command	.sdkauto/generateScript.sh ../azure-resource-manager-schemas_tmp/generateInput.json ../azure-resource-manager-schemas_tmp/generateOutput.json
    cmderr	[generateScript.sh] /mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:500
    cmderr	[generateScript.sh]     return new TSError(diagnosticText, diagnosticCodes)
    cmderr	[generateScript.sh]            ^
    cmderr	[generateScript.sh] TSError: ⨯ Unable to compile TypeScript:
    cmderr	[generateScript.sh] cmd/generateall.ts(7,20): error TS2307: Cannot find module 'colors' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(11,19): error TS2307: Cannot find module 'yargs' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(12,18): error TS2307: Cannot find module 'path' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(14,35): error TS2307: Cannot find module 'fs' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(15,23): error TS2307: Cannot find module 'strip-ansi' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(53,9): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(64,9): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(81,67): error TS7006: Parameter 'x' implicitly has an 'any' type.
    cmderr	[generateScript.sh] cmd/generateall.ts(82,49): error TS7006: Parameter 'f' implicitly has an 'any' type.
    cmderr	[generateScript.sh] cmd/generateall.ts(106,21): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(117,21): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(118,21): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(169,13): error TS2591: Cannot find name 'process'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.
    cmderr	[generateScript.sh]     at createTSError (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:500:12)
    cmderr	[generateScript.sh]     at reportTSError (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:504:19)
    cmderr	[generateScript.sh]     at getOutput (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:739:36)
    cmderr	[generateScript.sh]     at Object.compile (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:955:32)
    cmderr	[generateScript.sh]     at Module.m._compile (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:1043:43)
    cmderr	[generateScript.sh]     at Module._extensions..js (node:internal/modules/cjs/loader:1252:10)
    cmderr	[generateScript.sh]     at Object.require.extensions.<computed> [as .ts] (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/[email protected][email protected]/node_modules/ts-node/src/index.ts:1046:12)
    cmderr	[generateScript.sh]     at Module.load (node:internal/modules/cjs/loader:1076:32)
    cmderr	[generateScript.sh]     at Function.Module._load (node:internal/modules/cjs/loader:911:12)
    cmderr	[generateScript.sh]     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    cmderr	[generateScript.sh]  notice
    cmderr	[generateScript.sh] npm notice New major version of npm available! 8.19.4 -> 10.0.0
    cmderr	[generateScript.sh] npm notice Changelog: <https://github.com/npm/cli/releases/tag/v10.0.0>
    cmderr	[generateScript.sh] npm notice Run `npm install -g [email protected]` to update!
    cmderr	[generateScript.sh] npm notice
    error	Script return with result [failed] code [1] signal [null] cwd [azure-resource-manager-schemas]: .sdkauto/generateScript.sh
    warn	Skip package processing as generation is failed
️❌ azure-powershell failed [Detail]
  • Pipeline Framework Failed [Logs] Generate from b6a0d06e9b52847d7786e37f5eaccf789893f0dd. SDK Automation 14.0.0
    command	sh ./tools/SwaggerCI/init.sh ../azure-powershell_tmp/initInput.json ../azure-powershell_tmp/initOutput.json
    command	pwsh ./tools/SwaggerCI/psci.ps1 ../azure-powershell_tmp/generateInput.json ../azure-powershell_tmp/generateOutput.json
    SSL error: syscall failure: Broken pipe
    Error: SSL error: syscall failure: Broken pipe
  • ⚠️Az.compute.DefaultTag [View full logs
    error	Fatal error: SSL error: syscall failure: Broken pipe
    error	The following packages are still pending:
    error		Az.compute.DefaultTag
Posted by Swagger Pipeline | How to fix these errors?

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Sep 1, 2023

Generated ApiView

Language Package Name ApiView Link
Go sdk/resourcemanager/compute/armcompute Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI.
Java azure-resourcemanager-compute-generated Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI.
.Net Azure.ResourceManager.Compute Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI.
JavaScript @azure/arm-compute Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI.
Swagger Microsoft.Compute Create ApiView failed. Please ensure your github account in Azure/Microsoft is public and add a comment "/azp run" to re-trigger the CI.

@microsoft-github-policy-service microsoft-github-policy-service bot added the customer-reported Issues that are reported by GitHub users external to the Azure organization. label Sep 1, 2023
@microsoft-github-policy-service
Copy link
Contributor

Thank you for your contribution Navigatron! We will review the pull request and get back to you soon.

@AzureRestAPISpecReview AzureRestAPISpecReview added ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review ARMReview BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager labels Sep 1, 2023
@openapi-workflow-bot
Copy link

Please address or respond to feedback from the ARM API reviewer.
When you are ready to continue the ARM API review, please remove the ARMChangesRequested label.
This will notify the reviewer to have another look.
If the feedback provided needs further discussion, please use this Teams channel to post your questions - aka.ms/azsdk/support/specreview-channel.
Please include [ARM Query] in the title of your question to indicate that it is ARM-related.

@Navigatron
Copy link
Author

1017: Reference Redirection

The $ref property actually points to the same model in both the old and new versions. What has changed is the thing doing the pointing.

Old

diskControllerType is incorrectly typed as an array, due to the presence of the items field. These child items point to the DiskControllerType definition with $ref.

This is not accurate to what the API actually returns.

New

This PR changes diskControllerType to point to DiskControllerType directly, whereas before it did not. Thus, the $ref of diskControllerType changed. Since child elements no longer exist, they no longer point to DiskControllerType at all, and thus their $ref also changed.

1048: AddedXmsEnum

Since diskControllerType now points at the definition for DiskControllerType, it has the x-ms-enum field now, whereas before this was incorrectly attributed to child elements. There are no longer child elements, as the API never returned an array in the first place.

Summary

This PR changes diskControllerType from an array of DiskControllerTypes strings to just one DiskControllerType string. This reflects what the API returns / expects.

I hope this is clear - if there is anything else I can elaborate on; I would be happy to. Thanks!

@Navigatron
Copy link
Author

I do not have access to the breaking change process documentation, the specreview teams channel, or the ability to remove tags from this PR.

@rkmanda Could you please remove the ARMChangedRequested label on my behalf?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ARMChangesRequested <valid label in PR review process>add this label when require changes after ARM review ARMReview BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required CI-BreakingChange-Go CI-BreakingChange-JavaScript customer-reported Issues that are reported by GitHub users external to the Azure organization. ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager
Projects
None yet
3 participants