nodejs
nodejs copied to clipboard
binary install / checksum attributes documented aren't correct
Dear nodejs cookbook devs..
following your documented attributes (the defaults) it turns out you've got a more complex, non-valid documented setup.
if you follow it with the example it indicates:
node.default['nodejs']['binary']['checksum']['linux_x64'] = '656d8bff06cc5e108b83176f81de7e1eb16392ae0958ec4a7bca2a3a309333a1'
resulting in..
Option checksum's value {"linux_x64"=>"656d8bff06cc5e108b83176f81de7e1eb16392ae0958ec4a7bca2a3a309333a1", "linux_x86"=>"8fa2d952556c8b5aa37c077e2735c972c522510facaa4df76d4244be88f4dc0f", "linux_arm-pi"=>"52a0f6ed9c0be1ea5f79de6527c481c1b803edbea6413a4fdc65a45ad401565d"} does not match regular expression /^[a-zA-Z0-9]{64}$/
The only valid option for the url method is just node.default['nodejs']['binary']['checksum'] :-)
Not a killer bug or anything but would annoy someone less patient.
Cheers
Alex
ran into this too today, the quick fix for me to install a binary from a specific url on centos
change checksum
to checksum["linux_#{arch}"]
ark archive_name do
url nodejs_bin_url
version node['nodejs']['version']
checksum checksum["linux_#{arch}"]
has_binaries binaries
action :install
end
will debug more and send a pr later
I read this as an example (you should check checksums against an authority and they would vary based off of OS/Version)
As an additional note, the version must be specific for the binary, you can't use typical rubygems version strings.
Bump on this issue as I no longer directly use the cookbook, instead copied and commented out the checksum.
Marking stale due to inactivity. Remove stale label or comment or this will be closed in 7 days. Alternatively drop by the #sous-chefs channel on the Chef Community Slack and we'll be happy to help! Thanks, Sous-Chefs.
The checksum use needs a lot of work.