将木偶路径映射到绝对路径

时间:2012-03-28 08:45:32

标签: ruby puppet

我正在尝试为puppet编写一个新函数,它将木偶源路径作为参数,例如:

puppet:///modules/foo/some/dir

然后该函数需要分析这个目录,所以我需要找出目录的绝对路径,这取决于环境,例如:

/srv/puppetmaster/stable/modules/foo/files/some/dir

我可以用什么功能来实现这个目标?

2 个答案:

答案 0 :(得分:1)

不确定是否有内部方法/功能来执行此操作,但仍有两种方法可以实现此目的。

  1. 检查ENV是否有任何木偶配置。

  2. 从脚本调用system() - puppet可以转储模块路径的配置值:

    $ puppet master --configprint modulepath
    $ puppet agent --configprint modulepath
    

答案 1 :(得分:0)

从傀儡来源的持久性来看,我得到的印象是,如果可能的话,它需要修改木偶源代码,这将是丑陋的。

所以我的回答是,你是否可能试图解决错误的问题?

如果要将文件服务器路径转换为主本地文件路径,则表明您希望编写一个使用服务器上通常仅在客户端上需要的数据的函数。你为什么要这样做?您是否拥有主服务器和客户端都需要的文件? (这听起来不太可能)这个url实际上是否需要转换为本地文件路径?