我是Saltstack的新手,所以我开始无服务器,直到我的东西基本上工作。但是为了让事情基本起作用,我想使用公式,这意味着我应该指定gitfs_remotes,但这只能在主服务器上工作(它出现)。
所以我克隆https://github.com/my-organisation/openssh-formula.git
并将openssh-formula / openssh移动到/ srv / salt / openssh /.
现在在top.sls
我说
base:
'*':
- system # sshd, git, system
在system/init.sls
,我说(除其他外)
open_sshd_server:
openssh
失败了:
[T] ubuntu@ubuntu-xenial:vagrant $ sudo salt-call --local state.highstate
local:
Data failed to compile:
----------
ID open_sshd_server in SLS system is not a dictionary
[T] ubuntu@ubuntu-xenial:vagrant $
然而,有效的方法是将openssh安装推向顶层:
base:
'*':
- system # not sshd, but git, system
- openssh
但这很愚蠢,只把公式电话放在最顶层是一个可怕且不可扩展的组织。
有人能指出我正确的方向吗?
答案 0 :(得分:1)
您可以使用include来实现此目标。
include:
- openssh
- openssh.config
答案 1 :(得分:-1)
您的SLS文件结构很好。您不必将公式电话放在最高级别。
问题出在状态open_sshd_server
。您可以使用以下结构进行单个软件包安装:
openssh:
pkg.installed
对于多个软件包安装:
xfce:
pkg.installed:
- pkgs:
- Thunar
- thunar-archive-plugin
- polkit-gnome
- xfce4-panel
- xfce4-session
- xfce4-settings
- ...
使用pkg.installed
,您不需要任何除非条件。