bitbake: toaster: Fix oe-core fixture

Due to a copy paste error we managed to get some of the wrong
information in the oe fixture that provides a suggested default settings
for Toaster. This meant it tested correctly when it shouldn't have.
Fix:
 - The use of local bitbake
 - An incorrect call to realpath which didn't include its parent module.
 - The field used for the local_dir of an existing openembedded-core

(Bitbake rev: d57a9124650e5367919668dfccf6aad4962a77f1)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Michael Wood 2016-08-22 16:42:32 +01:00 committed by Richard Purdie
parent 50a8d3a34c
commit 3b87f2895a
5 changed files with 34 additions and 25 deletions

View File

@ -98,8 +98,12 @@ class LocalhostBEController(BuildEnvironmentController):
# 1. get a list of repos with branches, and map dirpaths for each layer
gitrepos = {}
gitrepos[(bitbake.giturl, bitbake.commit)] = []
gitrepos[(bitbake.giturl, bitbake.commit)].append( ("bitbake", bitbake.dirpath) )
# if we're using a remotely fetched version of bitbake add its git
# details to the list of repos to clone
if bitbake.giturl and bitbake.commit:
gitrepos[(bitbake.giturl, bitbake.commit)] = []
gitrepos[(bitbake.giturl, bitbake.commit)].append(
("bitbake", bitbake.dirpath))
for layer in layers:
# We don't need to git clone the layer for the CustomImageRecipe
@ -142,8 +146,6 @@ class LocalhostBEController(BuildEnvironmentController):
logger.info("Using pre-checked out source for layer %s", cached_layers)
# 3. checkout the repositories
for giturl, commit in gitrepos.keys():
localdirname = os.path.join(self.be.sourcedir, self.getGitCloneDirectory(giturl, commit))

View File

@ -84,8 +84,9 @@ class Command(NoArgsCommand):
print("Loading OE-Core configuration")
call_command("loaddata", "oe-core")
if template_conf:
oe_core_path = os.realpath(template_conf +
"/../")
oe_core_path = os.path.realpath(
template_conf +
"/../")
else:
print("TEMPLATECONF not found. You may have to"
" manually configure layer paths")
@ -94,8 +95,9 @@ class Command(NoArgsCommand):
"layer: ")
# Update the layer instances of openemebedded-core
for layer in Layer.objects.filter(
name="openembedded-core"):
layer.local_source_dir = oe_core_path
name="openembedded-core",
local_source_dir="OE-CORE-LAYER-DIR"):
layer.local_path = oe_core_path
layer.save()
# Import the custom fixture if it's present

View File

@ -1,17 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<django-objects version="1.0">
<!-- Set the project default value for DISTRO -->
<object model="orm.toastersetting" pk="1">
<field type="CharField" name="name">DEFCONF_DISTRO</field>
<field type="CharField" name="value">nodistro</field>
</object>
<!-- Bitbake versions which correspond to the metadata release -->
<object model="orm.bitbakeversion" pk="1">
<field type="CharField" name="name">master</field>
<field type="CharField" name="giturl">git://git.openembedded.org/bitbake</field>
<field type="CharField" name="branch">master</field>
<field type="CharField" name="dirpath">bitbake</field>
</object>
<object model="orm.bitbakeversion" pk="2">
<field type="CharField" name="name">HEAD</field>
<field type="CharField" name="giturl">git://git.openembedded.org/bitbake</field>
<field type="CharField" name="branch">HEAD</field>
<field type="CharField" name="dirpath">bitbake</field>
</object>
<!-- Releases available -->
@ -43,15 +45,15 @@
<!-- TYPE_LOCAL = 0 Layers for the Local release -->
<object model="orm.layer" pk="1">
<field type="CharField" name="name">openembedded-core</field>
<field type="CharField" name="layer_index_url"></field>
<field type="CharField" name="vcs_url">git://git.openembedded.org/openembedded-core</field>
</object>
<object model="orm.layer_version" pk="1">
<field rel="ManyToOneRel" to="orm.layer" name="layer">1</field>
<field type="IntegerField" name="layer_source">0</field>
<field rel="ManyToOneRel" to="orm.release" name="release">2</field>
<field type="CharField" name="local_path">OE-CORE-LAYER-DIR</field>
<field type="CharField" name="branch">HEAD</field>
<field type="CharField" name="commit">HEAD</field>
<field type="CharField" name="dirpath">meta</field>
<field type="IntegerField" name="layer_source">0</field>
</object>
</django-objects>

View File

@ -1,5 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<django-objects version="1.0">
<!-- Set the project default value for DISTRO -->
<object model="orm.toastersetting" pk="1">
<field type="CharField" name="name">DEFCONF_DISTRO</field>
<field type="CharField" name="value">poky</field>
</object>
<!-- Bitbake versions which correspond to the metadata release -->
<object model="orm.bitbakeversion" pk="1">
<field type="CharField" name="name">master</field>

View File

@ -1,34 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<django-objects version="1.0">
<!-- Default project settings -->
<object model="orm.toastersetting" pk="1">
<!-- pk=1 is DISTRO -->
<object model="orm.toastersetting" pk="2">
<field type="CharField" name="name">DEFAULT_RELEASE</field>
<field type="CharField" name="value">master</field>
</object>
<object model="orm.toastersetting" pk="2">
<object model="orm.toastersetting" pk="3">
<field type="CharField" name="name">DEFCONF_PACKAGE_CLASSES</field>
<field type="CharField" name="value">package_rpm</field>
</object>
<object model="orm.toastersetting" pk="3">
<object model="orm.toastersetting" pk="4">
<field type="CharField" name="name">DEFCONF_MACHINE</field>
<field type="CharField" name="value">qemux86</field>
</object>
<object model="orm.toastersetting" pk="4">
<object model="orm.toastersetting" pk="5">
<field type="CharField" name="name">DEFCONF_SSTATE_DIR</field>
<field type="CharField" name="value">${TOPDIR}/../sstate-cache</field>
</object>
<object model="orm.toastersetting" pk="5">
<object model="orm.toastersetting" pk="6">
<field type="CharField" name="name">DEFCONF_IMAGE_INSTALL_append</field>
<field type="CharField" name="value"></field>
</object>
<object model="orm.toastersetting" pk="6">
<object model="orm.toastersetting" pk="7">
<field type="CharField" name="name">DEFCONF_IMAGE_FSTYPES</field>
<field type="CharField" name="value">ext3 jffs2 tar.bz2</field>
</object>
<object model="orm.toastersetting" pk="7">
<field type="CharField" name="name">DEFCONF_DISTRO</field>
<field type="CharField" name="value">poky</field>
</object>
<object model="orm.toastersetting" pk="8">
<field type="CharField" name="name">DEFCONF_DL_DIR</field>
<field type="CharField" name="value">${TOPDIR}/../downloads</field>