benchbuild.projects.gentoo package¶
Import all gentoo based modules.
All manually entered modules can be placed in the following import section. Portage_Gen based projects will be generated automatically as soon as we can find an index generated by portage info.
Submodules¶
benchbuild.projects.gentoo.autoportage module¶
benchbuild.projects.gentoo.bzip2 module¶
bzip2 experiment within gentoo chroot.
-
class
benchbuild.projects.gentoo.bzip2.
BZip2
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.gentoo.GentooGroup
app-arch/bzip2
-
DOMAIN
= 'app-arch'¶
-
NAME
= 'gentoo-bzip2'¶
-
VERSION
= '1.0.6'¶
-
test_archive
= 'compression.tar.gz'¶
-
test_url
= 'http://lairosiel.de/dist/'¶
-
testfiles
= ['text.html', 'chicken.jpg', 'control', 'input.source', 'liberty.jpg']¶
-
benchbuild.projects.gentoo.crafty module¶
crafty experiment within gentoo chroot.
benchbuild.projects.gentoo.eix module¶
eix experiment within gentoo chroot
-
class
benchbuild.projects.gentoo.eix.
Eix
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.gentoo.GentooGroup
Represents the package eix from the portage tree.
-
DOMAIN
= 'app-portage'¶
-
NAME
= 'eix'¶
-
benchbuild.projects.gentoo.gentoo module¶
The Gentoo module for running tests on builds from the portage tree.
This will install a stage3 image of gentoo together with a recent snapshot of the portage tree. For building / executing arbitrary projects successfully it is necessary to keep the installed image as close to the host system as possible. In order to speed up your experience, you can replace the stage3 image that we pull from the distfiles mirror with a new image that contains all necessary dependencies for your experiments. Make sure you update the hash alongside the gentoo image in benchbuild’s source directory.
-
class
benchbuild.projects.gentoo.gentoo.
GentooGroup
(exp)[source]¶ Bases:
benchbuild.project.Project
Gentoo ProjectGroup is the base class for every portage build.
-
CONTAINER
= <benchbuild.utils.container.Gentoo object>¶
-
GROUP
= 'gentoo'¶
-
SRC_FILE
= None¶
-
-
benchbuild.projects.gentoo.gentoo.
write_bashrc
(path)[source]¶ Write a valid gentoo bashrc file to :path:.
- Args:
- path - The output path of the make.conf
-
benchbuild.projects.gentoo.gentoo.
write_layout
(path)[source]¶ Write a valid gentoo layout file to :path:.
- Args:
- path - The output path of the layout.conf
benchbuild.projects.gentoo.gzip module¶
gzip experiment within gentoo chroot.
-
class
benchbuild.projects.gentoo.gzip.
GZip
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.gentoo.GentooGroup
app-arch/gzip
-
DOMAIN
= 'app-arch'¶
-
NAME
= 'gentoo-gzip'¶
-
test_archive
= 'compression.tar.gz'¶
-
test_url
= 'http://lairosiel.de/dist/'¶
-
testfiles
= ['text.html', 'chicken.jpg', 'control', 'input.source', 'liberty.jpg']¶
-
benchbuild.projects.gentoo.info module¶
Get package infos, e.g., specific ebuilds for given languages, from gentoo chroot.
-
class
benchbuild.projects.gentoo.info.
Info
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.autoportage.AutoPortage
Info experiment to retrieve package information from portage.
-
DOMAIN
= 'debug'¶
-
NAME
= 'gentoo-info'¶
-
benchbuild.projects.gentoo.lammps module¶
LAMMPS (sci-physics/lammps) project within gentoo chroot.
benchbuild.projects.gentoo.portage_gen module¶
Generic experiment to test portage packages within gentoo chroot.
-
class
benchbuild.projects.gentoo.portage_gen.
FuncClass
(name, domain, container)[source]¶ Bases:
object
Finds out the current version number of a gentoo package.
The package name is created by combining the domain and the name. Then uchroot is used to switch into a gentoo shell where the ‘emerge’ command is used to recieve the version number. The function then parses the version number back into the file.
- Args:
- Name: Name of the project. Domain: Categorie of the package.
-
benchbuild.projects.gentoo.portage_gen.
PortageFactory
(name, NAME, DOMAIN, BaseClass=<class 'benchbuild.projects.gentoo.autoportage.AutoPortage'>)[source]¶ Create a new dynamic portage project.
Auto-Generated projects can only be used for compilie-time experiments, because there simply is no run-time test defined for it. Therefore, we implement the run symbol as a noop (with minor logging).
This way we avoid the default implementation for run() that all projects inherit.
- Args:
- name: Name of the dynamic class. NAME: NAME property of the dynamic class. DOMAIN: DOMAIN property of the dynamic class. BaseClass: Base class to use for the dynamic class.
- Returns:
- A new class with NAME,DOMAIN properties set, unable to perform run-time tests.
- Examples:
>>> from benchbuild.projects.gentoo.portage_gen import PortageFactory >>> from benchbuild.experiments.empty import Empty >>> c = PortageFactory("test", "NAME", "DOMAIN") >>> c <class '__main__.test'> >>> i = c(Empty()) >>> i.NAME 'NAME' >>> i.DOMAIN 'DOMAIN'
benchbuild.projects.gentoo.postgresql module¶
postgresql experiment within gentoo chroot.
-
class
benchbuild.projects.gentoo.postgresql.
Postgresql
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.gentoo.GentooGroup
dev-db/postgresql
-
DOMAIN
= 'dev-db/postgresql'¶
-
NAME
= 'gentoo-postgresql'¶
-
benchbuild.projects.gentoo.sevenz module¶
p7zip experiment within gentoo chroot.
benchbuild.projects.gentoo.x264 module¶
media-video/x264-encoder within gentoo chroot.
-
class
benchbuild.projects.gentoo.x264.
X264
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.gentoo.GentooGroup
media-video/x264-encoder
-
DOMAIN
= 'media-libs'¶
-
NAME
= 'gentoo-x264'¶
-
inputfiles
= {'tbbt-small.y4m': [], 'Sintel.2010.720p.raw': ['--input-res', '1280x720']}¶
-
test_url
= 'http://lairosiel.de/dist/'¶
-
benchbuild.projects.gentoo.xz module¶
xz experiment within gentoo chroot.
-
class
benchbuild.projects.gentoo.xz.
XZ
(exp)[source]¶ Bases:
benchbuild.projects.gentoo.gentoo.GentooGroup
app-arch/xz
-
DOMAIN
= 'app-arch'¶
-
NAME
= 'gentoo-xz'¶
-
test_archive
= 'compression.tar.gz'¶
-
test_url
= 'http://lairosiel.de/dist/'¶
-
testfiles
= ['text.html', 'chicken.jpg', 'control', 'input.source', 'liberty.jpg']¶
-