learnweb/moodledocker

moodledocker-exec does not work at all if any(!) project uses a static moodle source

Dagefoerde opened this issue · 1 comments

If any project uses a static moodle source - instead of a symlink to some repository located elsewhere - moodledocker-exec will fail since File.readlink cannot be applied to a non-link.

home/j_dage01/Docker/Metafiles/Scripts/moodledocker-common.rb:62:in `readlink': Invalid argument @ rb_readlink - /home/j_dage01/Docker/production3_0/moodle (Errno::EINVAL)
        from /home/j_dage01/Docker/Metafiles/Scripts/moodledocker-common.rb:62:in `block in project_name'
        from /home/j_dage01/Docker/Metafiles/Scripts/moodledocker-common.rb:62:in `select'
        from /home/j_dage01/Docker/Metafiles/Scripts/moodledocker-common.rb:62:in `project_name'
        from /home/j_dage01/Docker/Metafiles/Scripts/moodledocker-exec:9:in `execute_on_docker'
        from /home/j_dage01/Docker/Metafiles/Scripts/moodledocker-exec:33:in `<main>'

a0a99e8 fixes this for project_path, but project_name is more complex so that the fix cannot be applied identically.

I don't have any actual suggestion for fixing this problem, but have a look at my approach and maybe you will get some inspiration: