Skip to content

Commit

Permalink
added public vip
Browse files Browse the repository at this point in the history
  • Loading branch information
chanezon committed Nov 8, 2014
2 parents f8973fc + bdcfba5 commit 0495651
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 3 deletions.
8 changes: 6 additions & 2 deletions azure/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -301,8 +301,12 @@ def _to_datetime(strtime):
'persistent_vm_downtime_info': 'PersistentVMDowntimeInfo',
'copy_id': 'CopyId',
'os_state': 'OSState',
'public_ips': 'PublicIPs',
'public_ip': 'PublicIP',
'vm_image': 'VMImage',
'vm_images': 'VMImages',
'os_disk_configuration': 'OSDiskConfiguration',
'public_ips': 'PublicIPs',
'public_ip': 'PublicIP',
'supported_os': 'SupportedOS',
}


Expand Down
1 change: 0 additions & 1 deletion azure/servicemanagement/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -899,7 +899,6 @@ def __init__(self, name=u''):
self.idle_timeout_in_minutes = 4
self.address = None


class ConfigurationSet(WindowsAzureData):

def __init__(self):
Expand Down
28 changes: 28 additions & 0 deletions azure/servicemanagement/servicemanagementservice.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
OperatingSystemFamilies,
OSImage,
PersistentVMRole,
ResourceExtensions,
RoleSize,
RoleSizes,
StorageService,
Expand Down Expand Up @@ -1385,6 +1386,26 @@ def shutdown_roles(self, service_name, deployment_name, role_names,
role_names, post_shutdown_action),
async=True)

def list_resource_extensions(self):
'''
Lists the resource extensions that are available to add to a
Virtual Machine.
'''
return self._perform_get(self._get_resource_extensions_path(),
ResourceExtensions)

def list_resource_extension_versions(self, publisher_name, extension_name):
'''
Lists the versions of a resource extension that are available to add
to a Virtual Machine.
publisher_name: Name of the resource extension publisher.
extension_name: Name of the resource extension.
'''
return self._perform_get(self._get_resource_extension_versions_path(
publisher_name, extension_name),
ResourceExtensions)

#--Operations for virtual machine images -----------------------------
def capture_vm_image(self, service_name, deployment_name, role_name, options):
'''
Expand Down Expand Up @@ -2003,6 +2024,13 @@ def _get_roles_operations_path(self, service_name, deployment_name):
'/deployments/' + deployment_name +
'/roles/Operations', None)

def _get_resource_extensions_path(self):
return self._get_path('services/resourceextensions', None)

def _get_resource_extension_versions_path(self, publisher_name, extension_name):
return self._get_path('services/resourceextensions',
publisher_name + '/' + extension_name)

def _get_capture_vm_image_path(self, service_name, deployment_name, role_name):
return self._get_path('services/hostedservices/' + _str(service_name) +
'/deployments/' + _str(deployment_name) +
Expand Down
33 changes: 33 additions & 0 deletions tests/test_servicemanagementservice.py
Original file line number Diff line number Diff line change
Expand Up @@ -1561,6 +1561,39 @@ def test_capture_role(self):
# Assert
self.assertTrue(self._os_image_exists(self.os_image_name))

def test_list_resource_extensions(self):
# Arrange

# Act
result = self.sms.list_resource_extensions()

# Assert
self.assertGreater(len(result), 0)
for ext in result:
self.assertGreater(len(ext.description), 0)
self.assertGreater(len(ext.label), 0)
self.assertGreater(len(ext.name), 0)
self.assertGreater(len(ext.publisher), 0)
self.assertGreater(len(ext.version), 0)

def test_list_resource_extension_versions(self):
# Arrange
publisher = 'Chef.Bootstrap.WindowsAzure'
name = 'ChefClient'

# Act
result = self.sms.list_resource_extension_versions(
publisher, name)

# Assert
self.assertGreater(len(result), 0)
for ext in result:
self.assertEqual(ext.name, name)
self.assertEqual(ext.publisher, publisher)
self.assertGreater(len(ext.description), 0)
self.assertGreater(len(ext.label), 0)
self.assertGreater(len(ext.version), 0)

#--Test cases for virtual machine images -----------------------------
def test_capture_vm_image(self):
# Arrange
Expand Down

0 comments on commit 0495651

Please sign in to comment.