summaryrefslogtreecommitdiffstats
path: root/meta/files
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@xilinx.com>2021-03-25 19:16:44 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-03-31 00:05:43 +0100
commite207dabdfaa07cd5ebba1cd7dd58610f7185c7e2 (patch)
tree99252e68d7a2ca1090f970ac7ec0d81ad1e15dc0 /meta/files
parenta1ce702bb5317712083ae32332051c36923c4a50 (diff)
downloadopenembedded-core-e207dabdfaa07cd5ebba1cd7dd58610f7185c7e2.tar.gz
populate_sdk_ext: Add support for PR service
In the classes/populate_sdk_ext.bbclass the system already copies a number of configurations, such as the hash equivalency data. However, the PR service was being handled. The new code works by checking if PRSERV_HOST is defined, if it is, use the existing export functions to write out a conf/prserv.inc file into the eSDK. On eSDK install, if a conf/prserv.inc file is present we then import this file into the system. This mechanism will work if the PRSERV_HOST is local or remote, as it pulls the necessary data from the server and then imports it to a local database on eSDK installation. Note: the conf/prserv.inc file is not deleted at this time. It was left for possible debugging purposes, but removing it is something we could decide to do in the future. Signed-off-by: Mark Hatle <mark.hatle@xilinx.com> Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/files')
-rw-r--r--meta/files/ext-sdk-prepare.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/meta/files/ext-sdk-prepare.py b/meta/files/ext-sdk-prepare.py
index 163d5e9912..d191e5e19c 100644
--- a/meta/files/ext-sdk-prepare.py
+++ b/meta/files/ext-sdk-prepare.py
@@ -44,6 +44,23 @@ def main():
sdk_targets = []
else:
sdk_targets = ' '.join(sys.argv[2:]).split()
+
+ prserv = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'conf', 'prserv.inc')
+ if os.path.isfile(prserv):
+ with open(logfile, 'a') as logf:
+ logf.write('Importing PR data...\n')
+
+ ret = run_command_interruptible('bitbake-prserv-tool import %s' % prserv)
+
+ lastlog = get_last_consolelog()
+ if lastlog:
+ with open(lastlog, 'r') as f:
+ for line in f:
+ logf.write(line)
+ if ret:
+ print('ERROR: PR data import failed: error log written to %s' % logfile)
+ return ret
+
if not sdk_targets:
# Just do a parse so the cache is primed
ret = run_command_interruptible('bitbake -p --quiet')