foreman_maintain 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 85dd75e0de03c6b2c872e728ba047ecde645148d
         | 
| 4 | 
            +
              data.tar.gz: 93d8cc2e2381e5c890c62f114b2a3f3ad9c9b460
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 8b307b932f52b3b9686ecca55c5904d4b901f71429e0fc485ddce9cff419026aaa96393b413dce528001c74ed0e11f03ba7ab73c280f66663dbad6b03299ef80
         | 
| 7 | 
            +
              data.tar.gz: bcc8b92ff358e1e5c3c4c129278af67566dfc09681e7d338330a20718a955acd5fce84b939b40738beb0f3f0fb81990632aec7bb3e37a600ea5cdfcecf9ed71e
         | 
| @@ -7,28 +7,35 @@ module Procedures::Candlepin | |
| 7 7 | 
             
                  confine do
         | 
| 8 8 | 
             
                    feature(:candlepin_database) &&
         | 
| 9 9 | 
             
                      feature(:downstream) &&
         | 
| 10 | 
            -
                      feature(:downstream).current_minor_version == '6.2' | 
| 11 | 
            -
                      feature(:candlepin_database).table_exist?('cp_env_content')
         | 
| 10 | 
            +
                      feature(:downstream).current_minor_version == '6.2'
         | 
| 12 11 | 
             
                  end
         | 
| 13 12 | 
             
                end
         | 
| 14 13 |  | 
| 15 14 | 
             
                def run
         | 
| 16 | 
            -
                   | 
| 17 | 
            -
                     | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
                       | 
| 21 | 
            -
             | 
| 22 | 
            -
                       | 
| 23 | 
            -
             | 
| 24 | 
            -
             | 
| 25 | 
            -
                      puts "Total #{env_content_ids.length} records with unresolvable content"
         | 
| 26 | 
            -
                      spinner.update 'Deleting record(s) from cp_env_content table'
         | 
| 27 | 
            -
                      feature(:candlepin_database).delete_records_by_ids(
         | 
| 28 | 
            -
                        'cp_env_content', env_content_ids
         | 
| 29 | 
            -
                      )
         | 
| 15 | 
            +
                  if feature(:candlepin_database).table_exist?('cp_env_content')
         | 
| 16 | 
            +
                    with_spinner('Deleting cp_env_content record(s) with unresolvable content') do |spinner|
         | 
| 17 | 
            +
                      spinner.update 'Finding cp_env_content records with unresolvable content'
         | 
| 18 | 
            +
                      env_content_ids = feature(:candlepin_database).env_content_ids_with_null_content
         | 
| 19 | 
            +
                      if env_content_ids.empty?
         | 
| 20 | 
            +
                        spinner.update 'No orphaned records found'
         | 
| 21 | 
            +
                      else
         | 
| 22 | 
            +
                        backup_and_delete_records(spinner, env_content_ids)
         | 
| 23 | 
            +
                      end
         | 
| 30 24 | 
             
                    end
         | 
| 31 25 | 
             
                  end
         | 
| 32 26 | 
             
                end
         | 
| 27 | 
            +
             | 
| 28 | 
            +
                private
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                def backup_and_delete_records(spinner, env_content_ids)
         | 
| 31 | 
            +
                  spinner.update 'Taking a backup of the candlepin database'
         | 
| 32 | 
            +
                  feature(:candlepin_database).perform_backup
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                  puts "Total #{env_content_ids.length} records with unresolvable content"
         | 
| 35 | 
            +
                  spinner.update 'Deleting record(s) from cp_env_content table'
         | 
| 36 | 
            +
                  feature(:candlepin_database).delete_records_by_ids(
         | 
| 37 | 
            +
                    'cp_env_content', env_content_ids
         | 
| 38 | 
            +
                  )
         | 
| 39 | 
            +
                end
         | 
| 33 40 | 
             
              end
         | 
| 34 41 | 
             
            end
         | 
