diff --git a/README.md b/README.md
index 6fffa42..be37903 100644
--- a/README.md
+++ b/README.md
@@ -5,8 +5,12 @@ SolusVM JSON API Python Library
:Info: See for API implementation.
:Author: Benton Snyder
+:Contributor: Timh Bergstroem
:Website: Noumenal Designs
:Date: $Date: 2013-08-15 22:27:40 -0600 (Thurs, 15 Aug 2013) $
:Revision: $Revision: 0021 $
:Description: Python library for interfacing with SolusVM
+:Changes: Updated to include new functionality; changeMemory, changeHardDiskSize
+ and included the new change harddrive functionality in changePlan according to
+ https://documentation.solusvm.com/display/DOCS/v1.16#v1.16-1.16.09
diff --git a/solusvm.py b/solusvm.py
index 296c6a5..f4aab8e 100644
--- a/solusvm.py
+++ b/solusvm.py
@@ -4,10 +4,12 @@
=====================================================
:Info: See for API implementation.
:Author: Benton Snyder
+:Contributor: Timh Bergstroem
:Website: Noumenal Designs
:Date: $Date: 2013-08-15 22:27:40 -0600 (Thurs, 15 Aug 2013) $
:Revision: $Revision: 0021 $
:Description: Python library for interfacing with SolusVM
+:Changes: Updated to include new functionality; changeMemory, changeHardDisk and included the new functionality in changePlan
"""
import requests
@@ -376,7 +378,7 @@ def toggleSerialConsole(self, vserverid, access=None, time=None):
}
return self.sQuery(**data)
- def changePlan(self, vserverid, plan):
+ def changePlan(self, vserverid, plan, change_hdd=False):
"""Changes specified virtual server's plan.
http://docs.solusvm.com/v2/Content/Developer/Admin-Api/Virtual-Server-Functions/Change-Plan.htm
@@ -387,7 +389,8 @@ def changePlan(self, vserverid, plan):
data = {
'action': 'vserver-change',
'vserverid': vserverid,
- 'plan':plan
+ 'plan': plan,
+ 'changehdd': change_hdd
}
return self.sQuery(**data)
@@ -406,6 +409,36 @@ def changeOwner(self, vserverid, clientid):
}
return self.sQuery(**data)
+ def changeMemory(self, vserverid, memory):
+ """Changes specified virtual server's RAM.
+ https://documentation.solusvm.com/display/DOCS/Change+Memory
+
+ :param vserverid: id of virtual server
+ :param memory: new memory in MB
+ :returns: json formatted string
+ """
+ data = {
+ 'action': 'vserver-change-memory',
+ 'vserverid': vserverid,
+ 'memory': memory
+ }
+ return self.sQuery(**data)
+
+ def changeHardDiskSize(self, vserverid, hdd):
+ """Changes specified virtual server's HDD size.
+ https://documentation.solusvm.com/display/DOCS/Change+Hard+Disk+Size
+
+ :param vserverid: id of virtual server
+ :param hdd: new harddisk size in GB
+ :returns: json formatted string
+ """
+ data = {
+ 'action': 'vserver-change-hdd',
+ 'vserverid': vserverid,
+ 'hdd': hdd
+ }
+ return self.sQuery(**data)
+
def changeBootOrder(self, vserverid, bootorder):
"""Changes specified virtual server's boot order.
http://docs.solusvm.com/v2/Content/Developer/Admin-Api/Virtual-Server-Functions/Boot-Order.htm