module Lono::Configset::Strategy::Helpers::Dsl::Package
Public Instance Methods
gem_package(name, version=nil)
click to toggle source
In recent versions of the AmazonLinux2 cfnbootstrap, , the package command doesnt work with updated versions of rubygems. Get this error
invalid option: --no-ri
More details: gist.github.com/tongueroo/569878afdc7eb904490b9ee8b03f304f
Found the cfnbootstrap version by looking at the source on 2020-03-21 in
$ cat /usr/lib/python2.7/site-packages/cfnbootstrap/public_constants.py _release = '31' _version = '1.4-' + _release
There is no way to get the version from the /opt/aws/bin/cfn-init command.
We work around this be using the command instruction and use the gem install and list commands.
$ gem list tilt -e -i -v 1.4.0 false # also $? is 1 $ gem list tilt -e -i -v 1.4.1 true # also $? is 0 $
# File lib/lono/configset/strategy/helpers/dsl/package.rb, line 26 def gem_package(name, version=nil) unless_clause = "gem list #{name} -e -i " unless_clause += "-v #{version}" if version command("#{name}-gem-install", command: "gem install #{name} #{version}", unless: unless_clause ) end
yum_package(name, version=nil)
click to toggle source
# File lib/lono/configset/strategy/helpers/dsl/package.rb, line 35 def yum_package(name, version=nil) versions = [version].compact package("yum", name => versions) end