Class: Zypper::Upgraderepo::Builder
- Inherits:
-
Object
- Object
- Zypper::Upgraderepo::Builder
- Defined in:
- lib/zypper/upgraderepo.rb
Instance Method Summary collapse
- #backup ⇒ Object
- #check_current ⇒ Object
- #check_for ⇒ Object
- #check_last ⇒ Object
- #check_next ⇒ Object
-
#initialize(options) ⇒ Builder
constructor
A new instance of Builder.
- #reset ⇒ Object
- #status ⇒ Object
- #update ⇒ Object
- #upgrade_to ⇒ Object
- #upgrade_to_last ⇒ Object
- #upgrade_to_next ⇒ Object
Constructor Details
#initialize(options) ⇒ Builder
Returns a new instance of Builder.
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/zypper/upgraderepo.rb', line 14 def initialize() @os_release = OsRelease.new() @repos = RepositoryList.new().resolve_variables!(@os_release.current) @print_hint = .hint @view_class = Zypper::Upgraderepo::View.const_get .view.to_s.capitalize @backup_path = .backup_path @exit_on_fail = .exit_on_fail end |
Instance Method Details
#backup ⇒ Object
25 26 27 28 29 30 31 32 33 |
# File 'lib/zypper/upgraderepo.rb', line 25 def backup filename = File.join(@backup_path, "repos-backup-#{Time.now.to_s.delete(': +-')[0..-5]}.tgz") raise InvalidWritePermissions, filename unless File.writable? @backup_path Minitar.pack(RepositoryList::REPOSITORY_PATH, Zlib::GzipWriter.new(File.open(filename, 'wb'))) Messages.ok "Backup file generated at #{filename.bold.green}" end |
#check_current ⇒ Object
35 36 37 38 |
# File 'lib/zypper/upgraderepo.rb', line 35 def check_current @repos.upgrade!(@os_release.current) check_repos(@os_release.current) end |
#check_for ⇒ Object
46 47 48 49 |
# File 'lib/zypper/upgraderepo.rb', line 46 def check_for @repos.upgrade!(@os_release.custom) check_repos(@os_release.custom) end |
#check_last ⇒ Object
51 52 53 54 55 |
# File 'lib/zypper/upgraderepo.rb', line 51 def check_last raise AlreadyUpgraded, 'latest' if @os_release.last? @repos.upgrade!(@os_release.last) check_repos(@os_release.last) end |
#check_next ⇒ Object
40 41 42 43 44 |
# File 'lib/zypper/upgraderepo.rb', line 40 def check_next raise AlreadyUpgraded, 'latest' if @os_release.last? @repos.upgrade!(@os_release.next) check_repos(@os_release.next) end |
#reset ⇒ Object
75 76 77 |
# File 'lib/zypper/upgraderepo.rb', line 75 def reset upgrade_repos(@os_release.current) end |
#status ⇒ Object
79 80 81 |
# File 'lib/zypper/upgraderepo.rb', line 79 def status @view_class.status(@os_release) end |
#update ⇒ Object
83 84 85 86 |
# File 'lib/zypper/upgraderepo.rb', line 83 def update @repos.upgrade!(@os_release.current) upgrade_repos(@os_release.current) end |
#upgrade_to ⇒ Object
63 64 65 66 67 |
# File 'lib/zypper/upgraderepo.rb', line 63 def upgrade_to raise AlreadyUpgraded, @os_release.custom if @os_release.current?(@os_release.custom) @repos.upgrade!(@os_release.custom) upgrade_repos(@os_release.custom) end |
#upgrade_to_last ⇒ Object
69 70 71 72 73 |
# File 'lib/zypper/upgraderepo.rb', line 69 def upgrade_to_last raise AlreadyUpgraded, 'latest' if @os_release.last? @repos.upgrade!(@os_release.last) upgrade_repos(@os_release.last) end |
#upgrade_to_next ⇒ Object
57 58 59 60 61 |
# File 'lib/zypper/upgraderepo.rb', line 57 def upgrade_to_next raise AlreadyUpgraded, 'latest' if @os_release.last? @repos.upgrade!(@os_release.next) upgrade_repos(@os_release.next) end |