Azure / Azure/apiops-cli

serviceUrl (and other ARM-level API properties) from overrides file are silently dropped when API has a specification

Ouverte
#141 1 commentaire 0 réactions 1 personne assignée Réclamée par @azaslonov Voir sur GitHub
P1
Langage dominant
TypeScript
Étoiles
26
Forks
9
Merge moyen
1 j 3 h
PR mergées (30 j)
20

Description

When an API has a specification file, publishRootApi() sends a single PUT containing both the override-merged properties (like serviceUrl) and spec body (properties.format + properties.value). APIM treats the spec as authoritative during import and re-derives serviceUrl from the spec's servers[0].url / host + basePath, silently discarding the override.

alignActiveRevisionWithSource() does a metadata-only re-PUT, but only fires when the API has additional revisions and is marked isCurrent, so single-revision APIs never had their overrides re-asserted.

Symptom
Given an overrides file:

apis:
- name: swagger-petstore
properties:
serviceUrl: https://prod-petstore.example.com

and a source folder that contains both swagger-petstore/apiInformation.json and swagger-petstore/specification.yaml, running:

apiops publish --source ./artifacts --overrides ./overrides.yaml ...

Expected: destination APIM Backend → HTTP(s) endpoint = https://prod-petstore.example.com

Actual: The override is silently ignored.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.