X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=PLC%2FMethods%2FGetBootMedium.py;fp=PLC%2FMethods%2FGetBootMedium.py;h=a9f9405129674d3d75ff0d67cf3e680f5f66d1e8;hb=c3d614f7f131b986e6193960032b0a50ff1fd624;hp=203b9680257f037e73890d7dc4db161c675b0ec8;hpb=bf1ee443b4322709f445a6f94c53c4c1a6cafa90;p=plcapi.git diff --git a/PLC/Methods/GetBootMedium.py b/PLC/Methods/GetBootMedium.py index 203b968..a9f9405 100644 --- a/PLC/Methods/GetBootMedium.py +++ b/PLC/Methods/GetBootMedium.py @@ -122,10 +122,12 @@ class GetBootMedium(Method): variants are used to run a different kernel on the bootCD see kvariant.sh for how to create a variant - 'no-hangcheck' - disable hangcheck + - 'systemd-console' - redirect systemd services outputs in console - 'systemd-debug' - turn on systemd debug in bootcd Tags: the following tags are taken into account when attached to the node: - 'serial', 'cramfs', 'kvariant', 'kargs', 'no-hangcheck', 'systemd-debug' + 'serial', 'cramfs', 'kvariant', 'kargs', 'no-hangcheck', + 'systemd-console', 'systemd-debug', Security: - Non-admins can only generate files for nodes at their sites. @@ -441,11 +443,12 @@ class GetBootMedium(Method): build_sh_spec = {'kargs':[]} # use node tags as defaults # check for node tag equivalents - tags = NodeTags(self.api, - {'node_id': node['node_id'], - 'tagname': ['serial', 'cramfs', 'kvariant', 'kargs', - 'no-hangcheck', 'systemd-debug']}, - ['tagname', 'value']) + tags = NodeTags( + self.api, + {'node_id': node['node_id'], + 'tagname': ['serial', 'cramfs', 'kvariant', 'kargs', + 'no-hangcheck', 'systemd-console', 'systemd-debug', ]}, + ['tagname', 'value']) if tags: for tag in tags: if tag['tagname'] == 'serial': @@ -458,14 +461,14 @@ class GetBootMedium(Method): build_sh_spec['kargs'] += tag['value'].split() elif tag['tagname'] == 'no-hangcheck': build_sh_spec['kargs'].append('hcheck_reboot0') - elif tag['tagname'] == 'systemd-debug': - # - build_sh_spec['kargs'].append('systemd.log_level=debug') + elif tag['tagname'] == 'systemd-console': build_sh_spec['kargs'].append('systemd.log_target=console') build_sh_spec['kargs'].append( 'systemd.default_standard_output=journal+console') build_sh_spec['kargs'].append( 'systemd.default_standard_error=journal+console') + elif tag['tagname'] == 'systemd-debug': + build_sh_spec['kargs'].append('systemd.log_level=debug') # then options can override tags for option in options: if option == "cramfs": @@ -483,13 +486,14 @@ class GetBootMedium(Method): build_sh_spec['variant'] = option.replace("variant:", "") elif option == "no-hangcheck": build_sh_spec['kargs'].append('hcheck_reboot0') - elif option == "systemd-debug": - build_sh_spec['kargs'].append('systemd.log_level=debug') + elif option == "systemd-console": build_sh_spec['kargs'].append('systemd.log_target=console') build_sh_spec['kargs'].append( 'systemd.default_standard_output=journal+console') build_sh_spec['kargs'].append( 'systemd.default_standard_error=journal+console') + elif option == "systemd-debug": + build_sh_spec['kargs'].append('systemd.log_level=debug') else: raise PLCInvalidArgument("unknown option {}".format(option))