summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/sanity.bbclass20
1 files changed, 13 insertions, 7 deletions
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 9c3ab1ff2e..e2095ddd48 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -54,9 +54,12 @@ python check_bblayers_conf() {
54 f.write(''.join(lines)) 54 f.write(''.join(lines))
55} 55}
56 56
57def raise_sanity_error(msg, d): 57def raise_sanity_error(msg, d, network_error=False):
58 if d.getVar("SANITY_USE_EVENTS", True) == "1": 58 if d.getVar("SANITY_USE_EVENTS", True) == "1":
59 bb.event.fire(bb.event.SanityCheckFailed(msg), d) 59 try:
60 bb.event.fire(bb.event.SanityCheckFailed(msg, network_error), d)
61 except TypeError:
62 bb.event.fire(bb.event.SanityCheckFailed(msg), d)
60 return 63 return
61 64
62 bb.fatal(""" OE-core's config sanity checker detected a potential misconfiguration. 65 bb.fatal(""" OE-core's config sanity checker detected a potential misconfiguration.
@@ -169,8 +172,9 @@ def check_sanity_tmpdir_change(tmpdir, data):
169 # Check that TMPDIR isn't on a filesystem with limited filename length (eg. eCryptFS) 172 # Check that TMPDIR isn't on a filesystem with limited filename length (eg. eCryptFS)
170 testmsg = check_create_long_filename(tmpdir, "TMPDIR") 173 testmsg = check_create_long_filename(tmpdir, "TMPDIR")
171 # Check that we can fetch from various network transports 174 # Check that we can fetch from various network transports
175 errmsg = check_connectivity(data)
172 testmsg = testmsg + check_connectivity(data) 176 testmsg = testmsg + check_connectivity(data)
173 return testmsg 177 return testmsg, errmsg == ""
174 178
175def check_sanity_version_change(data): 179def check_sanity_version_change(data):
176 # Sanity checks to be done when SANITY_VERSION changes 180 # Sanity checks to be done when SANITY_VERSION changes
@@ -534,16 +538,18 @@ def check_sanity(sanity_data):
534 last_sstate_dir = line.split()[1] 538 last_sstate_dir = line.split()[1]
535 539
536 sanity_version = int(sanity_data.getVar('SANITY_VERSION', True) or 1) 540 sanity_version = int(sanity_data.getVar('SANITY_VERSION', True) or 1)
541 network_error = False
537 if last_sanity_version < sanity_version: 542 if last_sanity_version < sanity_version:
538 messages = messages + check_sanity_version_change(sanity_data) 543 messages = messages + check_sanity_version_change(sanity_data)
539 messages = messages + check_sanity_tmpdir_change(tmpdir, sanity_data) 544 err, network_error = check_sanity_tmpdir_change(tmpdir, sanity_data)
545 messages = messages + err
540 messages = messages + check_sanity_sstate_dir_change(sstate_dir, sanity_data) 546 messages = messages + check_sanity_sstate_dir_change(sstate_dir, sanity_data)
541 else: 547 else:
542 if last_tmpdir != tmpdir: 548 if last_tmpdir != tmpdir:
543 messages = messages + check_sanity_tmpdir_change(tmpdir, sanity_data) 549 err, network_error = check_sanity_tmpdir_change(tmpdir, sanity_data)
550 messages = messages + err
544 if last_sstate_dir != sstate_dir: 551 if last_sstate_dir != sstate_dir:
545 messages = messages + check_sanity_sstate_dir_change(sstate_dir, sanity_data) 552 messages = messages + check_sanity_sstate_dir_change(sstate_dir, sanity_data)
546
547 if os.path.exists("conf") and not messages: 553 if os.path.exists("conf") and not messages:
548 f = file(sanityverfile, 'w') 554 f = file(sanityverfile, 'w')
549 f.write("SANITY_VERSION %s\n" % sanity_version) 555 f.write("SANITY_VERSION %s\n" % sanity_version)
@@ -614,7 +620,7 @@ def check_sanity(sanity_data):
614 messages = messages + "Error, you have a space in your COREBASE directory path. Please move the installation to a directory which doesn't include a space." 620 messages = messages + "Error, you have a space in your COREBASE directory path. Please move the installation to a directory which doesn't include a space."
615 621
616 if messages != "": 622 if messages != "":
617 raise_sanity_error(sanity_data.expand(messages), sanity_data) 623 raise_sanity_error(sanity_data.expand(messages), sanity_data, network_error)
618 624
619# Create a copy of the datastore and finalise it to ensure appends and 625# Create a copy of the datastore and finalise it to ensure appends and
620# overrides are set - the datastore has yet to be finalised at ConfigParsed 626# overrides are set - the datastore has yet to be finalised at ConfigParsed