Improve support for packages_from_raw_bash

Co-authored-by: Alexandre Aubin <4533074+alexAubin@users.noreply.github.com>
This commit is contained in:
tituspijean 2023-10-15 16:46:24 +02:00 committed by GitHub
parent 96e99459e6
commit a69b80972e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1109,10 +1109,10 @@ class AptDependenciesAppResource(AppResource):
out, err = self.check_output_bash_snippet(values.get("packages_from_raw_bash")) out, err = self.check_output_bash_snippet(values.get("packages_from_raw_bash"))
if err: if err:
logger.error( logger.error(
"Error while running apt resource packages_from_raw_bash snippet for '" + str(key) + "' extras:" f"Error while running apt resource packages_from_raw_bash snippet for '{key}' extras:"
) )
logger.error(err) logger.error(err)
values["packages"] = [value.strip() for value in out.split("\n")] values["packages"] = values.get("packages", []) + [value.strip() for value in out.split("\n")]
if ( if (
not isinstance(values.get("repo"), str) not isinstance(values.get("repo"), str)
@ -1126,6 +1126,9 @@ class AptDependenciesAppResource(AppResource):
"In apt resource in the manifest: 'extras' repo should have the keys 'repo', 'key' defined as strings, 'packages' defined as list or 'packages_from_raw_bash' defined as string", "In apt resource in the manifest: 'extras' repo should have the keys 'repo', 'key' defined as strings, 'packages' defined as list or 'packages_from_raw_bash' defined as string",
raw_msg=True, raw_msg=True,
) )
# Drop 'extras' entries associated to no packages
self.extras = {key: value for key, values in self.extras.items() if values["packages"]}
def provision_or_update(self, context: Dict = {}): def provision_or_update(self, context: Dict = {}):
script = " ".join(["ynh_install_app_dependencies", *self.packages]) script = " ".join(["ynh_install_app_dependencies", *self.packages])