Hello all, I am running a java recipe that is checked out from a Repository that I do not have write access to, and so I am using my cookbooks attributes file to change how the software is installed. We are using Chef 10.14.4 with Vagrant 1.4.3 (versions fixed and out of my control) I was asked to change the recipe to install Java version 8. From my cookbooks attributes/default.rb: ##################################################################### # jdk8 attributes override['java']['jdk_version'] = '8' override["java"]["install_flavor"] = "oracle" override["java"]["jdk_version"] = "8" override["java"]["jdk"]["8"]["x86_64"]["url"] = "https://nexus.servername.us/repositories/filerepo/com/oracle/jdk/8u40-linux-x64/jdk-8u40-linux-x64-x64.tar.gz" override["java"]["jdk"]["8"]["x86_64"]["checksum"] = "da1ad819ce7b7ec528264f831d88afaa5db34b7955e45422a7e380b1ead6b04d" override["java"]["osx_dmg"]["app_name"] = "JDK 8 Update 40" override["java"]["osx_dmg"]["volumes_dir"] = "JDK 8 Update 40" override["java"]["osx_dmg"]["package_id"] = "JDK 8 Update 40.pkg" override["java"]["osx_dmg"]["url"] = "https://nexus.servername.us/repositories/filerepo/com/oracle/jdk/8u40-macosx/jdk-8u40-macosx-x64.dmg" override["java"]["osx_dmg"]["dmg_name"] = "jdk-8u40-macosx-x64.dmg" override["java"]["osx_dmg"]["checksum"] = "1960617eb2fce4b503687d84d791dad72904de680c9bae006172dd9e2b5e0cd0" override["java"]["osx_dmg"]["java_home"] = "/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home" #override['java']['oracle']['accept_oracle_download_terms'] = true override['java']['jdk']['8']['bin_cmds'] = [ <SNIP> ] # x86_64 override['java']['jdk']['8']['x86_64']['url'] = 'http://download.oracle.com/otn-pub/java/jdk/8u40-b26/jdk-8u40-linux-x64.tar.gz' override['java']['jdk']['8']['x86_64']['checksum'] = 'da1ad819ce7b7ec528264f831d88afaa5db34b7955e45422a7e380b1ead6b04d' # i586 override['java']['jdk']['8']['i586']['url'] = 'http://download.oracle.com/otn-pub/java/jdk/8u40-b26/jdk-8u40-linux-i586.tar.gz' override['java']['jdk']['8']['i586']['checksum'] = '9300846c8ced85d14b9dd8ec5ec379a0af982c589cf6d149ee09d972fe6729b0' ######################END OF ATTRIBUTES SNIPPET########################### The error: ################################################################## [2015-04-29T18:32:22-04:00] INFO: Processing java_ark[jdk] action install (java::oracle line 60) ================================================================================ Error executing action `install` on resource 'java_ark[jdk]' ================================================================================ NoMethodError ------------- undefined method `split' for nil:NilClass Cookbook Trace: --------------- /tmp/vagrant-chef-1/chef-solo-2/cookbooks/java/providers/ark.rb:25:in `parse_app_dir_name' /tmp/vagrant-chef-1/chef-solo-2/cookbooks/java/providers/ark.rb:80:in `block in class_from_file' Resource Declaration: --------------------- # In /tmp/vagrant-chef-1/chef-solo-2/cookbooks/java/recipes/oracle.rb 60: java_ark "jdk" do 61: url tarball_url 62: checksum tarball_checksum 63: app_home java_home 64: bin_cmds bin_cmds 65: alternatives_priority 1062 66: action :install 67: end 68: Compiled Resource: ------------------ # Declared in /tmp/vagrant-chef-1/chef-solo-2/cookbooks/java/recipes/oracle.rb:60:in `from_file' java_ark("jdk") do action [:install] supports {:report=>true, :exception=>true} retries 0 retry_delay 2 cookbook_name :java recipe_name "oracle" app_home "/usr/lib/jvm/java" alternatives_priority 1062 end [2015-04-29T18:32:22-04:00] DEBUG: Re-raising exception: NoMethodError - java_ark[jdk] (java::oracle line 60) had an error: NoMethodError: undefined method `split' for nil:NilClass ###############################END ERROR SNIPPET###################### I would be arguing that we need to try upgrading, but this deployment works on some system but not on others....I am thinking that I have some gem version mismatch but am not clear on how I might determine this.... All apologies if this is documented....I looked. Thank you, Christopher |
Archive powered by MHonArc 2.6.16.