我设置了一个新的 AWS Opswork puppetmaster
据说它配置了一个允许访问 github 的 ssh 密钥
但是,它不会并且在配置步骤的早期就失败了。我想知道是否有任何配置项我可以检查和/或我如何能够让 puppetmaster 从 github 中提取 puppet 代码
我有自己的 puppet 配置文件和自定义模块,供 github 上的私有存储库本地使用
但是,如果我执行“puppet-access login --lifetime 180d”来设置令牌,然后尝试让它工作......
# puppet-code deploy --dry-run
--dry-run implies --wait.
--dry-run implies --all.
Dry-run deploying all environments.
Errors while collecting a list of environments to deploy (exit code: 1).
ERROR -> Unable to determine current branches for Git source 'puppet' (/etc/puppetlabs/code-staging/environments)
Original exception:
Invalid credential type
路径/etc/puppetlabs/code-staging/environments
不存在
但是 ssh 密钥确实有效
# ssh -i /etc/puppetlabs/puppetserver/ssh/id-control_repo.rsa -T [email protected]
Hi billybob22! You've successfully authenticated, but GitHub does not provide shell access.
并且 ssh 密钥可以被 pe-puppet 读取
# su pe-puppet -s /bin/bash -c 'test -r /etc/puppetlabs/puppetserver/ssh/id-control_repo.rsa; echo $?'
0
# ls -l /etc/puppetlabs/puppetserver/ssh/id-control_repo.rsa
-r-------- 1 pe-puppet pe-puppet 3243 Dec 19 14:45 /etc/puppetlabs/puppetserver/ssh/id-control_repo.rsa
# ls -ld /etc/puppetlabs/puppetserver/ssh
dr-x------ 2 pe-puppet pe-puppet 4096 Dec 6 16:32 /etc/puppetlabs/puppetserver/ssh
我已经尝试在表单中使用 github url
"puppet_enterprise::profile::master::r10k_remote": "[email protected]:myorg/my-puppetrepos"
并且
"puppet_enterprise::profile::master::r10k_remote": "ssh://github.com/myorg/my-puppetrepos"
两种形式都给出了与上述相同的结果
不知道从哪里拿它!文档(包括 Puppetlabs 和 AWS )涵盖了一些问题,但不是这个。只是重复我的问题:我应该做哪些进一步的诊断来尝试解决这个问题?
存储库位置的正确格式是
[email protected]:myorg/my-puppetrepos
我在现有的 Opsworks puppetmaster 中找不到任何更改此值的方法,所以我只是把它吹走并开始另一个,在开始时给出正确的值
我认为我的问题是由于提供了不正确的 GitHub URL