Class: Itamae::Plugin::Resource::Pip
- Inherits:
-
Resource::Base
- Object
- Resource::Base
- Itamae::Plugin::Resource::Pip
- Defined in:
- lib/itamae/plugin/resource/pip.rb
Instance Method Summary collapse
- #action_install(action_options) ⇒ Object
- #action_uninstall(action_options) ⇒ Object
- #action_upgrade(action_options) ⇒ Object
- #pre_action ⇒ Object
- #set_current_attributes ⇒ Object
Instance Method Details
#action_install(action_options) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/itamae/plugin/resource/pip.rb', line 32 def action_install() if current.installed if attributes.version && current.version != attributes.version install! updated! end else install! updated! end end |
#action_uninstall(action_options) ⇒ Object
50 51 52 53 |
# File 'lib/itamae/plugin/resource/pip.rb', line 50 def action_uninstall() install! updated! end |
#action_upgrade(action_options) ⇒ Object
44 45 46 47 48 |
# File 'lib/itamae/plugin/resource/pip.rb', line 44 def action_upgrade() return if current.installed && attributes.version && attributes.version == current.version install! updated! end |
#pre_action ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/itamae/plugin/resource/pip.rb', line 13 def pre_action case @current_action when :install attributes.installed = true when :uninstall attributes.installed = false end end |
#set_current_attributes ⇒ Object
22 23 24 25 26 27 28 29 30 |
# File 'lib/itamae/plugin/resource/pip.rb', line 22 def set_current_attributes installed = installed_pips.find {|pip| pip[:name] == attributes.package_name } current.installed = !!installed if current.installed version = installed[:version] current.version = version if version != attributes.version end end |