Bug ID | 1195850 |
---|---|
Summary | installation hooks are not working |
Classification | openSUSE |
Product | openSUSE Tumbleweed |
Version | Current |
Hardware | Other |
OS | Other |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | Installation |
Assignee | yast2-maintainers@suse.de |
Reporter | comes@naic.edu |
QA Contact | jsrain@suse.com |
Found By | --- |
Blocker | --- |
I'm trying to use hooks as described here: https://github.com/yast/yast-yast2/blob/master/library/general/doc/Hooks.md What I did is to create the file "before_copy_logs_finish_00_test_hook.sh" and put it in var/lib/YaST2/hooks/installation in the 'root' image that is used at installation time (to be clear like the one that is available in: download.opensuse.org/tumbleweed/repo/oss/boot/x86_64/root At the the end of the installation process, the script before_copy_logs_finish_00_test_hook.sh is supposed to be executed, but that doesn't happen. The log /var/log/YaST2/y2log-1.gz explains why: [Ruby] modules/Hooks.rb(find_hook_files):193 Found 1 hook files: before_copy_logs_finish_00_comes_hook.sh [Ruby] modules/Hooks.rb(execute):165 Executing hook 'before_copy_logs_finish' [Ruby] modules/Hooks.rb(execute):210 Executing hook file '/var/lib/YaST2/hooks/installation/before_copy_logs_finish_00_comes_hook.sh' [bash] ShellCommand.cc(shellcommand):78 sh: /var/lib/YaST2/hooks/installation/before_copy_logs_finish_00_comes_hook.sh: No such file or directory [Ruby] modules/Hooks.rb(execute):212 Hook file 'before_copy_logs_finish_00_comes_hook.sh' failed with stderr: sh: /var/lib/YaST/hooks/installation/before_copy_logs_finish_00_comes_hook.sh: No such file or directory The installer finds the script, but when it is executed it is not there. I suspected a chroot issue and to confirm my suspicion I did the following: After the installation process started, I moved to tty2 where a shell is available. The command 'ls /var/lib/YaST2/hooks/installation' shows that the hook script is there. then I did: mkdir -p /mnt/var/lib/YaST2/hooks/installation cp /var/lib/YaST2/hooks/installation/* /mnt/var/lib/YaST2/hooks/installation and let the installation process complete. This time the hook script got executed. The solution to the problem seemd to be: 1) do not execute the hook scripts in the chroot environment or 2) make the hook scripts visible in the chroot environment I guess the correct solution is number 2. For the record, the issue exists both in Leap 15.3 and tumbleweed. Using hooks was a possible solution to fix boo#1195118 bur I guess that's not an option right now.