jesseadams / sphinx-cookbook

Chef cookbook for Sphinx Search (searchd)
14 stars 27 forks source link

loose dependencies on other cookbooks #26

Closed kesor closed 10 years ago

kesor commented 10 years ago

Allow new-er versions of build-essential and postgresql cookbooks to co-exist with sphinx. The strict dependency rules cause tools like librarian-chef to fail when this cookbook is used with other cookbooks (like nginx) that require higher versions of build-essential.

Example error:

/...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:309:in `unpack_package!': The package archive has too many children! (RuntimeError)
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:224:in `cache_version_uri_unpacked!'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:93:in `block in version_uri_manifest'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:378:in `memo'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:92:in `version_uri_manifest'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:88:in `version_manifest'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:54:in `version_dependencies'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/source/site.rb:459:in `fetch_dependencies'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/manifest.rb:121:in `fetch_dependencies!'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/manifest.rb:113:in `fetched_dependencies'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/manifest.rb:77:in `dependencies'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:131:in `sourced_dependencies_for_manifest'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:60:in `block in recursive_resolve'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:143:in `block (3 levels) in resolving_dependency_map_find_manifests'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:176:in `block in scope_checking_manifest'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:208:in `scope'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:175:in `scope_checking_manifest'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:142:in `block (2 levels) in resolving_dependency_map_find_manifests'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:196:in `block in map_find'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:195:in `each'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:195:in `map_find'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:141:in `block in resolving_dependency_map_find_manifests'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:154:in `block (2 levels) in scope_resolving_dependency'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:168:in `block in scope_checking_manifests'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:208:in `scope'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:167:in `scope_checking_manifests'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:153:in `block in scope_resolving_dependency'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:208:in `scope'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:152:in `scope_resolving_dependency'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:140:in `resolving_dependency_map_find_manifests'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:56:in `recursive_resolve'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver/implementation.rb:32:in `resolve'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/resolver.rb:16:in `resolve'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/action/resolve.rb:26:in `run'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/cli.rb:169:in `resolve!'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/lib/librarian/chef/cli.rb:41:in `install'
        from /...x.../bundle/ruby/2.0.0/gems/thor-0.18.1/lib/thor/command.rb:27:in `run'
        from /...x.../bundle/ruby/2.0.0/gems/thor-0.18.1/lib/thor/invocation.rb:120:in `invoke_command'
        from /...x.../bundle/ruby/2.0.0/gems/thor-0.18.1/lib/thor.rb:363:in `dispatch'
        from /...x.../bundle/ruby/2.0.0/gems/thor-0.18.1/lib/thor/base.rb:439:in `start'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/cli.rb:26:in `block (2 levels) in bin!'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/cli.rb:31:in `returning_status'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/cli.rb:26:in `block in bin!'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/cli.rb:47:in `with_environment'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-0.1.1/lib/librarian/cli.rb:26:in `bin!'
        from /...x.../bundle/ruby/2.0.0/gems/librarian-chef-0.0.2/bin/librarian-chef:7:in `<top (required)>'
        from /...x.../bundle/ruby/2.0.0/bin/librarian-chef:23:in `load'
        from /...x.../bundle/ruby/2.0.0/bin/librarian-chef:23:in `<main>'
gansbrest commented 10 years ago

Yep, faced the same problem with fixed version of build-essentials. This pull request solves the problem.

jesseadams commented 10 years ago

This breaks the tests.

jesseadams commented 10 years ago

Still need to fix this. Maybe i'll look later today.

thewebfellas commented 10 years ago

Tests start to fail with build-essential versions 1.4.0 and higher and/or postgresql versions 3.0.0 and higher

chrisanderton commented 10 years ago

i've figured out the issue with build-essential and the tests, just figuring out the issue with postgresql

chrisanderton commented 10 years ago

committed the fixes to tests in #28