imperva / imperva/imperva-sdk-python

strange condition: Server Group already exists when trying to create it, but then Server Group not found when trying to delete it

Offen
#41 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Python
Sterne
14
Forks
10
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

code:
`
mx.IsAuthenticated
Out[170]: True

site = mx.get_site('10x')

site.create_server_group(serverGroup, update=False)
Traceback (most recent call last):

File "", line 1, in
site.create_server_group(serverGroup, update=False)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/Site.py", line 113, in create_server_group
return self._connection.create_server_group(Name=Name, Site=self.Name, OperationMode=OperationMode, ProtectedIps=ProtectedIps, ServerIps=ServerIps, update=update)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/MxConnection.py", line 330, in create_server_group
return ServerGroup._create_server_group(connection=self, Name=Name, Site=Site, OperationMode=OperationMode, ProtectedIps=ProtectedIps, ServerIps=ServerIps, update=update)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/ServerGroup.py", line 146, in _create_server_group
raise MxException("Server Group already exists")

MxException: Server Group already exists

site.delete_server_group(serverGroup)
Traceback (most recent call last):

File "", line 1, in
site.delete_server_group(serverGroup)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/Site.py", line 116, in delete_server_group
return self._connection.delete_server_group(Name=Name, Site=self.Name)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/MxConnection.py", line 341, in delete_server_group
return ServerGroup._delete_server_group(connection=self, Name=Name, Site=Site)

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/ServerGroup.py", line 161, in _delete_server_group
connection._mx_api('DELETE', '/conf/serverGroups/%s/%s' % (Site, Name))

File "/anaconda3/lib/python3.7/site-packages/imperva_sdk-0.2.0-py3.7.egg/imperva_sdk/MxConnection.py", line 257, in _mx_api
raise MxException("MX returned errors - %s" % str(error_message))

MxException: MX returned errors - [{'description': 'Server Group not found', 'error-code': 'IMP-10008'}]

`

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die im Issue gezeigten create- und delete-Aufrufe zu reproduzieren, und untersuche dann die Methoden _create_server_group und _delete_server_group in imperva_sdk/ServerGroup.py sowie die Aufrufpfade in Site.py und MxConnection.py. Ermittle, warum die API widersprüchliche Existenzzustände meldet, und stelle das erwartete Verhalten für dieselbe Server Group fest, bevor du einen Fix validierst.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
api, backend
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.