[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

Nessuno ha ancora preso questa issue.

Valutazione

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

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.

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"

Lingua principale
C#
Stelle
448
Fork
247
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Azure/apiops

Tutte le issue di Azure/apiops

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.