【问题标题】:How to enable berkshelf access to Subversion repository?如何启用对 Subversion 存储库的 berkshelf 访问?
【发布时间】:2014-09-26 04:25:21
【问题描述】:

我的顶级 Chef 存储库目录中有以下 Berksfile。

source "https://www.mySVNrepo.com/repos/myproject/trunk"

cookbook 'helloworld',      '= 0.1.0'

当我进行 berks 安装时,我得到了

[root@chef trunk]# berks install
Resolving cookbook dependencies...
Fetching cookbook index from https://www.mySVNrepo/repos/myproject/trunk...
/opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:800:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (Faraday::SSLError)
        from /opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:800:in `block in connect'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/timeout.rb:69:in `timeout'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/timeout.rb:100:in `timeout'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:800:in `connect'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:756:in `do_start'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:745:in `start'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:1285:in `request'
        from /opt/chef-server/embedded/lib/ruby/1.9.1/net/http.rb:1027:in `get'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/adapter/net_http.rb:78:in `perform_request'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/adapter/net_http.rb:39:in `call'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/request/retry.rb:87:in `call'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/response.rb:8:in `call'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/response.rb:8:in `call'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/rack_builder.rb:139:in `build_response'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/connection.rb:377:in `run_request'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/faraday-0.9.0/lib/faraday/connection.rb:140:in `get'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/berkshelf-api-client-1.2.0/lib/berkshelf/api_client/connection.rb:62:in `universe'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/berkshelf-3.1.4/lib/berkshelf/source.rb:22:in `build_universe'
        from /opt/chef-server/embedded/lib/ruby/gems/1.9.1/gems/berkshelf-3.1.4/lib/berkshelf/installer.rb:21:in `block (2 levels) in build_universe'

如何告诉 Berkshelf 使用某个用户/密码来访问我的 SVN 存储库?还支持吗?

【问题讨论】:

    标签: chef-infra berkshelf berksfile


    【解决方案1】:

    您的 HTTPS 证书无法验证。您可以告诉 Berkshelf 不要通过 --no-ssl-verify 验证证书或修复您的证书。推荐后者。

    【讨论】:

    • 是的,这就是帖子的重点。我以 root 身份运行该命令,但想要使用具有已知良好证书的其他用户/密码/证书?有意义吗?
    • 用户名/密码不相关,这只是首先建立HTTPS连接。您可以通过自己的配置文件配置svn 进行身份验证。
    • 哦,我也刚刚注意到您将您的 SVN 存储库作为源服务器。这不是问题,它必须指向像 https://supermarket.getchef.com/ 这样的 berkshelf-api 服务器或您自己的 berks api 服务器部署。
    • 啊,我对“来源”的误解。我打算使用 Berkshelf 从我的 SVN 存储库下载“我的”食谱,然后将它们上传到我的服务器,但这不是目的吗?
    • 据我所知,Berkshelf 不支持从 Subversion 下载。它支持超市、厨师服务器和 git,仅此而已。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多