Skip to content

Commit b879082

Browse files
authored
Merge pull request solarwinds#45 from superadm1n/master
Added wrapper for bulk deletes and sample script
2 parents 2567f79 + 6f341d4 commit b879082

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

orionsdk/swisclient.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ def bulkupdate(self, uris, **properties):
4848
def delete(self, uri):
4949
self._req("DELETE", uri)
5050

51+
def bulkdelete(self, uris):
52+
self._req("POST", "BulkDelete", {'uris': uris})
53+
5154
def _req(self, method, frag, data=None):
5255
resp = self._session.request(method,
5356
self.url + frag,

samples/bulk_delete.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
from orionsdk import SwisClient
2+
3+
solarwinds_server = 'server.local' # Change this to your solarwinds IP or hostname
4+
username = 'myusername' # Change this to your username
5+
password = 'mypassword' # Change this to your password
6+
7+
node_1_ip = '192.168.1.1' # example of an IP address of node we want to delete
8+
node_2_ip = '192.168.1.2' # example of an IP address of node we want to delete
9+
10+
sw = SwisClient(solarwinds_server, username, password)
11+
12+
# Gather URI's for each node we want to delete
13+
node_1_uri = sw.query("SELECT Uri FROM Orion.Nodes WHERE IPAddress = @ip", ip=node_1_ip)['results'][0]['Uri']
14+
node_2_uri = sw.query("SELECT Uri FROM Orion.Nodes WHERE IPAddress = @ip", ip=node_2_ip)['results'][0]['Uri']
15+
16+
# delete nodes
17+
sw.bulkdelete([node_1_uri, node_2_uri])

0 commit comments

Comments
 (0)