puppetlabs / r10k

Smarter Puppet deployment
Other
799 stars 354 forks source link

r10k puppetfile install - stream error #793

Closed acurus-puppetmaster closed 3 years ago

acurus-puppetmaster commented 6 years ago

Hi,

Only just started using r10k and the initial install of the modules using Puppetfile went without issue.

Added in 3 more entries into my Puppetfile today and now I am getting errors.

The new entries are

mod 'elastic-elastic_stack', '6.0.2'
mod 'elastic-logstash', '6.0.2'
mod 'puppet-yum', '2.1.0'

Puppetfile is using the default forge server

forge "https://forgeapi.puppetlabs.com"

The error output when running with --trace and --verbose is

INFO     -> Updating module /etc/puppetlabs/code/environments/localdev/modules/yum
ERROR    -> stream error
/usr/lib/ruby/2.3.0/net/http/response.rb:356:in `initialize'
/usr/lib/ruby/2.3.0/net/http/response.rb:356:in `new'
/usr/lib/ruby/2.3.0/net/http/response.rb:356:in `initialize'
/usr/lib/ruby/2.3.0/net/http/response.rb:259:in `new'
/usr/lib/ruby/2.3.0/net/http/response.rb:259:in `inflater'
/usr/lib/ruby/2.3.0/net/http/response.rb:281:in `read_body_0'
/usr/lib/ruby/2.3.0/net/http/response.rb:202:in `read_body'
/usr/lib/ruby/2.3.0/net/http.rb:1157:in `block in get'
/usr/lib/ruby/2.3.0/net/http.rb:1446:in `block in transport_request'
/usr/lib/ruby/2.3.0/net/http/response.rb:163:in `reading_body'
/usr/lib/ruby/2.3.0/net/http.rb:1445:in `transport_request'
/usr/lib/ruby/2.3.0/net/http.rb:1407:in `request'
/usr/lib/ruby/2.3.0/net/http.rb:1400:in `block in request'
/usr/lib/ruby/2.3.0/net/http.rb:853:in `start'
/usr/lib/ruby/2.3.0/net/http.rb:1398:in `request'
/usr/lib/ruby/2.3.0/net/http.rb:1156:in `get'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/adapter/net_http.rb:78:in `perform_request'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/adapter/net_http.rb:38:in `block in call'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/adapter/net_http.rb:85:in `with_net_http_connection'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/adapter/net_http.rb:33:in `call'
/var/lib/gems/2.3.0/gems/puppet_forge-2.2.9/lib/puppet_forge/connection/connection_failure.rb:9:in `call'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/response.rb:8:in `call'
/var/lib/gems/2.3.0/gems/faraday_middleware-0.12.2/lib/faraday_middleware/response_middleware.rb:31:in `call'
/var/lib/gems/2.3.0/gems/puppet_forge-2.2.9/lib/puppet_forge/middleware/symbolify_json.rb:64:in `call'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/rack_builder.rb:141:in `build_response'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/connection.rb:387:in `run_request'
/var/lib/gems/2.3.0/gems/faraday-0.13.1/lib/faraday/connection.rb:137:in `get'
/var/lib/gems/2.3.0/gems/puppet_forge-2.2.9/lib/puppet_forge/v3/base.rb:69:in `request'
/var/lib/gems/2.3.0/gems/puppet_forge-2.2.9/lib/puppet_forge/lazy_accessors.rb:85:in `fetch'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/module/forge.rb:93:in `deprecated?'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/module/forge.rb:140:in `install'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/module/forge.rb:48:in `sync'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/puppetfile/install.rb:36:in `visit_module'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/visitor.rb:24:in `visit'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/module/base.rb:82:in `accept'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/puppetfile.rb:151:in `block (2 levels) in accept'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/puppetfile.rb:150:in `each'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/puppetfile.rb:150:in `block in accept'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/puppetfile/install.rb:24:in `visit_puppetfile'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/visitor.rb:24:in `visit'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/puppetfile.rb:149:in `accept'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/puppetfile/install.rb:14:in `call'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/runner.rb:33:in `call'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/lib/r10k/action/cri_runner.rb:67:in `call'
/var/lib/gems/2.3.0/gems/cri-2.6.1/lib/cri/command_dsl.rb:223:in `block in runner'
/var/lib/gems/2.3.0/gems/cri-2.6.1/lib/cri/command.rb:298:in `run_this'
/var/lib/gems/2.3.0/gems/cri-2.6.1/lib/cri/command.rb:251:in `run'
/var/lib/gems/2.3.0/gems/cri-2.6.1/lib/cri/command.rb:264:in `run'
/var/lib/gems/2.3.0/gems/cri-2.6.1/lib/cri/command.rb:264:in `run'
/var/lib/gems/2.3.0/gems/r10k-2.6.1/bin/r10k:7:in `<top (required)>'
/usr/local/bin/r10k:23:in `load'
/usr/local/bin/r10k:23:in `<main>

