[OE-core] [PATCH] devtool: use cp instead of shutil.copytree
Ed Bartosh
ed.bartosh at linux.intel.com
Fri Dec 18 11:46:31 UTC 2015
Copied layers with 'cp -a' instead of calling shutil.copytree as
copytree fails to copy broken symlinks.
More pythonic fix would be to use copytree with 'ignore' parameter,
but this could slow down copying complex directory structures.
[YOCTO #8825]
Signed-off-by: Ed Bartosh <ed.bartosh at linux.intel.com>
---
scripts/lib/devtool/sdk.py | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/scripts/lib/devtool/sdk.py b/scripts/lib/devtool/sdk.py
index 85c0fb1..906038e 100644
--- a/scripts/lib/devtool/sdk.py
+++ b/scripts/lib/devtool/sdk.py
@@ -132,7 +132,10 @@ def sdk_update(args, config, basepath, workspace):
new_layers_dir = os.path.join(args.updateserver, 'layers')
old_layers_dir = os.path.join(basepath, 'layers')
shutil.rmtree(old_layers_dir)
- shutil.copytree(new_layers_dir, old_layers_dir)
+ ret = subprocess.call("cp -a %s %s" % (new_layers_dir, old_layers_dir), shell=True)
+ if ret != 0:
+ logger.error("Copying %s to %s failed" % (new_layers_dir, old_layers_dir))
+ return ret
else:
# devtool sdk-update http://myhost/sdk
tmpsdk_dir = '/tmp/sdk-ext'
--
2.1.4
More information about the Openembedded-core
mailing list