Exemple #1
0
    def adddevice(self, **kw):
	"""Add a driver to a device and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	driver = Driver.by_driver_id(kw['driver_id'])
	device = Device.by_device_name(kw['device'])
	driver.devices.append(device)
	DBSession.flush()
	redirect("/drivers/"+driver.name)
Exemple #2
0
    def addsystem(self, **kw):
	"""Add a system to a device and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	device = Device.by_device_id(kw['device_id'])
	system = System.by_system_name(kw['system'])
	device.systems.append(system)
	DBSession.flush()
	redirect("/devices/"+device.name)
Exemple #3
0
    def addalias(self, **kw):
	"""Create a new device alias and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	alias = kw['alias']
	device = Device.by_device_id(kw['device_id'])
	owner = device.state.owner
	comment = alias
	devicealias = DeviceAlias()
	devicealias.alias = alias
	devicealias.device = device
	devicealias.state.creator = user
	devicealias.state.owner = owner
	devicealias.comments.append(Comment(comment=comment))
	DBSession.add(device)
	DBSession.flush()
	redirect("/devices/"+device.name)
Exemple #4
0
    def create(self, **kw):
	"""Create a new drivertype and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	drivertype = DriverType()
	drivertype.name = name
	drivertype.state.creator = user
	drivertype.state.owner = owner
	drivertype.comments.append(Comment(comment=comment))
	DBSession.add(drivertype)
	DBSession.flush()
	redirect("index")
Exemple #5
0
    def index(self):
	admin=False
	if predicates.not_anonymous():
		if predicates.has_permission('admin'):
			admin=True
	drivers = DBSession.query(Driver).order_by('name')
	return dict(drivers=drivers, num_items=drivers.count(),
		    admin=admin)
Exemple #6
0
    def get_all_users(cls):
	"""
	Return a list of all users known to the system.
	"""

	users = DBSession.query(User)

	return users
Exemple #7
0
    def index(self):
	admin=False
	if predicates.not_anonymous():
		if predicates.has_permission('admin'):
			admin=True
	kernels = DBSession.query(Kernel).order_by('name')
	return dict(kernels=kernels, num_items=kernels.count(),
		    admin=admin)
Exemple #8
0
    def index(self):
	admin=False
	if predicates.not_anonymous():
		if predicates.has_permission('admin'):
			admin=True
	osfamilies = DBSession.query(OSFamily).order_by('name')
	return dict(osfamilies=osfamilies, num_items=osfamilies.count(),
		    admin=admin)
Exemple #9
0
    def index(self):
	admin=False
	if predicates.not_anonymous():
		if predicates.has_permission('admin'):
			admin=True
	arches = DBSession.query(Arch).order_by('name')
	return dict(arches=arches, num_items=arches.count(),
		    admin=admin)
Exemple #10
0
    def create(self, **kw):
	"""Create a new osfamily and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	vendor = Vendor.by_vendor_name(kw['vendor'])
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	osfamily = OSFamily()
	osfamily.name = name
	osfamily.vendor = vendor
	osfamily.state.creator = user
	osfamily.state.owner = owner
	osfamily.comments.append(Comment(comment=comment))
	DBSession.add(osfamily)
	DBSession.flush()
	redirect("index")
Exemple #11
0
    def addmeta(self, **kw):
	"""Create a new device alias and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	driverbuild = DriverBuild.by_driverbuild_id(kw['driverbuild_id'])
	tag = kw['tag']
	value = kw['value']
	owner = driverbuild.state.owner
	comment = tag
	driverbuildmeta = DriverBuildMeta()
	driverbuildmeta.driverbuild = driverbuild
	driverbuildmeta.tag = tag
	driverbuildmeta.value = value
	driverbuildmeta.state.creator = user
	driverbuildmeta.state.owner = owner
	driverbuildmeta.comments.append(Comment(comment=comment))
	DBSession.add(driverbuildmeta)
	DBSession.flush()
	redirect("/drivers/"+driverbuild.driver.name)
