Skip to content

Publish API creates 2 schemas on destination API #274

Description

@TiberiuGarbea

Command that triggered the bug

apiops publish

Expected behavior

When migrating from development to test environment I expect same schema to be created on test environment.

Actual behavior

Checking the extracted artifact they look fine. One schema is available in the artifact and has expected format.
After publish the expected schema is created but also an additional one.
I did another extract on test environment to compare the 2 schemas in the produced artifact schemaInformation.json.
They are very similar only difference I could notice in portal was the location of required array in components ->schemas at the beginning of the items object in the additional schema and at the end in expected schema.
"components": {
"schemas": {
"IngestionRequest": {
"minItems": 1,
"type": "array",
"items": {
"required": [
"type",
"objectClass",
"object",
"parameter",
"eventHost"
],
"type": "object",
"properties": {
"type": {
"type": "string"
},
"protocolVersion": {
"type": "integer"
},
Another difference was the "provisioningState": "Succeeded" present in the original schema.

When visualizing the API Json in portal OpenAPI specification editor the "components": {
"schemas": { } }..are missing and I get below message at the end of the json.

"x-ms-export-notes": ["Definitions/body parameters are not exported since this API references multiple schemas with OpenAPI components as opposed to one. Schemas referenced: 1786466527403,6aa014505ddd1707103c870a"]
}

This issue could be in relatio with issue: #262

apiops CLI version

apiops --version 1.0.1

Environment details

Usage:
npm install -g @azure-tools/apiops-cli --no-fund --no-audit
apiops extract --resource-group ${AZURE_RESOURCE_GROUP_NAME} --service-name ${API_MANAGEMENT_SERVICE_NAME} --output ./apim-artifacts --filter ${CONFIGURATION_YAML_FILE} --format json

Runs in : Gitlab pipeline on self hosted runner with base image: mcr.microsoft.com/dotnet/sdk:6.0
Nodejs version node-v22.14.0-linux-x64
Tried env variable ARM_API_VERSION: "2024-05-01" or no mention leading to -> 2025-09-01-preview
Tried with both formats on export: text and JSON

CI/CD environment

Other

Is this bug blocking you?

Yes

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    close:fixedFixed by a previous PR or releasetype:bugSomething broken

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions