def makeFakeRPM(repo_dir, name, epoch, version, release, files=None, provides=None): """Make a fake rpm file in repo_dir""" if provides is None: provides = [] p = SimpleRpmBuild(name, version, release) if epoch: p.epoch = epoch if not files: p.add_simple_payload_file_random() else: # Make a number of fake file entries in the rpm for f in files: p.add_installed_file(installPath=f, sourceFile=SourceFile(os.path.basename(f), "THIS IS A FAKE FILE")) for c in provides: p.add_provides(c) with in_tempdir("lorax-test-rpms."): p.make() rpmfile = p.get_built_rpm(expectedArch) shutil.move(rpmfile, repo_dir)
def make_rpm(outdir, name='test', version='1.0', release='1', arch=None, for_anaconda_ver=None, for_kernel_ver=None, payload=None): p = SimpleRpmBuild(name, version, release) if for_anaconda_ver: p.add_provides('installer-enhancement = %s' % for_anaconda_ver) if for_kernel_ver: p.add_provides('kernel-modules >= %s' % for_kernel_ver) if payload is None: payload = [] for item in payload: p.add_installed_file(item.path, SourceFile(item.srcpath, item.contents), **item.kwargs) with in_tempdir("anaconda-test-dd."): p.make() rpmfile = p.get_built_rpm(arch or expectedArch) outfile = os.path.join(outdir, os.path.basename(rpmfile)) shutil.move(rpmfile, outfile) return p
def make_fake_rpm(outdir, name, epoch, version, release, requires=None, provides=None): p = SimpleRpmBuild(name, version, release) if epoch: p.epoch = epoch if requires: p.add_requires(requires) if provides: p.add_provides(provides) with in_tempdir("bdcs-test-rpms."): p.make() rpmfile = p.get_built_rpm(expectedArch) shutil.move(rpmfile, os.path.join(outdir, os.path.basename(rpmfile)))
rpm.add_requires('TestM') pkgs.append(rpm) # Used for remove tests. Multiple packages require TestM therefore TestM cannot be removed if package is required by # other package. rpm = SimpleRpmBuild('TestM', '1.0.0', '1', ['noarch']) pkgs.append(rpm) # Requirement of TestK and TestL. rpm = SimpleRpmBuild('TestN', '1.0.0', '1', ['noarch']) pkgs.append(rpm) # Used in upgrade tests rpm = SimpleRpmBuild('TestO', '1.0.0', '1', ['noarch']) rpm.add_requires('TestC') rpm.add_provides('ProvideA') pkgs.append(rpm) repo = YumRepoBuild(pkgs) repo.repoDir = repo_dir repo.make("noarch") shutil.rmtree(temp_dir) shutil.rmtree(os.path.join(repo_dir, 'repodata')) subprocess.check_call(['createrepo_c', '-g', work_dir + '/comps-f23.xml', repo_dir]) print("DNF repo is located at %s" % repo.repoDir)
if not os.path.exists(temp_dir): os.makedirs(temp_dir) os.chdir(temp_dir) pkgs = [] rpm = SimpleRpmBuild('TestA', '1.0.0', '1', ['noarch']) pkgs.append(rpm) rpm = SimpleRpmBuild('TestA', '3.0.0', '1', ['noarch']) pkgs.append(rpm) rpm = SimpleRpmBuild('TestB', '1.0.0', '1', ['noarch']) rpm.add_provides('TestA = 2.0.0') rpm.add_obsoletes('TestA < 2.0.0') pkgs.append(rpm) rpm = SimpleRpmBuild('TestC', '1.0.0', '1', ['noarch']) rpm.add_provides('TestA = 4.0.0') pkgs.append(rpm) rpm = SimpleRpmBuild('TestD', '1.0.0', '1', ['noarch']) pkgs.append(rpm) rpm = SimpleRpmBuild('TestE', '1.0.0', '1', ['noarch']) rpm.add_provides('TestD = 2.0.0') rpm.add_obsoletes('TestD < 2.0.0') pkgs.append(rpm)
rpm.add_requires('TestM') pkgs.append(rpm) # Used for remove tests. Multiple packages require TestM therefore TestM cannot be removed if package is required by # other package. rpm = SimpleRpmBuild('TestM', '1.0.0', '1', ['noarch']) pkgs.append(rpm) # Requirement of TestK and TestL. rpm = SimpleRpmBuild('TestN', '1.0.0', '1', ['noarch']) pkgs.append(rpm) # Used in upgrade tests rpm = SimpleRpmBuild('TestO', '1.0.0', '1', ['noarch']) rpm.add_requires('TestC') rpm.add_provides('ProvideA') pkgs.append(rpm) repo = YumRepoBuild(pkgs) repo.repoDir = repo_dir repo.make("noarch") shutil.rmtree(temp_dir) shutil.rmtree(os.path.join(repo_dir, 'repodata')) subprocess.check_call( ['createrepo_c', '-g', work_dir + '/comps-f23.xml', repo_dir])
os.makedirs(repo_dir) if not os.path.exists(temp_dir): os.makedirs(temp_dir) os.chdir(temp_dir) pkgs = [] rpm = SimpleRpmBuild('TestA', '1.0.0', '1', ['noarch']) pkgs.append(rpm) rpm = SimpleRpmBuild('TestA', '3.0.0', '1', ['noarch']) pkgs.append(rpm) rpm = SimpleRpmBuild('TestB', '1.0.0', '1', ['noarch']) rpm.add_provides('TestA = 2.0.0') rpm.add_obsoletes('TestA < 2.0.0') pkgs.append(rpm) rpm = SimpleRpmBuild('TestC', '1.0.0', '1', ['noarch']) rpm.add_provides('TestA = 4.0.0') pkgs.append(rpm) rpm = SimpleRpmBuild('TestD', '1.0.0', '1', ['noarch']) pkgs.append(rpm) rpm = SimpleRpmBuild('TestE', '1.0.0', '1', ['noarch']) rpm.add_provides('TestD = 2.0.0') rpm.add_obsoletes('TestD < 2.0.0') pkgs.append(rpm)