Sha256: fe265e20ff0d0951b0acadcb21e3d9a15aa9c9a8877ba627025e1b9f4ad12440

Contents?: true

Size: 666 Bytes

Versions: 4

Compression:

Stored size: 666 Bytes

Contents

# frozen_string_literal: true

class UpgradeLaptopExecution
  include CommandHelper

  def initialize(upgrade_mac_os)
    @upgrade_mac_os = upgrade_mac_os
  end

  def run
    upgrade_apps
    upgrade_mac_os
    upgrade_brew unless mac_os_upgrade_needs_a_restart?
  end

  private

  def upgrade_apps
    setup_mas
    run_command 'mas upgrade'
  end

  def setup_mas
    `which mas || brew install mas`
  end

  def upgrade_mac_os
    @upgrade_mac_os.run
  end

  def mac_os_upgrade_needs_a_restart?
    @upgrade_mac_os.reboot_required?
  end

  def upgrade_brew
    run_command 'brew update'
    run_command 'brew upgrade'
    run_command 'brew cleanup'
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
renuo-cli-4.5.0 lib/renuo/cli/app/upgrade_laptop/upgrade_laptop_execution.rb
renuo-cli-4.3.0 lib/renuo/cli/app/upgrade_laptop/upgrade_laptop_execution.rb
renuo-cli-4.2.1 lib/renuo/cli/app/upgrade_laptop/upgrade_laptop_execution.rb
renuo-cli-4.2.0 lib/renuo/cli/app/upgrade_laptop/upgrade_laptop_execution.rb