I'm trying to install Elasticsearch 6.0 via Puppet Enterprise 2016.5.x using the mod 'elastic-elasticsearch', '6.0.0' (with all necessary dependencies). In the manifest I'm calling:
class { 'elasticsearch':
version => '6.0.0'
}
But when I run Puppet I get error:
Server Error: Evaluation Error: Error while evaluating a Resource Statement, Evaluation Error: Error while evaluating a Resource Statement, undefined method `pop' for nil:NilClass
at line with 'elasticsearch' class. It works fine if I use Puppet module for Elasticsearch earlier version. But earlier version is not compatible with Elasticsearch 6.x. Could you please help with this issue?
Interesting; the stack trace doesn't actually touch any parts of the Elasticsearch module, but instead just mentions normal Puppet components with the exception originating at /etc/puppetlabs/code/environments/<our_environment_name>/modules/<our_module>/manifests/elasticsearch.pp:180:3. Is there any possibility that the issue could be related to other parts of your module/manifest? There's no mention of any part of the Elasticsearch module that I could look into here.
Is this setup using a Puppetmaster? The log output you included doesn't mention anything about the Elasticsearch module, but if the catalog is being compiled on the Puppetmaster, the master's logs should include some logging about why the catalog compilation failed.
Unfortunately that leaves us at a bit of a dead-end, as the acceptance tests in Travis-CI continue to pass against Elasticsearch 6.0 and 6.1 and there's nothing particularly different in the example 6.0 you provided that I could try to reproduce the issue with. If there's something different in your environment that I could try and replicate the issue with I could try that, but as it stands there's not much else to go off of.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.