-UNSUPPORTED_PLATFORMS = ['RedHat','Suse','windows','AIX','Solaris']
+def run_task(task_name:, params: nil, password: DEFAULT_PASSWORD)
+ if pe_install?
+ run_puppet_task(task_name: task_name, params: params)
+ else
+ run_bolt_task(task_name: task_name, params: params, password: password)
+ end
+end
+
+def run_bolt_task(task_name:, params: nil, password: DEFAULT_PASSWORD)
+ on(master, "/opt/puppetlabs/puppet/bin/bolt task run #{task_name} --modules /etc/puppetlabs/code/modules/service --nodes localhost --password #{password} #{params}", acceptable_exit_codes: [0, 1]).stdout # rubocop:disable Metrics/LineLength
+end
+
+def run_puppet_task(task_name:, params: nil)
+ on(master, puppet('task', 'run', task_name, '--nodes', fact_on(master, 'fqdn'), params.to_s), acceptable_exit_codes: [0, 1]).stdout
+end
+
+def expect_multiple_regexes(result:, regexes:)
+ regexes.each do |regex|
+ expect(result).to match(regex)
+ end
+end