本文整理汇总了Python中service.accounts.openstack.AccountDriver.list_all_images方法的典型用法代码示例。如果您正苦于以下问题:Python AccountDriver.list_all_images方法的具体用法?Python AccountDriver.list_all_images怎么用?Python AccountDriver.list_all_images使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类service.accounts.openstack.AccountDriver
的用法示例。
在下文中一共展示了AccountDriver.list_all_images方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from service.accounts.openstack import AccountDriver [as 别名]
# 或者: from service.accounts.openstack.AccountDriver import list_all_images [as 别名]
def main():
for prov in Provider.objects.filter(type__name__icontains='openstack'):
if not prov.is_active():
continue
print "Importing machine membership for %s" % prov
accounts = OSAccounts(prov)
if not accounts:
print "Aborting import: Could not retrieve OSAccounts driver "\
"for Provider %s" % prov
continue
admin_driver = get_admin_driver(prov)
if not admin_driver:
print "Aborting import: Could not retrieve admin_driver "\
"for Provider %s" % prov
continue
private_images = admin_driver.filter_machines(
accounts.list_all_images(is_public=False),
black_list=["eki-", "eri-", "ChromoSnapShot"])
public_images = admin_driver.filter_machines(
accounts.list_all_images(is_public=True),
black_list=["eki-", "eri-", "ChromoSnapShot"])
fix_public_images(public_images, prov, accounts)
fix_private_images(private_images, prov, accounts)
fix_private_images_without_repr(private_images, prov, accounts)
示例2: update_membership
# 需要导入模块: from service.accounts.openstack import AccountDriver [as 别名]
# 或者: from service.accounts.openstack.AccountDriver import list_all_images [as 别名]
def update_membership():
from core.models import ApplicationMembership, Provider, ProviderMachine
from service.accounts.openstack import AccountDriver as OSAcctDriver
from service.accounts.eucalyptus import AccountDriver as EucaAcctDriver
for provider in Provider.objects.all():
if not provider.is_active():
return []
if provider.type.name.lower() == 'openstack':
driver = OSAcctDriver(provider)
else:
logger.warn("Encountered unknown ProviderType:%s, expected"
" [Openstack]")
continue
images = driver.list_all_images()
changes = 0
for img in images:
pm = ProviderMachine.objects.filter(identifier=img.id,
provider=provider)
if not pm or len(pm) > 1:
logger.debug("pm filter is bad!")
logger.debug(pm)
continue
else:
pm = pm[0]
app_manager = pm.application.applicationmembership_set
if not img.is_public:
#Lookup members
image_members = accts.image_manager.shared_images_for(
image_id=img.id)
#add machine to each member
#(Who owns the cred:ex_project_name) in MachineMembership
#for member in image_members:
else:
members = app_manager.all()
if members:
logger.info("Application for PM:%s used to be private."
" %s Users membership has been revoked. "
% (img.id, len(members)))
changes += len(members)
members.delete()
#if MachineMembership exists, remove it (No longer private)
logger.info("Total Updates to machine membership:%s" % changes)
return changes