如何在Git存储库的saltstack中使用扩展模块?

时间:2017-02-14 17:19:41

标签: salt-stack

我在Git存储库中有一个扩展python模块,名为compute_pillar.py

我想将此作为外部支柱,下面是我的extension_module设置:

extension_modules: /var/cache/salt/master/gitfs

gitfs_ssl_verify: False
gitfs_provider: gitpython
gitfs_remotes:
  - git@git.corp.company.com:Saltstack/saltit-automation.git:
    - root: salt
    - base: master
  - file:///var/cache/salt/master/gitfs

以下是我的pillar.conf

ext_pillar:
  - cmd_json: 'echo {\"arg\":\"value\"}'
  - compute_pillar: True

现在调用pillar.items时,它会调用cmd_json,因为它是本地的,但对于compute_pillar它永远不会执行,下面是日志中的错误消息:

  

[salt.utils.lazy] [DEBUG] [24791]无法使用LazyLoad   compute_pillar.ext_pillar:'compute_pillar.ext_pillar'不是   可用。 [salt.pillar] [CRITICAL] [24791]指定的ext_pillar   interface compute_pillar不可用

直接从git存储库调用扩展模块的配置设置是什么?

1 个答案:

答案 0 :(得分:0)

您无需将盐指向/var/cache/salt/master/gitfs

假设你的gitfs后端配置正常并正常工作,在_modules目录下创建一个名为salt的目录(例如root for backend /srv/salt/_modules)并将扩展python模块放在这里,推送要git,等待60秒或运行salt-run fileserver.update

现在只需同步您的小兵salt minion_A saltutil.sync_all,您就可以使用该模块了。