在vagrant box中使用gitfs为salt后端提供ssh凭据

时间:2017-03-16 17:18:33

标签: vagrant salt gitfs

我用流浪汉测试我的盐配置。在一个盒子里,我有一个流浪盐主人和盐奴隶,在另一个盒子里,我有一个盐奴才。

我试图切换到使用gitfs从我的私人回购中获取后端。

这是我的salt.master_config

hash_type: sha256
auto_accept: True
roster_file: /srv/salt/roster
fileserver_backend:
  - roots
  - git

file_roots:
  base:
    - /srv/salt/environments/base/files
    - /srv/salt/environments/base/states
    - /srv/salt/users

gitfs_remotes:
  - git@github.com:user/repo.git
    - pubkey: /srv/salt/environments/base/files/.ssh/id_rsa.pub
    - privkey: /srv/salt/environments/base/files/.ssh/id_rsa
  - https://github.com/salt/users-formula.git
  - https://github.com/salt/openssh-formula.git

其他gitfs遥控器过去曾有效,但新的遥控器不接受ssh键。 运行sudo salt '*' state.apply时,我得到:

ERROR   ] Error parsing configuration file: /etc/salt/master - mapping values are not allowed here
  in "<string>", line 16, column 13:
        - pubkey: /srv/salt/environments/base/fi

我还尝试使用vagrantup prosvisioning doc https://www.vagrantup.com/docs/provisioning/salt.html中的 Master Options ,并将 master_pub master_key 添加到我的{ {1}}:

Vagrantfile

但这是ssh到流浪盒而不是实际用于gitfs。

如何为vagrant配置文件提供ssh凭据?

1 个答案:

答案 0 :(得分:0)

找到解决方案:

gitfs_provider: pygit2
gitfs_pubkey: /srv/salt/path/to/files/ssh/id_rsa.pub
gitfs_privkey: /srv/salt/path/to/files/ssh/id_rsa

gitfs_remotes:
  - git@github.com:user/repo.git