def import_static_values(): a = Arch(name='noarch', description='Architecture Independant') a.save() a = Arch(name='i386', description='32-bit Architecture\n\nIntel i386, AMD 386, or above.') a.save() a = Arch(name='i486', description='32-bit Architecture\n\nIntel 486, and AMD 486, along with other less known brands of 2nd Generation 32-bit CPUs') a.save() a = Arch(name='i586', description='32-bit Architecture\n\nPentiums MMX, AMD-K5.') a.save() a = Arch(name='i686', description='32-bit Architecture\n\nIntel Pentium Pro/II/III, AMD K6/Athlon/T-Bird/T-Bred/Duron') a.save() a = Arch(name='x86_64', description='64-bit Architecture') a.save()
def import_new_repo(path): repo = path[len(base_path) + 1:] repo_components = repo.split('/') # let's build the arch object repo_arch = repo_components[0] a = Arch.objects.filter(name=repo_arch) if not a: a = Arch(name=repo_arch) a.save() else: a = a[0] repo_name = repo_components[2] repo_ver = repo_components[1] # let's build the repo object (but check if it exists first) r = Repo.objects.filter(name=repo_name, arch=a) if not r: r = Repo(name=repo_name, version=repo_ver, modify_date=datetime.now()) r.save() r.arch.add(a) r.save() else: r = r[0] ''' # print some repository love print "Repo: %s" % (repo_components[2]) print " Arch: %s" % (repo_components[0]) print " Version: %s" % (repo_components[1]) print " Primary DB: %s" % (path) ''' # open the database for reading and scouring conn = sqlite3.connect(path) c = conn.cursor() c.execute('SELECT name, version, description, rpm_license, url, pkgId, pkgKey, arch, size_installed, size_package FROM packages') for l in c: # see if our package already exists p = Package.objects.filter(name=l[0]) if l[2] is None: package_description = ""; else: package_description = l[2] if l[4] is None: package_url = ""; else: package_url = l[4] ''' # print some package love print "Package: %s" % (l[0]) print " Version: %s" % (l[1]) print " URL: %s" % (package_url) print " Description: %s" % (l[2]) print " License: %s" % (l[3]) print " Installed Size: %s" % (l[5]) print " UUID: %s" % (l[6]) ''' # create as required if not p: p = Package(name=l[0], version=l[1], description=package_description, license=l[3], url=package_url, modify_date=datetime.now()) p.save() p_a = Arch.objects.filter(name=l[7]) if not p_a: p_a = Arch(name=l[7], description='unknown arch, please fix.') p_a.save() else: p_a = p_a[0] # establish the details specific to the package/arch/repo combination d = PackageArch(package=p, repo=r, arch=p_a, installed_size=l[8], package_size=l[9], package_uuid=l[5]) d.save() c.close()