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 <[email protected]> --- 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 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
