我想在Openshift上使用jekyll的pandoc markdown插件。这需要更改PATH变量,以便pandoc可执行文件可以放在$ OPENSHIFT_DATA_DIR中。我已经分叉jekyll cartridge并试图模仿在bin / setup中设置env的方式。
ruby路径元素设置如下:
dirname $(scl enable ruby193 "which ruby") > $env_dir/OPENSHIFT_RUBY_PATH_ELEMENT
所以,我试过这个:
dirname $(scl enable ruby193 "printenv OPENSHIFT_DATA_DIR") > $env_dir/OPENSHIFT_JEKYLL_PATH_ELEMENT
认为这可能算作红宝石墨盒,即使短名称是“jekyll”,我也尝试过:
dirname $(scl enable ruby193 "printenv OPENSHIFT_DATA_DIR") > $env_dir/OPENSHIFT_RUBY_PATH_ELEMENT
我也尝试过:
dirname echo $OPENSHIFT_DATA_DIR > $env_dir/OPENSHIFT_JEKYLL_PATH_ELEMENT
dirname echo $OPENSHIFT_DATA_DIR > $env_dir/OPENSHIFT_RUBY_PATH_ELEMENT
最后,在env/
中,我使用以下行放置了文件OPENSHIFT_JEKYLL_PATH_ELEMENT.erb
:
<%= ENV['OPENSHIFT_DATA_DIR'] %>
我最后一次尝试此操作的原因是cartridge developer's guide:
PATH变量由OpenShift设置,基数为/ etc / openshift / env / PATH。如果您提供OPENSHIFT_ {Cartridge-Short-Name} _PATH_ELEMENT,则在运行脚本或应用程序开发人员执行交互式登录时,OpenShift将包含构建PATH时的值。
SSH服务器并检查echo $PATH
显示环境变量没有变化。我已经阅读了有关openshift和设置路径的other questions,我或者尝试上面的解决方案,或者找到一些方法来避免设置路径。
我迷路了......