Exemple #12
0
    def create(self, **kw):
	"""Create a new vendor and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	website = kw['website']
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	vendor = Vendor()
	vendor.name = name
	vendor.website = website
	vendor.state.creator = user
	vendor.state.owner = owner
	vendor.comments.append(Comment(comment=comment))
	DBSession.add(vendor)
	DBSession.flush()
	redirect("index")
Exemple #13
0
	def by_osfamily_name(cls, name):
		"""Return the osfamily object whose name is "name"."""
		
		result = DBSession.query(cls).filter(cls.name==name).first()
		if result:
			return result
		else:
			name = Name.by_name(name)
			if not name:
				return None
			osfamily = name.osfamilies()[0]
			return osfamily
Exemple #14
0
	def by_system_name(cls, name):
		"""Return the system object whose name is "name"."""
		
		result = DBSession.query(cls).filter(cls.name==name).first()
		if result:
			return result
		else:
			name = Name.by_name(name)
			if not name:
				return None
			system = name.systems()[0]
			return system
Exemple #15
0
	def by_arch_name(cls, name):
		"""Return the arch object whose name is "name"."""
		
		result = DBSession.query(cls).filter(cls.name==name).first()
		if result:
			return result
		else:
			name = Name.by_name(name)
			if not name:
				return None
			arch = name.arches()[0]
			return arch
Exemple #16
0
	def by_vendor_name(cls, name):
		"""Return the vendor object whose name is "name"."""
		
		result = DBSession.query(cls).filter(cls.name==name).first()
		if result:
			return result
		else:
			name = Name.by_name(name)
			if not name:
				return None
			vendor = name.vendors()[0]
			return vendor
Exemple #17
0
    def create(self, **kw):
	"""Create a new license and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	if kw['free']=='True':
		free=True
	else:
		free=False
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	license = License()
	license.name = name
	license.free = free
	license.state.creator = user
	license.state.owner = owner
	license.comments.append(Comment(comment=comment))
	DBSession.add(license)
	DBSession.flush()
	redirect("index")
Exemple #18
0
    def create(self, **kw):
	"""Create a new kernel and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	arch = Arch.by_arch_name(kw['arch'])
	osrelease = OSRelease.by_osrelease_name(kw['osrelease'])
	vendor = Vendor.by_vendor_name(kw['vendor'])
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	kernel = Kernel()
	kernel.name = name
	kernel.arch = arch
	kernel.osrelease = osrelease
	kernel.vendor = vendor
	kernel.state.creator = user
	kernel.state.owner = owner
	kernel.comments.append(Comment(comment=comment))
	DBSession.add(kernel)
	DBSession.flush()
	redirect("index")
Exemple #19
0
    def create(self, **kw):
	"""Create a new driverbuild and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	driver = Driver.by_driver_id(kw['driver_id'])
	kernel = Kernel.by_kernel_name(kw['kernel'])
	vendor = Vendor.by_vendor_name(kw['vendor'])
	version = kw['version']
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	driverbuild = DriverBuild()
	driverbuild.driver = driver
	driverbuild.kernel = kernel
	driverbuild.vendor = vendor
	driverbuild.version = version
	driverbuild.state.creator = user
	driverbuild.state.owner = owner
	driverbuild.comments.append(Comment(comment=comment))
	DBSession.add(driverbuild)
	DBSession.flush()
	redirect("/drivers/"+driver.name)
Exemple #20
0
    def create(self, **kw):
	"""Create a new device and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	vendor = Vendor.by_vendor_name(kw['vendor'])
	systemfamily = SystemFamily.by_systemfamily_name(kw['family'])
	version = kw['version']
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	system = System()
	system.name = name
	system.vendor = vendor
	system.systemfamily = systemfamily
	system.version = version
	system.state.creator = user
	system.state.owner = owner
	system.comments.append(Comment(comment=comment))
	DBSession.add(system)
	DBSession.flush()
	redirect("index")
Exemple #21
0
    def create(self, **kw):
	"""Create a new device and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	vendor = Vendor.by_vendor_name(kw['vendor'])
	devicetype = DeviceType.by_devicetype_name(kw['type'])
	version = kw['version']
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	device = Device()
	device.name = name
	device.vendor = vendor
	device.devicetype = devicetype
	device.version = version
	device.state.creator = user
	device.state.owner = owner
	device.comments.append(Comment(comment=comment))
	DBSession.add(device)
	DBSession.flush()
	redirect("index")
Exemple #22
0
	def by_osrelease_osfamily_and_version(cls, osfamily, version):
		"""Return the osrelease object from osfamily whose name is "name"."""

		result = DBSession.query(cls).filter(and_(cls.osfamily==osfamily,cls.version==version)).first()
		if result:
			return result
		else:
			version = Name.by_name(version)
			if not version:
				return None
			for osrelease in version.osreleases:
				if osrelease.osfamily==osfamily:
					return osrelease
			return None
Exemple #23
0
	def by_system_vendor_and_name(cls, vendor, name):
		"""Return the system object from vendor whose name is "name"."""

		result = DBSession.query(cls).filter(and_(cls.vendor==vendor,cls.name==name)).first()
		if result:
			return result
		else:
			name = Name.by_name(name)
			if not name:
				return None
			for system in name.systems:
				if system.vendor==vendor:
					return system
			return None
Exemple #24
0
	def by_kernel_osrelease_arch_and_name(cls, osrelease, arch, name):
		"""Return the kernel object from osrelease for arch whose name is "name"."""

		result = DBSession.query(cls).filter(and_(cls.osrelease==osrelease,and_(cls.arch==arch,cls.name==name))).first()
		if result:
			return result
		else:
			name = Name.by_name(name)
			if not name:
				return None
			for kernel in name.kernels:
				if kernel.osrelease==osrelease and kernel.arch==arch:
					return kernel
			return None
Exemple #25
0
    def create(self, **kw):
	"""Create a new driver and save it to the database."""
	user = request.environ.get('repoze.who.identity')['user']
	name = kw['name']
	drivertype = DriverType.by_drivertype_name(kw['type'])
	license = License.by_license_name(kw['license'])
	vendor = Vendor.by_vendor_name(kw['vendor'])
	version = kw['version']
	comment = kw['comment']
	owner = User.by_user_name(kw['owner'])
	if comment == "":
		comment = name
	driver = Driver()
	driver.name = name
	driver.drivertype = drivertype
	driver.license = license
	driver.vendor = vendor
	driver.version = version
	driver.state.creator = user
	driver.state.owner = owner
	driver.comments.append(Comment(comment=comment))
	DBSession.add(driver)
	DBSession.flush()
	redirect("index")
Exemple #26
0
 def setup(self):
     try:
         new_attrs = {}
         new_attrs.update(self.attrs)
         new_attrs.update(self.do_get_dependencies())
         self.obj = self.klass(**new_attrs)
         DBSession.add(self.obj)
         DBSession.flush()
         return self.obj
     except:
         DBSession.rollback()
         raise
Exemple #27
0
	def get_all_devices(cls):
		"""Return a list of all devices known to the system."""

		devices = DBSession.query(Device)

		return devices
Exemple #28
0
	def by_device_id(cls, id):
		"""Return the device object whose id is "id"."""
		return DBSession.query(cls).filter(cls.device_id==id).first()
Exemple #29
0
	def by_device_name(cls, name):
		"""Return the device object whose name is "name"."""
		return DBSession.query(cls).filter(cls.name==name).first()
Exemple #30
0
	def get_all_kernels(cls):
		"""Return a list of all kernels known to the system."""

		kernels = DBSession.query(Kernel)

		return kernels