foreman_maintain 1.3.0 → 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -4
- data/bin/foreman-maintain +1 -1
- data/bin/foreman-maintain-complete +5 -5
- data/definitions/checks/candlepin/db_up.rb +1 -1
- data/definitions/checks/candlepin/validate_db.rb +2 -9
- data/definitions/checks/check_for_newer_packages.rb +5 -5
- data/definitions/checks/check_hotfix_installed.rb +3 -7
- data/definitions/checks/disk/available_space_postgresql12.rb +3 -2
- data/definitions/checks/disk/performance.rb +3 -3
- data/definitions/checks/foreman/check_corrupted_roles.rb +2 -4
- data/definitions/checks/foreman/check_duplicate_permission.rb +1 -1
- data/definitions/checks/foreman/check_duplicate_roles.rb +1 -1
- data/definitions/checks/foreman/check_tuning_requirements.rb +1 -1
- data/definitions/checks/foreman/db_up.rb +1 -1
- data/definitions/checks/foreman/facts_names.rb +4 -4
- data/definitions/checks/foreman_openscap/invalid_report_associations.rb +4 -4
- data/definitions/checks/foreman_proxy/check_tftp_storage.rb +4 -4
- data/definitions/checks/foreman_proxy/verify_dhcp_config_syntax.rb +1 -2
- data/definitions/checks/foreman_tasks/invalid/check_old.rb +2 -2
- data/definitions/checks/foreman_tasks/invalid/check_pending_state.rb +2 -2
- data/definitions/checks/foreman_tasks/invalid/check_planning_state.rb +2 -2
- data/definitions/checks/foreman_tasks/not_paused.rb +2 -2
- data/definitions/checks/foreman_tasks/not_running.rb +6 -6
- data/definitions/checks/original_assets.rb +3 -3
- data/definitions/checks/package_manager/yum/validate_yum_config.rb +1 -1
- data/definitions/checks/pulpcore/db_up.rb +1 -1
- data/definitions/checks/repositories/check_upstream_repository.rb +2 -2
- data/definitions/checks/repositories/validate.rb +2 -2
- data/definitions/checks/restore/validate_backup.rb +2 -2
- data/definitions/checks/restore/validate_hostname.rb +2 -2
- data/definitions/checks/restore/validate_interfaces.rb +2 -2
- data/definitions/checks/restore/validate_postgresql_dump_permissions.rb +31 -0
- data/definitions/checks/services_up.rb +2 -2
- data/definitions/features/apache.rb +1 -1
- data/definitions/features/candlepin.rb +1 -1
- data/definitions/features/candlepin_database.rb +2 -4
- data/definitions/features/cron.rb +3 -5
- data/definitions/features/dynflow_sidekiq.rb +2 -2
- data/definitions/features/foreman_cockpit.rb +1 -1
- data/definitions/features/foreman_database.rb +1 -1
- data/definitions/features/foreman_proxy.rb +1 -1
- data/definitions/features/foreman_server.rb +2 -2
- data/definitions/features/foreman_tasks.rb +9 -12
- data/definitions/features/gofer.rb +1 -1
- data/definitions/features/hammer.rb +4 -4
- data/definitions/features/installer.rb +4 -5
- data/definitions/features/instance.rb +12 -14
- data/definitions/features/katello.rb +8 -12
- data/definitions/features/pulpcore.rb +5 -3
- data/definitions/features/pulpcore_database.rb +3 -1
- data/definitions/features/puppet_server.rb +1 -1
- data/definitions/features/redis.rb +2 -18
- data/definitions/features/salt_server.rb +1 -1
- data/definitions/features/service.rb +4 -48
- data/definitions/features/sync_plans.rb +2 -2
- data/definitions/features/tar.rb +4 -3
- data/definitions/procedures/backup/compress_data.rb +0 -1
- data/definitions/procedures/backup/config_files.rb +6 -5
- data/definitions/procedures/backup/prepare_directory.rb +0 -2
- data/definitions/procedures/backup/pulp.rb +3 -3
- data/definitions/procedures/backup/snapshot/clean_mount.rb +1 -1
- data/definitions/procedures/backup/snapshot/logical_volume_confirmation.rb +1 -2
- data/definitions/procedures/backup/snapshot/mount_pulp.rb +2 -2
- data/definitions/procedures/foreman/fix_corrupted_roles.rb +3 -3
- data/definitions/procedures/foreman_tasks/delete.rb +3 -3
- data/definitions/procedures/hammer_setup.rb +1 -1
- data/definitions/procedures/knowledge_base_article.rb +3 -4
- data/definitions/procedures/packages/enable_modules.rb +1 -1
- data/definitions/procedures/packages/install.rb +1 -1
- data/definitions/procedures/packages/uninstall.rb +1 -1
- data/definitions/procedures/packages/update.rb +1 -1
- data/definitions/procedures/remote_execution/remove_existing_settingsd.rb +2 -2
- data/definitions/procedures/repositories/enable.rb +1 -1
- data/definitions/procedures/repositories/setup.rb +2 -2
- data/definitions/procedures/restore/candlepin_dump.rb +2 -2
- data/definitions/procedures/restore/configs.rb +3 -10
- data/definitions/procedures/restore/drop_databases.rb +2 -2
- data/definitions/procedures/restore/extract_files.rb +4 -17
- data/definitions/procedures/restore/foreman_dump.rb +2 -2
- data/definitions/procedures/restore/installer_reset.rb +1 -2
- data/definitions/procedures/restore/postgres_owner.rb +2 -2
- data/definitions/procedures/restore/pulpcore_dump.rb +2 -2
- data/definitions/procedures/selinux/set_file_security.rb +2 -2
- data/definitions/procedures/service/restart.rb +1 -1
- data/definitions/scenarios/backup.rb +44 -61
- data/definitions/scenarios/packages.rb +9 -9
- data/definitions/scenarios/restore.rb +24 -40
- data/definitions/scenarios/self_upgrade.rb +7 -11
- data/definitions/scenarios/services.rb +17 -17
- data/extras/foreman_protector/foreman-protector.whitelist +0 -6
- data/lib/foreman_maintain/cli/advanced/prebuild_bash_completion.rb +1 -1
- data/lib/foreman_maintain/cli/advanced_command.rb +2 -2
- data/lib/foreman_maintain/cli/backup_command.rb +17 -17
- data/lib/foreman_maintain/cli/base.rb +13 -13
- data/lib/foreman_maintain/cli/maintenance_mode_command.rb +1 -1
- data/lib/foreman_maintain/cli/plugin_command.rb +1 -1
- data/lib/foreman_maintain/cli/restore_command.rb +4 -4
- data/lib/foreman_maintain/cli/self_upgrade_command.rb +2 -2
- data/lib/foreman_maintain/cli/service_command.rb +2 -2
- data/lib/foreman_maintain/cli/transform_clamp_options.rb +1 -1
- data/lib/foreman_maintain/cli/upgrade_command.rb +7 -7
- data/lib/foreman_maintain/cli.rb +1 -11
- data/lib/foreman_maintain/concerns/base_database.rb +8 -17
- data/lib/foreman_maintain/concerns/downstream.rb +6 -64
- data/lib/foreman_maintain/concerns/firewall/iptables_maintenance_mode.rb +1 -1
- data/lib/foreman_maintain/concerns/foreman_and_katello_version_map.rb +1 -1
- data/lib/foreman_maintain/concerns/os_facts.rb +0 -8
- data/lib/foreman_maintain/concerns/primary_checks.rb +6 -5
- data/lib/foreman_maintain/concerns/pulp_common.rb +1 -8
- data/lib/foreman_maintain/concerns/system_helpers.rb +3 -6
- data/lib/foreman_maintain/concerns/upstream.rb +3 -3
- data/lib/foreman_maintain/config.rb +6 -6
- data/lib/foreman_maintain/core_ext.rb +2 -2
- data/lib/foreman_maintain/executable.rb +7 -9
- data/lib/foreman_maintain/package_manager/apt.rb +2 -2
- data/lib/foreman_maintain/package_manager/base.rb +0 -2
- data/lib/foreman_maintain/package_manager/dnf.rb +2 -2
- data/lib/foreman_maintain/package_manager/yum.rb +2 -3
- data/lib/foreman_maintain/package_manager.rb +1 -3
- data/lib/foreman_maintain/param.rb +2 -2
- data/lib/foreman_maintain/reporter/cli_reporter.rb +6 -7
- data/lib/foreman_maintain/reporter.rb +15 -10
- data/lib/foreman_maintain/repository_manager/el.rb +2 -10
- data/lib/foreman_maintain/repository_manager.rb +2 -1
- data/lib/foreman_maintain/runner.rb +5 -5
- data/lib/foreman_maintain/scenario.rb +4 -2
- data/lib/foreman_maintain/upgrade_runner.rb +0 -2
- data/lib/foreman_maintain/utils/backup.rb +27 -111
- data/lib/foreman_maintain/utils/bash.rb +18 -19
- data/lib/foreman_maintain/utils/command_runner.rb +5 -9
- data/lib/foreman_maintain/utils/hash_tools.rb +5 -5
- data/lib/foreman_maintain/utils/response.rb +1 -0
- data/lib/foreman_maintain/utils/service/remote_db.rb +1 -0
- data/lib/foreman_maintain/utils/service/systemd.rb +3 -5
- data/lib/foreman_maintain/utils/service.rb +1 -1
- data/lib/foreman_maintain/utils.rb +0 -1
- data/lib/foreman_maintain/version.rb +1 -1
- data/lib/foreman_maintain/yaml_storage.rb +1 -0
- data/lib/foreman_maintain.rb +3 -3
- metadata +29 -78
- data/definitions/checks/foreman/check_https_proxies.rb +0 -34
- data/definitions/checks/mongo/db_up.rb +0 -33
- data/definitions/checks/mongo/tools_installed.rb +0 -31
- data/definitions/checks/pulpcore/group_ownership_check.rb +0 -18
- data/definitions/checks/puppet/provide_upgrade_guide.rb +0 -35
- data/definitions/checks/puppet/warn_about_puppet_removal.rb +0 -35
- data/definitions/checks/remote_execution/verify_settings_file_already_exists.rb +0 -42
- data/definitions/features/mongo.rb +0 -217
- data/definitions/features/pulp2.rb +0 -35
- data/definitions/procedures/backup/offline/mongo.rb +0 -56
- data/definitions/procedures/backup/online/mongo.rb +0 -21
- data/definitions/procedures/backup/snapshot/mount_mongo.rb +0 -43
- data/definitions/procedures/candlepin/delete_orphaned_records_from_env_content.rb +0 -40
- data/definitions/procedures/content/fix_pulpcore_artifact_permissions.rb +0 -31
- data/definitions/procedures/content/migration_reset.rb +0 -12
- data/definitions/procedures/content/migration_stats.rb +0 -12
- data/definitions/procedures/content/prepare.rb +0 -17
- data/definitions/procedures/content/prepare_abort.rb +0 -12
- data/definitions/procedures/content/switchover.rb +0 -41
- data/definitions/procedures/prep_6_10_upgrade.rb +0 -29
- data/definitions/procedures/pulp/cleanup_old_metadata_files.rb +0 -75
- data/definitions/procedures/pulp/migrate.rb +0 -23
- data/definitions/procedures/pulp/print_remove_instructions.rb +0 -16
- data/definitions/procedures/pulp/remove.rb +0 -222
- data/definitions/procedures/restore/ensure_mongo_engine_matches.rb +0 -35
- data/definitions/procedures/restore/mongo_dump.rb +0 -41
- data/definitions/procedures/restore/regenerate_queues.rb +0 -69
- data/definitions/scenarios/content.rb +0 -158
- data/definitions/scenarios/prep_6_10_upgrade.rb +0 -13
- data/definitions/scenarios/upgrade_to_capsule_6_10.rb +0 -89
- data/definitions/scenarios/upgrade_to_capsule_6_10_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_capsule_6_11.rb +0 -91
- data/definitions/scenarios/upgrade_to_capsule_6_11_z.rb +0 -90
- data/definitions/scenarios/upgrade_to_capsule_6_12.rb +0 -92
- data/definitions/scenarios/upgrade_to_capsule_6_12_z.rb +0 -92
- data/definitions/scenarios/upgrade_to_capsule_6_13.rb +0 -92
- data/definitions/scenarios/upgrade_to_capsule_6_13_z.rb +0 -92
- data/definitions/scenarios/upgrade_to_capsule_6_8.rb +0 -88
- data/definitions/scenarios/upgrade_to_capsule_6_8_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_capsule_6_9.rb +0 -88
- data/definitions/scenarios/upgrade_to_capsule_6_9_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_10.rb +0 -113
- data/definitions/scenarios/upgrade_to_satellite_6_10_z.rb +0 -89
- data/definitions/scenarios/upgrade_to_satellite_6_11.rb +0 -96
- data/definitions/scenarios/upgrade_to_satellite_6_11_z.rb +0 -91
- data/definitions/scenarios/upgrade_to_satellite_6_12.rb +0 -95
- data/definitions/scenarios/upgrade_to_satellite_6_12_z.rb +0 -94
- data/definitions/scenarios/upgrade_to_satellite_6_13.rb +0 -95
- data/definitions/scenarios/upgrade_to_satellite_6_13_z.rb +0 -94
- data/definitions/scenarios/upgrade_to_satellite_6_2.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_2_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_3.rb +0 -89
- data/definitions/scenarios/upgrade_to_satellite_6_3_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_4.rb +0 -89
- data/definitions/scenarios/upgrade_to_satellite_6_4_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_5.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_5_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_6.rb +0 -90
- data/definitions/scenarios/upgrade_to_satellite_6_6_z.rb +0 -90
- data/definitions/scenarios/upgrade_to_satellite_6_7.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_7_z.rb +0 -88
- data/definitions/scenarios/upgrade_to_satellite_6_8.rb +0 -91
- data/definitions/scenarios/upgrade_to_satellite_6_8_z.rb +0 -89
- data/definitions/scenarios/upgrade_to_satellite_6_9.rb +0 -91
- data/definitions/scenarios/upgrade_to_satellite_6_9_z.rb +0 -89
- data/lib/foreman_maintain/cli/content_command.rb +0 -69
- data/lib/foreman_maintain/utils/mongo_core.rb +0 -86
@@ -4,9 +4,9 @@ module Procedures::ForemanTasks
|
|
4
4
|
|
5
5
|
metadata do
|
6
6
|
param :state,
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
'In what state should the task be deleted.'\
|
8
|
+
" Possible values are #{ALLOWED_STATES_VALUES.join(', ')}",
|
9
|
+
:required => true, :allowed_values => ALLOWED_STATES_VALUES
|
10
10
|
description 'Delete tasks'
|
11
11
|
end
|
12
12
|
|
@@ -5,7 +5,7 @@ class Procedures::HammerSetup < ForemanMaintain::Procedure
|
|
5
5
|
end
|
6
6
|
|
7
7
|
def run
|
8
|
-
if feature(:foreman_server)
|
8
|
+
if feature(:foreman_server)&.services_running?
|
9
9
|
puts 'Configuring Hammer CLI...'
|
10
10
|
result = feature(:hammer).setup_admin_access
|
11
11
|
logger.info 'Hammer was configured successfully.' if result
|
@@ -6,8 +6,8 @@ class Procedures::KnowledgeBaseArticle < ForemanMaintain::Procedure
|
|
6
6
|
feature(:instance).downstream
|
7
7
|
end
|
8
8
|
param :doc,
|
9
|
-
|
10
|
-
|
9
|
+
'Document name required to select a correct article',
|
10
|
+
:required => true
|
11
11
|
advanced_run false
|
12
12
|
end
|
13
13
|
|
@@ -25,8 +25,7 @@ class Procedures::KnowledgeBaseArticle < ForemanMaintain::Procedure
|
|
25
25
|
{
|
26
26
|
'fix_cpdb_validate_failure' => 'https://access.redhat.com/solutions/3362821',
|
27
27
|
'fix_db_migrate_failure_on_duplicate_roles' => 'https://access.redhat.com/solutions/3998941',
|
28
|
-
'
|
29
|
-
'many_fact_values' => 'https://access.redhat.com/solutions/4163891'
|
28
|
+
'many_fact_values' => 'https://access.redhat.com/solutions/4163891',
|
30
29
|
}
|
31
30
|
end
|
32
31
|
end
|
@@ -3,7 +3,7 @@ module Procedures::Packages
|
|
3
3
|
metadata do
|
4
4
|
description 'Enable the given stream modules'
|
5
5
|
confine do
|
6
|
-
package_manager.
|
6
|
+
package_manager.instance_of?(ForemanMaintain::PackageManager::Dnf)
|
7
7
|
end
|
8
8
|
param :module_names, 'Module names', :array => true, :required => true
|
9
9
|
advanced_run false
|
@@ -6,7 +6,7 @@ module Procedures::Packages
|
|
6
6
|
param :assumeyes, 'Do not ask for confirmation'
|
7
7
|
param :force, 'Do not skip if package is installed', :flag => true, :default => false
|
8
8
|
param :warn_on_errors, 'Do not interrupt scenario on failure',
|
9
|
-
|
9
|
+
:flag => true, :default => false
|
10
10
|
end
|
11
11
|
|
12
12
|
def run
|
@@ -5,7 +5,7 @@ module Procedures::Packages
|
|
5
5
|
param :packages, 'List of packages to uninstall', :array => true
|
6
6
|
param :assumeyes, 'Do not ask for confirmation'
|
7
7
|
param :warn_on_errors, 'Do not interrupt scenario on failure',
|
8
|
-
|
8
|
+
:flag => true, :default => false
|
9
9
|
end
|
10
10
|
|
11
11
|
def run
|
@@ -5,7 +5,7 @@ module Procedures::Packages
|
|
5
5
|
param :assumeyes, 'Do not ask for confirmation'
|
6
6
|
param :force, 'Do not skip if package is installed', :flag => true, :default => false
|
7
7
|
param :warn_on_errors, 'Do not interrupt scenario on failure',
|
8
|
-
|
8
|
+
:flag => true, :default => false
|
9
9
|
param :yum_options, 'Extra yum options if any', :array => true, :default => []
|
10
10
|
end
|
11
11
|
|
@@ -2,8 +2,8 @@ module Procedures::RemoteExecution
|
|
2
2
|
class RemoveExistingSettingsd < ForemanMaintain::Procedure
|
3
3
|
metadata do
|
4
4
|
param :dirpath,
|
5
|
-
|
6
|
-
|
5
|
+
'Directory path for settings.d folder',
|
6
|
+
:required => true
|
7
7
|
description 'Remove existing settings.d directory before installer run.' \
|
8
8
|
"\n The next run of the installer will re-create the directory properly."
|
9
9
|
advanced_run false
|
@@ -3,7 +3,7 @@ module Procedures::Repositories
|
|
3
3
|
metadata do
|
4
4
|
param :repos, 'Array of repositories to enable'
|
5
5
|
param :use_rhsm, 'Use RHSM to enable repository',
|
6
|
-
|
6
|
+
:flag => true, :default => false
|
7
7
|
description 'Enable repositories'
|
8
8
|
end
|
9
9
|
def run
|
@@ -6,8 +6,8 @@ module Procedures::Repositories
|
|
6
6
|
feature(:instance).downstream || feature(:upstream)
|
7
7
|
end
|
8
8
|
param :version,
|
9
|
-
|
10
|
-
|
9
|
+
'Version for which repositories needs to be setup',
|
10
|
+
:required => true
|
11
11
|
run_once
|
12
12
|
end
|
13
13
|
|
@@ -3,8 +3,8 @@ module Procedures::Restore
|
|
3
3
|
metadata do
|
4
4
|
description 'Restore candlepin postgresql dump from backup'
|
5
5
|
param :backup_dir,
|
6
|
-
|
7
|
-
|
6
|
+
'Path to backup directory',
|
7
|
+
:required => true
|
8
8
|
preparation_steps { Checks::Candlepin::DBUp.new }
|
9
9
|
confine do
|
10
10
|
feature(:candlepin_database)
|
@@ -4,8 +4,8 @@ module Procedures::Restore
|
|
4
4
|
description 'Restore configs from backup'
|
5
5
|
|
6
6
|
param :backup_dir,
|
7
|
-
|
8
|
-
|
7
|
+
'Path to backup directory',
|
8
|
+
:required => true
|
9
9
|
end
|
10
10
|
|
11
11
|
def run
|
@@ -15,11 +15,9 @@ module Procedures::Restore
|
|
15
15
|
clean_conflicting_data
|
16
16
|
restore_configs(backup)
|
17
17
|
reset_qpid_jrnls
|
18
|
-
reload_configs
|
19
18
|
end
|
20
19
|
end
|
21
20
|
|
22
|
-
# rubocop:disable Metrics/MethodLength
|
23
21
|
def restore_configs(backup)
|
24
22
|
exclude = ForemanMaintain.available_features.each_with_object([]) do |feat, cfgs|
|
25
23
|
if backup.online_backup?
|
@@ -35,16 +33,11 @@ module Procedures::Restore
|
|
35
33
|
:directory => '/',
|
36
34
|
:archive => backup.file_map[:config_files][:path],
|
37
35
|
:gzip => true,
|
38
|
-
:exclude => exclude
|
36
|
+
:exclude => exclude,
|
39
37
|
}
|
40
38
|
|
41
39
|
feature(:tar).run(tar_options)
|
42
40
|
end
|
43
|
-
# rubocop:enable Metrics/MethodLength
|
44
|
-
|
45
|
-
def reload_configs
|
46
|
-
feature(:mongo).reload_db_config if feature(:mongo)
|
47
|
-
end
|
48
41
|
|
49
42
|
private
|
50
43
|
|
@@ -4,8 +4,8 @@ module Procedures::Restore
|
|
4
4
|
description 'Drop postgresql databases'
|
5
5
|
|
6
6
|
param :backup_dir,
|
7
|
-
|
8
|
-
|
7
|
+
'Path to backup directory',
|
8
|
+
:required => true
|
9
9
|
|
10
10
|
confine do
|
11
11
|
feature(:foreman_database) || feature(:candlepin_database) || feature(:pulpcore_database)
|
@@ -4,8 +4,8 @@ module Procedures::Restore
|
|
4
4
|
description 'Extract any existing tar files in backup'
|
5
5
|
|
6
6
|
param :backup_dir,
|
7
|
-
|
8
|
-
|
7
|
+
'Path to backup directory',
|
8
|
+
:required => true
|
9
9
|
end
|
10
10
|
|
11
11
|
def run
|
@@ -15,10 +15,6 @@ module Procedures::Restore
|
|
15
15
|
spinner.update('Extracting pulp data')
|
16
16
|
extract_pulp_data(backup)
|
17
17
|
end
|
18
|
-
if backup.file_map[:mongo_data][:present]
|
19
|
-
spinner.update('Extracting mongo data')
|
20
|
-
extract_mongo_data(backup)
|
21
|
-
end
|
22
18
|
if backup.file_map[:pgsql_data][:present]
|
23
19
|
spinner.update('Extracting pgsql data')
|
24
20
|
extract_pgsql_data(backup)
|
@@ -32,7 +28,7 @@ module Procedures::Restore
|
|
32
28
|
:absolute_names => true,
|
33
29
|
:listed_incremental => '/dev/null',
|
34
30
|
:command => 'extract',
|
35
|
-
:directory => '/'
|
31
|
+
:directory => '/',
|
36
32
|
}
|
37
33
|
end
|
38
34
|
|
@@ -52,14 +48,6 @@ module Procedures::Restore
|
|
52
48
|
feature(:tar).run(pulp_data_tar)
|
53
49
|
end
|
54
50
|
|
55
|
-
def extract_mongo_data(backup)
|
56
|
-
mongo_data_tar = base_tar.merge(
|
57
|
-
:archive => backup.file_map[:mongo_data][:path],
|
58
|
-
:gzip => true
|
59
|
-
)
|
60
|
-
feature(:tar).run(mongo_data_tar)
|
61
|
-
end
|
62
|
-
|
63
51
|
def any_database
|
64
52
|
feature(:foreman_database) || feature(:candlepin_database) || feature(:pulpcore_database)
|
65
53
|
end
|
@@ -67,8 +55,7 @@ module Procedures::Restore
|
|
67
55
|
def extract_pgsql_data(backup)
|
68
56
|
pgsql_data_tar = base_tar.merge(
|
69
57
|
:archive => backup.file_map[:pgsql_data][:path],
|
70
|
-
:gzip => true
|
71
|
-
:transform => any_database.restore_transform
|
58
|
+
:gzip => true
|
72
59
|
)
|
73
60
|
feature(:tar).run(pgsql_data_tar)
|
74
61
|
del_data_dir_param if el?
|
@@ -3,8 +3,8 @@ module Procedures::Restore
|
|
3
3
|
metadata do
|
4
4
|
description 'Restore foreman postgresql dump from backup'
|
5
5
|
param :backup_dir,
|
6
|
-
|
7
|
-
|
6
|
+
'Path to backup directory',
|
7
|
+
:required => true
|
8
8
|
preparation_steps { Checks::Foreman::DBUp.new }
|
9
9
|
confine do
|
10
10
|
feature(:foreman_database)
|
@@ -20,8 +20,7 @@ module Procedures::Restore
|
|
20
20
|
# We always disable system checks to avoid unnecessary errors. The installer should have
|
21
21
|
# already ran since this is to be run on an existing system, which means installer checks
|
22
22
|
# has already been skipped
|
23
|
-
if feature(:foreman_proxy) &&
|
24
|
-
feature(:foreman_proxy).with_content? &&
|
23
|
+
if feature(:foreman_proxy)&.with_content? &&
|
25
24
|
check_max_version('foreman-installer', '3.4')
|
26
25
|
installer << '--disable-system-checks '
|
27
26
|
end
|
@@ -3,8 +3,8 @@ module Procedures::Restore
|
|
3
3
|
metadata do
|
4
4
|
description 'Restore pulpcore postgresql dump from backup'
|
5
5
|
param :backup_dir,
|
6
|
-
|
7
|
-
|
6
|
+
'Path to backup directory',
|
7
|
+
:required => true
|
8
8
|
preparation_steps { Checks::Pulpcore::DBUp.new }
|
9
9
|
confine do
|
10
10
|
feature(:pulpcore_database)
|
@@ -4,8 +4,8 @@ module Procedures::Selinux
|
|
4
4
|
description 'Setting file security'
|
5
5
|
|
6
6
|
param :incremental_backup,
|
7
|
-
|
8
|
-
|
7
|
+
'Is the backup incremental?',
|
8
|
+
:required => true
|
9
9
|
manual_detection
|
10
10
|
confine do
|
11
11
|
File.directory?('/sys/fs/selinux')
|
@@ -6,7 +6,7 @@ module Procedures::Service
|
|
6
6
|
description 'Restart applicable services'
|
7
7
|
Base.common_params(self)
|
8
8
|
param :wait_for_server_response,
|
9
|
-
|
9
|
+
'Wait for server ping to return successfully before terminating'
|
10
10
|
end
|
11
11
|
|
12
12
|
RETRIES_FOR_SERVICES_RESTART = 5
|
@@ -6,7 +6,7 @@ module ForemanMaintain::Scenarios
|
|
6
6
|
tags :backup
|
7
7
|
run_strategy :fail_fast
|
8
8
|
param :strategy, 'Backup strategy. One of [:online, :offline, :snapshot]',
|
9
|
-
|
9
|
+
:required => true
|
10
10
|
param :backup_dir, 'Directory where to backup to', :required => true
|
11
11
|
param :mount_dir, 'Snapshot mount directory'
|
12
12
|
param :include_db_dumps, 'Include dumps of local dbs as part of offline'
|
@@ -19,7 +19,6 @@ module ForemanMaintain::Scenarios
|
|
19
19
|
param :tar_volume_size, 'Size of tar volume (indicates splitting)'
|
20
20
|
end
|
21
21
|
|
22
|
-
# rubocop:disable Metrics/MethodLength
|
23
22
|
def compose
|
24
23
|
check_valid_startegy
|
25
24
|
safety_confirmation
|
@@ -39,7 +38,6 @@ module ForemanMaintain::Scenarios
|
|
39
38
|
end
|
40
39
|
add_step_with_context(Procedures::Backup::CompressData)
|
41
40
|
end
|
42
|
-
# rubocop:enable Metrics/MethodLength
|
43
41
|
|
44
42
|
def deb_snapshot_msg
|
45
43
|
if debian_or_ubuntu?
|
@@ -51,60 +49,54 @@ module ForemanMaintain::Scenarios
|
|
51
49
|
# rubocop:disable Metrics/MethodLength
|
52
50
|
def set_context_mapping
|
53
51
|
context.map(:backup_dir,
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
Procedures::Backup::Snapshot::MountForemanDB => :backup_dir,
|
71
|
-
Procedures::Backup::Snapshot::MountPulpcoreDB => :backup_dir,
|
72
|
-
Procedures::Backup::Snapshot::MountMongo => :backup_dir)
|
52
|
+
Checks::Backup::DirectoryReady => :backup_dir,
|
53
|
+
Procedures::Backup::PrepareDirectory => :backup_dir,
|
54
|
+
Procedures::Backup::Metadata => :backup_dir,
|
55
|
+
Procedures::Backup::ConfigFiles => :backup_dir,
|
56
|
+
Procedures::Backup::CompressData => :backup_dir,
|
57
|
+
Procedures::Backup::Pulp => :backup_dir,
|
58
|
+
Procedures::Backup::Online::CandlepinDB => :backup_dir,
|
59
|
+
Procedures::Backup::Online::ForemanDB => :backup_dir,
|
60
|
+
Procedures::Backup::Online::PulpcoreDB => :backup_dir,
|
61
|
+
Procedures::Backup::Offline::CandlepinDB => :backup_dir,
|
62
|
+
Procedures::Backup::Offline::ForemanDB => :backup_dir,
|
63
|
+
Procedures::Backup::Offline::PulpcoreDB => :backup_dir,
|
64
|
+
Procedures::Backup::Snapshot::LogicalVolumeConfirmation => :backup_dir,
|
65
|
+
Procedures::Backup::Snapshot::MountCandlepinDB => :backup_dir,
|
66
|
+
Procedures::Backup::Snapshot::MountForemanDB => :backup_dir,
|
67
|
+
Procedures::Backup::Snapshot::MountPulpcoreDB => :backup_dir)
|
73
68
|
context.map(:preserve_dir,
|
74
|
-
|
75
|
-
|
69
|
+
Checks::Backup::DirectoryReady => :preserve_dir,
|
70
|
+
Procedures::Backup::PrepareDirectory => :preserve_dir)
|
76
71
|
context.map(:incremental_dir,
|
77
|
-
|
78
|
-
|
72
|
+
Procedures::Backup::PrepareDirectory => :incremental_dir,
|
73
|
+
Procedures::Backup::Metadata => :incremental_dir)
|
79
74
|
context.map(:proxy_features,
|
80
|
-
|
75
|
+
Procedures::Backup::ConfigFiles => :proxy_features)
|
81
76
|
context.map(:snapshot_mount_dir,
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
Procedures::Backup::Offline::ForemanDB => :mount_dir,
|
93
|
-
Procedures::Backup::Offline::PulpcoreDB => :mount_dir)
|
77
|
+
Procedures::Backup::Snapshot::PrepareMount => :mount_dir,
|
78
|
+
Procedures::Backup::Snapshot::MountPulp => :mount_dir,
|
79
|
+
Procedures::Backup::Snapshot::CleanMount => :mount_dir,
|
80
|
+
Procedures::Backup::Snapshot::MountCandlepinDB => :mount_dir,
|
81
|
+
Procedures::Backup::Snapshot::MountForemanDB => :mount_dir,
|
82
|
+
Procedures::Backup::Snapshot::MountPulpcoreDB => :mount_dir,
|
83
|
+
Procedures::Backup::Pulp => :mount_dir,
|
84
|
+
Procedures::Backup::Offline::CandlepinDB => :mount_dir,
|
85
|
+
Procedures::Backup::Offline::ForemanDB => :mount_dir,
|
86
|
+
Procedures::Backup::Offline::PulpcoreDB => :mount_dir)
|
94
87
|
context.map(:snapshot_block_size,
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
Procedures::Backup::Snapshot::MountPulpcoreDB => :block_size)
|
88
|
+
Procedures::Backup::Snapshot::MountPulp => :block_size,
|
89
|
+
Procedures::Backup::Snapshot::MountForemanDB => :block_size,
|
90
|
+
Procedures::Backup::Snapshot::MountCandlepinDB => :block_size,
|
91
|
+
Procedures::Backup::Snapshot::MountPulpcoreDB => :block_size)
|
100
92
|
context.map(:skip_pulp_content,
|
101
|
-
|
102
|
-
|
103
|
-
|
93
|
+
Procedures::Backup::Pulp => :skip,
|
94
|
+
Procedures::Backup::Snapshot::LogicalVolumeConfirmation => :skip_pulp,
|
95
|
+
Procedures::Backup::Snapshot::MountPulp => :skip)
|
104
96
|
context.map(:tar_volume_size,
|
105
|
-
|
97
|
+
Procedures::Backup::Pulp => :tar_volume_size)
|
106
98
|
context.map(:include_db_dumps,
|
107
|
-
|
99
|
+
Procedures::Backup::Online::SafetyConfirmation => :include_db_dumps)
|
108
100
|
end
|
109
101
|
# rubocop:enable Metrics/MethodLength
|
110
102
|
|
@@ -149,7 +141,6 @@ module ForemanMaintain::Scenarios
|
|
149
141
|
Procedures::Service::Stop,
|
150
142
|
Procedures::Backup::ConfigFiles,
|
151
143
|
Procedures::Backup::Pulp,
|
152
|
-
Procedures::Backup::Offline::Mongo,
|
153
144
|
Procedures::Backup::Offline::CandlepinDB,
|
154
145
|
Procedures::Backup::Offline::ForemanDB,
|
155
146
|
Procedures::Backup::Offline::PulpcoreDB,
|
@@ -168,9 +159,6 @@ module ForemanMaintain::Scenarios
|
|
168
159
|
if feature(:instance).database_local?(:pulpcore_database)
|
169
160
|
add_step_with_context(Procedures::Backup::Online::PulpcoreDB)
|
170
161
|
end
|
171
|
-
if feature(:instance).database_local?(:mongo)
|
172
|
-
add_step_with_context(Procedures::Backup::Online::Mongo)
|
173
|
-
end
|
174
162
|
end
|
175
163
|
|
176
164
|
# rubocop:disable Metrics/MethodLength
|
@@ -182,7 +170,6 @@ module ForemanMaintain::Scenarios
|
|
182
170
|
find_procedures(:maintenance_mode_on),
|
183
171
|
Procedures::Service::Stop,
|
184
172
|
Procedures::Backup::ConfigFiles,
|
185
|
-
Procedures::Backup::Snapshot::MountMongo,
|
186
173
|
Procedures::Backup::Snapshot::MountPulp,
|
187
174
|
Procedures::Backup::Snapshot::MountCandlepinDB,
|
188
175
|
Procedures::Backup::Snapshot::MountForemanDB,
|
@@ -200,9 +187,6 @@ module ForemanMaintain::Scenarios
|
|
200
187
|
if feature(:instance).database_local?(:pulpcore_database)
|
201
188
|
add_step_with_context(Procedures::Backup::Offline::PulpcoreDB)
|
202
189
|
end
|
203
|
-
if feature(:instance).database_local?(:mongo)
|
204
|
-
add_step_with_context(Procedures::Backup::Offline::Mongo)
|
205
|
-
end
|
206
190
|
add_step_with_context(Procedures::Backup::Snapshot::CleanMount)
|
207
191
|
end
|
208
192
|
# rubocop:enable Metrics/MethodLength
|
@@ -212,7 +196,6 @@ module ForemanMaintain::Scenarios
|
|
212
196
|
:online_backup => true)
|
213
197
|
add_step_with_context(Procedures::Backup::Pulp, :ensure_unchanged => true)
|
214
198
|
add_steps_with_context(
|
215
|
-
Procedures::Backup::Online::Mongo,
|
216
199
|
Procedures::Backup::Online::CandlepinDB,
|
217
200
|
Procedures::Backup::Online::ForemanDB,
|
218
201
|
Procedures::Backup::Online::PulpcoreDB
|
@@ -253,11 +236,11 @@ module ForemanMaintain::Scenarios
|
|
253
236
|
|
254
237
|
def set_context_mapping
|
255
238
|
context.map(:snapshot_mount_dir,
|
256
|
-
|
239
|
+
Procedures::Backup::Snapshot::CleanMount => :mount_dir)
|
257
240
|
context.map(:backup_dir,
|
258
|
-
|
241
|
+
Procedures::Backup::Clean => :backup_dir)
|
259
242
|
context.map(:preserve_dir,
|
260
|
-
|
243
|
+
Procedures::Backup::Clean => :preserve_dir)
|
261
244
|
end
|
262
245
|
|
263
246
|
private
|
@@ -73,12 +73,12 @@ module ForemanMaintain::Scenarios
|
|
73
73
|
def compose
|
74
74
|
if Packages.skip_installer_run?(context.get(:packages))
|
75
75
|
add_step_with_context(Procedures::Packages::Install,
|
76
|
-
|
76
|
+
:force => true, :warn_on_errors => true)
|
77
77
|
else
|
78
78
|
add_step_with_context(Procedures::Packages::InstallerConfirmation)
|
79
79
|
add_step_with_context(Procedures::Packages::UnlockVersions)
|
80
80
|
add_step_with_context(Procedures::Packages::Install,
|
81
|
-
|
81
|
+
:force => true, :warn_on_errors => true)
|
82
82
|
add_step_with_context(Procedures::Installer::Upgrade)
|
83
83
|
add_step(Procedures::Packages::LockingStatus)
|
84
84
|
end
|
@@ -86,9 +86,9 @@ module ForemanMaintain::Scenarios
|
|
86
86
|
|
87
87
|
def set_context_mapping
|
88
88
|
context.map(:packages,
|
89
|
-
|
89
|
+
Procedures::Packages::Install => :packages)
|
90
90
|
context.map(:assumeyes,
|
91
|
-
|
91
|
+
Procedures::Packages::Install => :assumeyes)
|
92
92
|
end
|
93
93
|
end
|
94
94
|
|
@@ -103,7 +103,7 @@ module ForemanMaintain::Scenarios
|
|
103
103
|
def compose
|
104
104
|
if Packages.skip_installer_run?(context.get(:packages))
|
105
105
|
add_step_with_context(Procedures::Packages::Update,
|
106
|
-
|
106
|
+
:force => true, :warn_on_errors => true)
|
107
107
|
else
|
108
108
|
add_steps_with_context(
|
109
109
|
Procedures::Packages::UpdateAllConfirmation,
|
@@ -111,7 +111,7 @@ module ForemanMaintain::Scenarios
|
|
111
111
|
)
|
112
112
|
add_step_with_context(Procedures::Packages::UnlockVersions)
|
113
113
|
add_step_with_context(Procedures::Packages::Update,
|
114
|
-
|
114
|
+
:force => true, :warn_on_errors => true)
|
115
115
|
add_step_with_context(Procedures::Installer::Upgrade)
|
116
116
|
add_step(Procedures::Packages::LockingStatus)
|
117
117
|
end
|
@@ -119,10 +119,10 @@ module ForemanMaintain::Scenarios
|
|
119
119
|
|
120
120
|
def set_context_mapping
|
121
121
|
context.map(:packages,
|
122
|
-
|
123
|
-
|
122
|
+
Procedures::Packages::Update => :packages,
|
123
|
+
Procedures::Packages::UpdateAllConfirmation => :packages)
|
124
124
|
context.map(:assumeyes,
|
125
|
-
|
125
|
+
Procedures::Packages::Update => :assumeyes)
|
126
126
|
end
|
127
127
|
end
|
128
128
|
end
|