本文整理汇总了Python中bkr.server.model.Distro类的典型用法代码示例。如果您正苦于以下问题:Python Distro类的具体用法?Python Distro怎么用?Python Distro使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Distro类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_concurrent_same_tree
def test_concurrent_same_tree(self):
distro_data = dict(self.distro_data)
# ensure osmajor, osversion, and distro already exist
with session.begin():
osmajor = OSMajor.lazy_create(osmajor=distro_data["osmajor"])
osversion = OSVersion.lazy_create(osmajor=osmajor, osminor=distro_data["osminor"])
osversion.arches = [Arch.lazy_create(arch=arch) for arch in distro_data["arches"]]
Distro.lazy_create(name=distro_data["name"], osversion=osversion)
self.add_distro_trees_concurrently(distro_data, distro_data)
示例2: test_concurrent_different_trees
def test_concurrent_different_trees(self):
distro_data = dict(self.distro_data)
# ensure osmajor, osversion, and distro already exist
with session.begin():
osmajor = OSMajor.lazy_create(osmajor=distro_data["osmajor"])
osversion = OSVersion.lazy_create(osmajor=osmajor, osminor=distro_data["osminor"])
osversion.arches = [Arch.lazy_create(arch=arch) for arch in distro_data["arches"]]
Distro.lazy_create(name=distro_data["name"], osversion=osversion)
# ensure two different trees
distro_data["variant"] = u"Workstation"
distro_data2 = dict(distro_data)
distro_data2["variant"] = u"Server"
self.add_distro_trees_concurrently(distro_data, distro_data2)
示例3: test_add_distro_tree
def test_add_distro_tree(self):
self.server.auth.login_password(self.lc.user.user_name, u'logmein')
self.server.labcontrollers.add_distro_tree(self.distro_data)
with session.begin():
distro = Distro.by_name(u'RHEL-6-U1')
self.assertEquals(distro.osversion.osmajor.osmajor, u'RedHatEnterpriseLinux6')
self.assertEquals(distro.osversion.osminor, u'1')
self.assertEquals(distro.osversion.arches,
[Arch.by_name(u'i386'), Arch.by_name(u'x86_64')])
self.assertEquals(distro.date_created,
datetime.datetime(2011, 5, 10, 22, 53, 18))
distro_tree = DistroTree.query.filter_by(distro=distro,
variant=u'Workstation', arch=Arch.by_name('x86_64')).one()
self.assertEquals(distro_tree.date_created,
datetime.datetime(2011, 5, 10, 22, 53, 18))
self.assertEquals(distro_tree.url_in_lab(self.lc, scheme='nfs'),
'nfs://example.invalid:/RHEL-6-Workstation/U1/x86_64/os/')
self.assertEquals(distro_tree.repo_by_id('Workstation').path,
'')
self.assertEquals(distro_tree.repo_by_id('ScalableFileSystem').path,
'ScalableFileSystem/')
self.assertEquals(distro_tree.repo_by_id('optional').path,
'../../optional/x86_64/os/')
self.assertEquals(distro_tree.repo_by_id('debuginfo').path,
'../debug/')
self.assertEquals(distro_tree.image_by_type(ImageType.kernel,
KernelType.by_name(u'default')).path,
'images/pxeboot/vmlinuz')
self.assertEquals(distro_tree.image_by_type(ImageType.initrd,
KernelType.by_name(u'default')).path,
'images/pxeboot/initrd.img')
self.assertEquals(distro_tree.activity[0].field_name, u'lab_controller_assocs')
self.assertEquals(distro_tree.activity[0].action, u'Added')
self.assert_(self.lc.fqdn in distro_tree.activity[0].new_value,
distro_tree.activity[0].new_value)
del distro, distro_tree
# another lab controller adds the same distro tree
self.server.auth.login_password(self.lc2.user.user_name, u'logmein')
self.server.labcontrollers.add_distro_tree(self.distro_data)
with session.begin():
distro = Distro.by_name(u'RHEL-6-U1')
distro_tree = DistroTree.query.filter_by(distro=distro,
variant=u'Workstation', arch=Arch.by_name('x86_64')).one()
self.assertEquals(distro_tree.url_in_lab(self.lc2, scheme='nfs'),
'nfs://example.invalid:/RHEL-6-Workstation/U1/x86_64/os/')
self.assertEquals(distro_tree.activity[0].field_name, u'lab_controller_assocs')
self.assertEquals(distro_tree.activity[0].action, u'Added')
self.assert_(self.lc2.fqdn in distro_tree.activity[0].new_value,
distro_tree.activity[0].new_value)
del distro, distro_tree
示例4: test_add_distro_tree
def test_add_distro_tree(self):
self.server.auth.login_password(self.lc.user.user_name, u"logmein")
self.server.labcontrollers.add_distro_tree(self.distro_data)
with session.begin():
distro = Distro.by_name(u"RHEL-6-U1")
self.assertEquals(distro.osversion.osmajor.osmajor, u"RedHatEnterpriseLinux6")
self.assertEquals(distro.osversion.osminor, u"1")
self.assertEquals(distro.osversion.arches, [Arch.by_name(u"i386"), Arch.by_name(u"x86_64")])
self.assertEquals(distro.date_created, datetime.datetime(2011, 5, 10, 22, 53, 18))
distro_tree = DistroTree.query.filter_by(
distro=distro, variant=u"Workstation", arch=Arch.by_name("x86_64")
).one()
self.assertEquals(distro_tree.date_created, datetime.datetime(2011, 5, 10, 22, 53, 18))
self.assertEquals(
distro_tree.url_in_lab(self.lc, scheme="nfs"), "nfs://example.invalid:/RHEL-6-Workstation/U1/x86_64/os/"
)
self.assertEquals(distro_tree.repo_by_id("Workstation").path, "")
self.assertEquals(distro_tree.repo_by_id("ScalableFileSystem").path, "ScalableFileSystem/")
self.assertEquals(distro_tree.repo_by_id("optional").path, "../../optional/x86_64/os/")
self.assertEquals(distro_tree.repo_by_id("debuginfo").path, "../debug/")
self.assertEquals(
distro_tree.image_by_type(ImageType.kernel, KernelType.by_name(u"default")).path,
"images/pxeboot/vmlinuz",
)
self.assertEquals(
distro_tree.image_by_type(ImageType.initrd, KernelType.by_name(u"default")).path,
"images/pxeboot/initrd.img",
)
self.assertEquals(distro_tree.activity[0].field_name, u"lab_controller_assocs")
self.assertEquals(distro_tree.activity[0].action, u"Added")
self.assert_(self.lc.fqdn in distro_tree.activity[0].new_value, distro_tree.activity[0].new_value)
del distro, distro_tree
# another lab controller adds the same distro tree
self.server.auth.login_password(self.lc2.user.user_name, u"logmein")
self.server.labcontrollers.add_distro_tree(self.distro_data)
with session.begin():
distro = Distro.by_name(u"RHEL-6-U1")
distro_tree = DistroTree.query.filter_by(
distro=distro, variant=u"Workstation", arch=Arch.by_name("x86_64")
).one()
self.assertEquals(
distro_tree.url_in_lab(self.lc2, scheme="nfs"),
"nfs://example.invalid:/RHEL-6-Workstation/U1/x86_64/os/",
)
self.assertEquals(distro_tree.activity[0].field_name, u"lab_controller_assocs")
self.assertEquals(distro_tree.activity[0].action, u"Added")
self.assert_(self.lc2.fqdn in distro_tree.activity[0].new_value, distro_tree.activity[0].new_value)
del distro, distro_tree
示例5: test_concurrent_different_trees
def test_concurrent_different_trees(self):
distro_data = dict(self.distro_data)
# ensure osmajor, osversion, and distro already exist
with session.begin():
osmajor = OSMajor.lazy_create(osmajor=distro_data['osmajor'])
osversion = OSVersion.lazy_create(osmajor=osmajor,
osminor=distro_data['osminor'])
osversion.arches = [Arch.lazy_create(arch=arch)
for arch in distro_data['arches']]
Distro.lazy_create(name=distro_data['name'], osversion=osversion)
# ensure two different trees
distro_data['variant'] = u'Workstation'
distro_data2 = dict(distro_data)
distro_data2['variant'] = u'Server'
self.add_distro_trees_concurrently(distro_data, distro_data2)
示例6: create_distro_tree
def create_distro_tree(distro=None, distro_name=None, osmajor=u'DansAwesomeLinux6',
distro_tags=None, arch=u'i386', variant=u'Server', lab_controllers=None,
urls=None):
if distro is None:
if distro_name is None:
distro = create_distro(osmajor=osmajor, tags=distro_tags)
else:
distro = Distro.by_name(distro_name)
if not distro:
distro = create_distro(name=distro_name)
distro_tree = DistroTree.lazy_create(distro=distro,
arch=Arch.by_name(arch), variant=variant)
session.add(distro_tree)
if distro_tree.arch not in distro.osversion.arches:
distro.osversion.arches.append(distro_tree.arch)
distro_tree.repos.append(DistroTreeRepo(repo_id=variant,
repo_type=u'variant', path=u''))
existing_urls = [lc_distro_tree.url for lc_distro_tree in distro_tree.lab_controller_assocs]
# make it available in all lab controllers
for lc in (lab_controllers or LabController.query):
default_urls = [u'%s://%s%s/distros/%s/%s/%s/os/' % (scheme, lc.fqdn,
scheme == 'nfs' and ':' or '',
distro_tree.distro.name, distro_tree.variant,
distro_tree.arch.arch) for scheme in ['nfs', 'http', 'ftp']]
for url in (urls or default_urls):
if url in existing_urls:
break
lab_controller_distro_tree = LabControllerDistroTree(
lab_controller=lc, url=url)
distro_tree.lab_controller_assocs.append(lab_controller_distro_tree)
log.debug('Created distro tree %r', distro_tree)
return distro_tree
示例7: test_change_url
def test_change_url(self):
self.server.auth.login_password(self.lc.user.user_name, u"logmein")
self.server.labcontrollers.add_distro_tree(self.distro_data)
# add it again, but with different urls
new_distro_data = dict(self.distro_data)
new_distro_data["urls"] = [
# nfs:// is not included here, so it shouldn't change
"nfs+iso://example.invalid:/RHEL-6-Workstation/U1/x86_64/iso/",
"http://moved/",
]
self.server.labcontrollers.add_distro_tree(new_distro_data)
with session.begin():
distro = Distro.by_name(u"RHEL-6-U1")
distro_tree = DistroTree.query.filter_by(
distro=distro, variant=u"Workstation", arch=Arch.by_name("x86_64")
).one()
self.assertEquals(
distro_tree.url_in_lab(self.lc, scheme="nfs"), "nfs://example.invalid:/RHEL-6-Workstation/U1/x86_64/os/"
)
self.assertEquals(
distro_tree.url_in_lab(self.lc, scheme="nfs+iso"),
"nfs+iso://example.invalid:/RHEL-6-Workstation/U1/x86_64/iso/",
)
self.assertEquals(distro_tree.url_in_lab(self.lc, scheme="http"), "http://moved/")
del distro, distro_tree
示例8: create_rhel62
def create_rhel62():
try:
return Distro.by_name(u'RHEL-6.2')
except DatabaseLookupError:
rhel62 = data_setup.create_distro(name=u'RHEL-6.2',
osmajor=u'RedHatEnterpriseLinux6', osminor=u'2')
return rhel62
示例9: setUp
def setUp(self):
self.browser = self.get_browser()
with session.begin():
self.user = data_setup.create_user(password=u'password')
if not Distro.by_name(u'BlueShoeLinux5-5'):
data_setup.create_distro_tree(distro_name=u'BlueShoeLinux5-5')
data_setup.create_product(product_name=u'the_product')
示例10: setUp
def setUp(self):
with session.begin():
if not Distro.by_name(u'BlueShoeLinux5-5'):
data_setup.create_distro_tree(distro_name=u'BlueShoeLinux5-5')
self.user = data_setup.create_user(password=u'password')
self.server = self.get_server()
self.server.auth.login_password(self.user.user_name, 'password')
示例11: create_distro
def create_distro(name=None, osmajor=u'DansAwesomeLinux6', osminor=u'9',
arches=None, tags=None, harness_dir=True, osmajor_installopts=None):
osmajor = OSMajor.lazy_create(osmajor=osmajor)
osversion = OSVersion.lazy_create(osmajor=osmajor, osminor=osminor)
if arches:
osversion.arches = arches
if not name:
name = unique_name(u'%s.%s-%%s' % (osmajor, osminor))
distro = Distro.lazy_create(name=name, osversion=osversion)
for tag in (tags or []):
distro.add_tag(tag)
# add distro wide install options, if any
if osmajor_installopts:
for arch in arches:
io = OSMajorInstallOptions.lazy_create(osmajor_id=osmajor.id,
arch_id=Arch.by_name(arch).id)
io.ks_meta = osmajor_installopts.get('ks_meta', '')
io.kernel_options = osmajor_installopts.get('kernel_options', '')
io.kernel_options_post = osmajor_installopts.get('kernel_options_post', '')
log.debug('Created distro %r', distro)
if harness_dir:
harness_dir = os.path.join(turbogears.config.get('basepath.harness'), distro.osversion.osmajor.osmajor)
if not os.path.exists(harness_dir):
os.makedirs(harness_dir)
return distro
示例12: get_osmajor
def get_osmajor(self, distro):
""" pass in a distro name and get back the osmajor is belongs to.
"""
try:
osmajor = '%s' % Distro.by_name(distro).osversion.osmajor
except DatabaseLookupError:
raise BX(_('Invalid Distro: %s' % distro))
return osmajor
示例13: setUp
def setUp(self):
session.begin()
from bkr.server.jobs import Jobs
self.controller = Jobs()
self.user = data_setup.create_user()
if not Distro.by_name(u'BlueShoeLinux5-5'):
data_setup.create_distro_tree(distro_name=u'BlueShoeLinux5-5')
session.flush()
示例14: setUp
def setUp(self):
from bkr.server.jobs import Jobs
self.controller = Jobs()
self.user = data_setup.create_user()
group = data_setup.create_group(group_name='somegroup')
self.user.groups.append(group)
testutil.set_identity_user(self.user)
if not Distro.by_name(u'BlueShoeLinux5-5'):
data_setup.create_distro_tree(distro_name=u'BlueShoeLinux5-5')
data_setup.create_product(product_name=u'the_product')
示例15: save_tag
def save_tag(self, id=None, tag=None, *args, **kw):
try:
distro = Distro.by_id(id)
except InvalidRequestError:
flash(_(u"Invalid distro id %s" % id))
redirect(".")
if tag['text']:
distro.tags.append(tag['text'])
distro.activity.append(DistroActivity(
user=identity.current.user, service=u'WEBUI',
action=u'Added', field_name=u'Tag',
old_value=None, new_value=tag['text']))
flash(_(u"Added Tag %s" % tag['text']))
redirect("./view?id=%s" % id)