| @@ -1,16 +1,24 @@ | |
| 1 1 | 
             
            module Procedures::Installer
         | 
| 2 2 | 
             
              class Upgrade < ForemanMaintain::Procedure
         | 
| 3 3 | 
             
                def run
         | 
| 4 | 
            -
                  execute!("#{installer_command}  | 
| 4 | 
            +
                  execute!("LANG=en_US.utf-8 #{installer_command} #{upgrade_command?}", :interactive => true)
         | 
| 5 5 | 
             
                end
         | 
| 6 6 |  | 
| 7 7 | 
             
                private
         | 
| 8 8 |  | 
| 9 | 
            +
                def upgrade_command?
         | 
| 10 | 
            +
                  if package_version('satellite-installer') || package_version('katello-installer')
         | 
| 11 | 
            +
                    '--upgrade'
         | 
| 12 | 
            +
                  end
         | 
| 13 | 
            +
                end
         | 
| 14 | 
            +
             | 
| 9 15 | 
             
                def installer_command
         | 
| 10 | 
            -
                  if  | 
| 11 | 
            -
                    ' | 
| 12 | 
            -
             | 
| 13 | 
            -
                     | 
| 16 | 
            +
                  if feature(:downstream)
         | 
| 17 | 
            +
                    if feature(:downstream).current_minor_version <= '6.1'
         | 
| 18 | 
            +
                      'katello-installer'
         | 
| 19 | 
            +
                    else
         | 
| 20 | 
            +
                      'satellite-installer'
         | 
| 21 | 
            +
                    end
         | 
| 14 22 | 
             
                  else
         | 
| 15 23 | 
             
                    'foreman-installer'
         | 
| 16 24 | 
             
                  end
         | 
| @@ -14,12 +14,15 @@ module ForemanMaintain | |
| 14 14 | 
             
                  end
         | 
| 15 15 |  | 
| 16 16 | 
             
                  def psql(query, config = configuration)
         | 
| 17 | 
            -
                     | 
| 18 | 
            -
             | 
| 17 | 
            +
                    if ping(config)
         | 
| 18 | 
            +
                      execute(psql_command(config), :stdin => query)
         | 
| 19 | 
            +
                    else
         | 
| 20 | 
            +
                      raise_service_error
         | 
| 21 | 
            +
                    end
         | 
| 19 22 | 
             
                  end
         | 
| 20 23 |  | 
| 21 24 | 
             
                  def ping(config = configuration)
         | 
| 22 | 
            -
                     | 
| 25 | 
            +
                    execute?(psql_command(config), :stdin => 'SELECT 1 as ping')
         | 
| 23 26 | 
             
                  end
         | 
| 24 27 |  | 
| 25 28 | 
             
                  def backup_file_path(config = configuration)
         | 
| @@ -67,10 +70,15 @@ module ForemanMaintain | |
| 67 70 |  | 
| 68 71 | 
             
                  private
         | 
| 69 72 |  | 
| 70 | 
            -
                  def  | 
| 73 | 
            +
                  def psql_command(config)
         | 
| 74 | 
            +
                    "PGPASSWORD='#{config[%(password)]}' "\
         | 
| 71 75 | 
             
                    "psql -d #{config['database']} -h #{config['host'] || 'localhost'} "\
         | 
| 72 76 | 
             
                    " -p #{config['port'] || '5432'} -U #{config['username']}"
         | 
| 73 77 | 
             
                  end
         | 
| 78 | 
            +
             | 
| 79 | 
            +
                  def raise_service_error
         | 
| 80 | 
            +
                    raise Error::Fail, 'Please check whether database service is up & running state.'
         | 
| 81 | 
            +
                  end
         | 
| 74 82 | 
             
                end
         | 
| 75 83 | 
             
              end
         | 
| 76 84 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: foreman_maintain
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.1. | 
| 4 | 
            +
              version: 0.1.5
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Ivan Nečas
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2018-03- | 
| 11 | 
            +
            date: 2018-03-23 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: clamp
         |