Мне нужно сгенерировать какой-то манифест, основываясь на содержимом рецепта. Этот файл также необходимо развернуть в образе.
Чтобы сгенерировать файл, я видел во многих bbclasses , что функции кода Python используются аналогичным образом, например:
python do_create_manifest () {
[...]
filename = d.expand("${D}${LOC}/${MANIFEST_NAME}")
[...]
with open (filename,'w') as manifest_file:
json.dump(manifest_dict, manifest_file, indent=True)
os.chmod(filename, 0o644)
}
- Есть ли другой предпочтительный способ?
Файл создается после добавления зависимости задачи, однако, когда такой файл упакован, хост-пользователь -contacted предупреждение возникает в файле.
Несмотря на то, что я видел во многих рецептах использование:
chown -R root:root ${D}${...}/${...}
Это не помогает, так как chown должен быть запущен пользователем root, иbitbake запускается текущим пользователем:
Log data follows:
| DEBUG: Executing shell function do_uncontaminate
| chown: changing ownership of '/mnt/thud/build-r0w/[...]/manifest.json': Operation not permitted
| WARNING: exit code 1 from a shell command.
- Как бы исправить в этом случае предупреждение загрязненное пользователем хоста в этом случае?
Примечание: Я знаю, что это предотвратит появление предупреждения, но не решит проблему.
INSANE_SKIP_${PN} = "host-user-contaminated"