Previously the same issue was fixed for project view.
'Run again' button now restarts builds using target:task also in builds view.
[YOCTO #7442]
(Bitbake rev: ae6349a13f11b6fa90fe5603b000bef14ee0f2f0)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Task name was only shown for the latest builds in project view.
Now it should be shown also in builds view.
(Bitbake rev: 6492349d50a2048b1cbebab482bfd075bb48dd96)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Reworked filtering of config paths.
Stripped clone paths, topdir and its parent directory from the paths
to config files in configvars view.
[YOCTO #7463]
(Bitbake rev: 873087b11653848ec2704d67de5680a265b71eaa)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
All wic exceptions are now inherited from new base exception
class WicError. It makes them easy to maintain and catch.
Processing of exceptions is done this way:
Known wic exceptions cause wic to print error message to stdout.
Unknown exceptions are not catched anymore and produce standard
python traceback.
(From OE-Core rev: e5e2c18ce4344c14d9e52ece916333bd0a619281)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Printing only first 5 levels of wic traceback makes it almost
useless as the most valuable part of it is stripped.
(From OE-Core rev: f9b121d8295eb9e297627f4d623164b43349a638)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some native tools (syslinux, parted, mtools, etc) are required
by wic to produce images. Unit tests fail if the tools are
not available.
Baked tools and image-core-minimal used by wic before running tests.
[YOCTO #7730]
(From OE-Core rev: 379c9bb7ffae5b40c5450e968cdde600b6edd3f3)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bunch of os.remove calls were added to the partition.py lately.
They're causing wic to fail with OSError: [Errno 2] No such file or directory
if file doesn't exist.
Added check for file existence to all recently added calls of
os.remove. That should fix this regression.
(From OE-Core rev: 75162b05b5ad9aac307f7911caecb2b8a017acbf)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Current regex can cause false negatives if paths in bitbake log files
contain "ERR" or "Fail". do_rootfs fails with return code 1 in
this case.
Improved regexp is based on error messages produced by rpm.
Those are found by analyzing rpm source code.
[YOCTO #7789]
(From OE-Core rev: 38871dc0295fb2516e1c8b1dc9948c2d2fc4d2cd)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
'Run again' button now restarts the build using target:task if task
was specified for the build.
[YOCTO #7442]
(Bitbake rev: 420b197227394b341bcc1075bc298ecf2aabec46)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixed TypeError: not all arguments converted during string formatting
[YOCTO #7618]
(Bitbake rev: 308b5529d4e183d550221864bfdbefd31cc23705)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replaced tabs with 4 spaces.
Removed useless semicolons at the end of lines.
(Bitbake rev: 5bfe5eb0bf1e53ddb04c31e786e1ffc15542e6e8)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixed shell syntax not understood by zsh. Made toaster
script to work for both shells in both modes: sourced and
directly called.
[YOCTO #6964]
(Bitbake rev: e7b27843e2f37619dbe555a8883ac67f418f32dc)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Race condition between do_compile_kernelmodules and do_shared_workdir
tasks occurs when do_compile_kernelmodules changes files in
include/generated/* while do_shared_workdir tries to copy them to
shared working directory.
Fixed race by moving do_shared_workdir after do_compile but before
do_compile_kernelmodules.
[YOCTO #7321]
(From OE-Core rev: b4ec689f71fe9504559c1921c893f5e096d6b744)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Modified existing wic test modules to work with oe-selftest
infrastructure.
$ oe-selftest --run-tests wic
...
test01_help (oeqa.selftest.wic.Wic)
Test wic --help ... ok
test02_createhelp (oeqa.selftest.wic.Wic)
Test wic create --help ... ok
test03_listhelp (oeqa.selftest.wic.Wic)
Test wic list --help ... ok
test04_build_image_name (oeqa.selftest.wic.Wic)
Test wic create directdisk --image-name core-image-minimal ... ok
test05_build_artifacts (oeqa.selftest.wic.Wic)
Test wic create directdisk providing all artifacts. ... ok
----------------------------------------------------------------------
Ran 5 tests in 6.434s
OK
(From OE-Core rev: 2a7f16b19d78186ed6c2eb119ec102c645596b87)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Docstrings make nosetests output more clear:
Test wic create --help ... ok
Test wic --help ... ok
Test wic list --help ... ok
Test wic create directdisk providing all artifacts. ... ok
Test wic create directdisk --image-name core-image-minimal ... ok
(From OE-Core rev: 3a7ea88528619fdc9d2a0cc0d136e339126e8861)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Added 2 simple functional test cases to check if
wic is able to produce images using directdisk.wks
(From OE-Core rev: 7f33777ba5ffe9108309b6e3c3801b711adda4a0)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bitbake can parse ~ in bblayer's paths.
Added this functionality to oeqa code.
(From OE-Core rev: b4dc5b271247a1894d66908c5f20973be2a60d43)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Introduced build mtime cache structure. Reset it before the build
to prevent bitbake from crashing when build/tmp/stamps hierarchy
is removed.
[YOCTO: #7562]
(Bitbake rev: f8590547a198a78334debdf14bf40acb50c22ecc)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Used sys.exit instead of assigning exit code to
variable. This way it's more clear when bitbake
exists and which exit code is used.
(Bitbake rev: 5ecb8817bd49223652ede4fe513f1a42f2196798)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bitbake program and core versions must match.
Moved __version__ from main.py back to bin/bitbake.
Implemented check for version match in bin/bitbake.
(Bitbake rev: 2fe7d8c574ddf6a30278cff1a5a5c4089dc56d6d)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
tbs
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Some error messages were lost because BBMainException was
inherited from bb.BBHandledException. When bb.BBHandledException
is processed error messages are not printed as they suppose to
be printed before raising this exception.
Stopped to inherit BBMainException from bb.BBHandledException.
Handled BBMainException in bin/bitbake and printed error message
to the stderr.
(Bitbake rev: c8e2a40c4e9865ebef9936d23644f2602a5c90f5)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Reverted 7c0fd561bad0250a00cef63e3d787573112a59cf
Created separate group of hardlinks for the files inside
the same package. This should prevent stripped files to be
populated outside of package directories.
This turns out not to be straightforward and has overlap with the
other hardlink handling code in this area. The code is condensed
into a more concise and documented form.
[Original patch from Ed with tweaks from RP]
[YOCTO #7586]
(From OE-Core rev: 82d00f7254b7d3bb6a167d675d798134884d1b19)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wic is not using parted and other runtime dependencies from host
system anymore. It uses native tools instead. Removed host parted
from the list of requirements. Added instructions to build native
tools.
(From yocto-docs rev: ab22aff62bd9ffde3dfefe9fcabadc6e5aae7e31)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Here is what PEP8(Style Guide for Python Code) says about this:
Wildcard imports (from <module> import *) should be avoided, as they
make it unclear which names are present in the namespace, confusing
both readers and many automated tools.
(From OE-Core rev: 13416c1941f5dc8abcdb0073f2104a89eae2d6f1)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Implemented processing of ~ in bblayer's paths if HOME
environment variable is approved.
(Bitbake rev: 3b8a656d3ccb543c32696229184ebf12237ad38e)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Added bitbake error output to wic error message to make it
more descriptive.
[YOCTO #6911]
(From OE-Core rev: f68576d4c9cecbe7122325d7fc78c9b27ff07a8e)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Used exec_native_cmd instead of find_binary_path to run parted.
Got rid of find_binary_path as it's not used anywhere else.
There are several tools wic is trying to find not only in sysroot,
but also in host root. Parted is a special as on some distros it's
installed in /usr/sbin, which is not in the user's PATH. This makes
wic to fail with error "External command 'parted' not found, exiting."
[YOCTO #7122]
(From OE-Core rev: 76adf38c0d8e0faf04a5ecb3fcfbe831c85bb81f)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cd scripts && nosetests runs 3 simple tests and
produces nice test coverage report for wic codebase.
This infra can be used to test other scripts and modules.
(From OE-Core rev: 510dadc2cd8ff8a09932c101512dba74d4624a07)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Make it possible to call wic as an API from tests passing
command line parameters as arguments to main.
This is yet another enabler for wic unit testing.
(From OE-Core rev: 8cb9ac3751424d429a38f6f80d733b289b6684ea)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Using __file__ makes the code work independently of the way
it's loaded. In some cases wic can be imported by another
program without executing it. sys.argv[0] would not contain
path to the wic in such a cases.
This is an enabler for unit testing with nose framework.
(From OE-Core rev: 7166262032648dbbc8b4b476c8770e35b1d4e234)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Included name of the missing program into the error message produced
by exec_native_cmd when program is not found.
Removed mentioning of the host programs as this API is not running
them anymore.
(From OE-Core rev: 7d1599cf6a55d3624d2b90c1f55e14c4df73e570)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
exec_native_cmd should not use host paths in $PATH to
avoid finding and using host tools.
[YOCTO: #6204]
(From OE-Core rev: fa263f238bbddb00c9953994fb69cc358170e2ec)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-f/--build-rootfs option makes wic to run bitbake <image> to
produce rootfs. This option requires image name to be specified
with -e/--image-name.
(From OE-Core rev: 75ae0b7cf3863eb2857a2b6a7073beea626f751d)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Rpm database in staging area is used only by createrepo.
createrepo fails with the error
"rpmdb: BDB0060 PANIC: fatal region error detected"
if rpm database is broken during previous run of createrepo.
Made createrepo to create rpm db in $WORKDIR/rpmdb/ from scratch
for every build and architecture. This should potentially fix the
failure as every run of createrepo will be using separate db.
[YOCTO #6571]
(From OE-Core rev: fbaddd724855a829698d853a70eee86118d6a5e7)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
--dbpath option can be used in cases where users don't want
createrepo to use system rpm db to avoid possible collisiouns
with other programs.
For bitbake builds it would be possible to specify different
databases even for every createrepo run. Considering that rootfs
builds can run multiple createrepo in parallel, it can help to avoid
race conditions caused by accessing or creating the same rpm database
by multiple createrepo instances at the same time.
(From OE-Core rev: 7dc6d50ac1fc20a262b62330d950a8e30acdf0b6)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Moved most of functionality of bin/bitbake to lib/bb/main.py
to be able to call bitbake from python code.
(Bitbake rev: d377f7f88d73f4e5d2dffef03d6acee809827ac6)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Updated openSUSE distro names used in meta-yocto/conf/distro/poky.conf.
Currently used distro names cause bitbake to issue this warning on
all openSUSE systems:
WARNING: Host distribution "openSUSE-NN.N" has not been validated
with this version of the build system.
(From meta-yocto rev: 2d4e276f25bf70637f5a8762f363821643de2de3)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Moved parsing of /etc/os-release before parsing of
/etc/SuSE-release as /etc/SuSE-release is deprecated in
recent releases of OpenSuSE.
Here is the quote from /etc/SuSE-release:
/etc/SuSE-release is deprecated and will be removed in the future,
use /etc/os-release instead
(From OE-Core rev: b3852bebb850048389994993e3717e54020c662f)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Used default values of PSEUDO_* environment variables only
if variables are not set.
This allows to set custom PSEUDO_PREFIX and other pseudo
variables in order to use pseudo database from non-standard
locations.
Change-Id: I0bc1af5e521121d1f96d590cb6edb23cf0cb0b83
(From OE-Core rev: cd121c06e9de8951d507998be443f95f0edc246a)
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replaced texinfo -> makeinfo in the list of essential packages for
OpenSUSE.
texinfo was in the essentials to only provide makeinfo utility.
/usr/bin/makeinfo is provided by makeinfo package on OpenSUSE distro, so
it's enough to install makeinfo to be able to build poky.
This change reduces number of packages installed on the host system as
installing texinfo causes installation of around 1500 texlive-*
packages and requires around 1Gb of additional disk space on OpenSUSE.
(From yocto-docs rev: dce793a2ac0a781ae074f3eb7ad34fbdb65dc3ea)
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>