AWS Opswork puppet 无法获取 github 代码

AWS Opswork puppet 无法获取 github 代码

我已经设置了一个新的 AWS Opswork Puppetmaster

它应该配置了一个 ssh 密钥,可以允许访问 github

但是,它没有成功,并且在配置步骤的早期就失败了。我想知道是否有任何配置项可以检查,以及/或者我如何才能让 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)涵盖了一些问题,但没有涵盖这个问题。只是重复我的问题:我应该做哪些进一步的诊断来尝试解决这个问题?

答案1

存储库位置的正确格式是

[电子邮件保护]:myorg/my-puppetrepos

我找不到任何方法来改变现有的 Opsworks puppetmaster 中的这个值,所以我把它扔掉,然后启动另一个,在开始时给出正确的值

我认为我的问题是由于提供了错误的 GitHub URL 造成的

相关内容