[BUG] reopening 760 - in v7.0.0-beta.1.0.0 , serviceurl gets set to apim instance url
- 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