Azure / Azure/apiops

[BUG] reopening 760 - in v7.0.0-beta.1.0.0 , serviceurl gets set to apim instance url

Aperta
#832 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
C#
Stelle
448
Fork
247
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Release version

v7.0.0-beta.1.0.0

### Describe the bug

@guythetechie
Bug 760 was slated to be resolved in v7alpha1.0.2
I tested this in v7.0.0-beta.1.0.0 and it doesn't work as expected.

Here is the scenario and how to reproduce the issue and possible root cause.
Scenario:
I imported an openapi spec petstore 3.x
Went into the APIM - API and cleared out "Web service URL"
Ran extractor . I can see in the extracted apiinformation.json serviceurl is not there.
So far everything look good.
I Publish back the artifact into APIM.
As I trace the API, I can get these steps happening
1. makes a get call to get the DTO object for the API
2. PUT call to API with "serviceUrl": null along with other properties
3. Get call to DTO object. And I can see "serviceUrl": null, in response object
4. PUT call to publish API specification.yaml .
5. GET call to get DTO object of API. I can see in the response ""serviceUrl" getting set to apim URL

The issue is; the 4th API call where it PUT API spec, APIM would default serviceurl back to APIM instance URL
I think if you re-order the API call sequence it will work.
Basically the step 2 have to be executed between 4 and 5

### Expected behavior

If serviceurl is empty on the extracted api artifact, publisher should publish the api with empty serviceurl

### Actual behavior

publisher publishes the api spec as the last step and APIM set the serviceurl to apim instance as it's default behavior. If the sequence is re-ordered I believe the issue can be resolved

### Reproduction Steps

import an openapi spec petstore 3.x
go into the APIM - API and clear out "Web service URL"
Ran extractor .Publish back the artifact into APIM.
Check APIM API again. The web service URL is the "apim instance url"

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia riproducendo il flusso di extractor e publisher con la specifica Petstore OpenAPI 3.x, quindi traccia la sequenza di chiamate API del publisher relativa al specification PUT e all'aggiornamento di serviceUrl. Il lavoro è completato quando una Web service URL vuota nell'artefatto estratto rimane vuota dopo il publishing invece di essere sostituita dall'APIM instance URL.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
azure, csharp, openapi
Ambito
api, cloud
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.