/usr/lib/ruby/2.3.0/net/http/response.rb:356 is dealing with compressed responses so I double checked that zlib gem and zlib and zlib-dev Ubuntu 16.04 packages are installed.

# gem list

*** LOCAL GEMS ***

bigdecimal (1.3.4, 1.2.8)
bundler (1.16.1, 1.11.2)
colored (1.2)
connection_pool (2.2.1)
cri (2.10.1, 2.6.1)
did_you_mean (1.0.0)
diff-lcs (1.3)
docile (1.1.5)
facter (2.5.1)
faraday (0.13.1)
faraday_middleware (0.12.2)
fast_gettext (1.6.0, 1.1.0)
gettext (3.2.6)
gettext-setup (0.29)
git (1.3.0)
hiera (3.4.2)
hiera-eyaml (2.1.0)
highline (1.7.10, 1.6.21)
io-console (0.4.6, 0.4.5)
json (2.1.0, 1.8.3)
librarian-puppet (2.2.3)
librarianp (0.6.4)
locale (2.1.2)
log4r (1.1.10)
minitar (0.6.1)
minitest (5.11.1, 5.8.4)
molinillo (0.6.4, 0.4.3)
multi_json (1.12.2)
multipart-post (2.0.0)
net-http-persistent (3.0.0, 2.9.4)
net-telnet (0.1.1)
power_assert (1.1.1, 0.2.7)
psych (3.0.2, 2.0.17)
puppet (5.3.3)
puppet_forge (2.2.9)
r10k (2.6.1)
ra10ke (0.3.0)
rake (12.3.0, 10.5.0)
rdoc (6.0.1, 4.2.1)
rspec (3.7.0)
rspec-core (3.7.1, 3.7.0)
rspec-expectations (3.7.0)
rspec-mocks (3.7.0)
rspec-support (3.7.0)
rsync (1.0.9)
ruby-prof (0.17.0)
rugged (0.26.0, 0.24.5)
semantic_puppet (1.0.1)
semverse (2.0.0)
simplecov (0.15.1, 0.9.2)
simplecov-html (0.10.2, 0.9.0)
solve (4.0.0)
test-unit (3.2.7, 3.1.7)
text (1.3.1)
thor (0.20.0, 0.19.1)
trollop (2.1.2)
yard (0.9.12, 0.8.7.6)
zlib (1.0.0)

Any ideas?

Really stuck on this, used to using librarian-puppet and I am sorely tempted to go back again.

acurus-puppetmaster commented 6 years ago
apt purge ruby -y
rm -rf /var/lib/gems
apt install ruby -y
gem install r10k

Now works, so one of the dependencies was not right but I wasn't able to figure it out. Some gems were installed with the gem command as dependencies, some are part of rubygems-integration Ubuntu package.

Wish r10k was able to provide more detail.

Obviously the underlying issue had nothing to do with DNS, networking or SSL certs as suggested by other posts found using Google.

andersonmills commented 6 years ago

Thanks for the issue and the "fix." We'll keep an eye on this to see if anyone else starts seeing similar dependency issues.

lairsdragon commented 6 years ago

I solved the problem by using rugged Version 0.24.0 instead 0.26.0.

A similar Problem is reportet at https://github.com/prontolabs/pronto/issues/23 and the workaround is to load zlib before rugged.

HTH,

cheerio Steve

github-actions[bot] commented 3 years ago

This issue has been marked stale because it has had no activity for 60 days. The Puppet Team is actively prioritizing existing bugs and new features, if this issue is still important to you please comment and we will add this to our backlog to complete. Otherwise, it will be closed in 7 days.