Module: Beaker::DSL::PEClientTools::ExecutableHelper
- Included in:
- Beaker::DSL::PE
- Defined in:
- lib/beaker-pe/pe-client-tools/executable_helper.rb
Defined Under Namespace
Classes: Private
Instance Method Summary collapse
-
#login_with_puppet_access_on(host, credentialed_dispatcher, opts = {}) ⇒ Object
Logs a user in on a SUT with puppet-access/RBAC API (windows).
-
#puppet_access_on(*args, &block) ⇒ Object
puppet-access helper win/lin/osx.
-
#puppet_app_on(*args, &block) ⇒ Object
puppet-app helper win/lin/osx.
-
#puppet_code_on(*args, &block) ⇒ Object
puppet-code helper win/lin/osx.
-
#puppet_db_on(*args, &block) ⇒ Object
puppet-db helper win/lin/osx.
-
#puppet_job_on(*args, &block) ⇒ Object
puppet-job helper win/lin/osx.
-
#puppet_query_on(*args, &block) ⇒ Object
puppet-query helper win/lin/osx.
-
#puppet_task_on(*args, &block) ⇒ Object
puppet-task helper win/lin/osx.
Instance Method Details
#login_with_puppet_access_on(host, credentialed_dispatcher, opts = {}) ⇒ Object
Logs a user in on a SUT with puppet-access/RBAC API (windows)
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/beaker-pe/pe-client-tools/executable_helper.rb', line 80 def login_with_puppet_access_on(host, credentialed_dispatcher, opts={}) lifetime = opts[:lifetime] || nil unless host.platform =~ /win/ user = credentialed_dispatcher.credentials.login password = credentialed_dispatcher.credentials.password args = ['login'] args.push "--lifetime #{lifetime}" if lifetime puppet_access_on(host, *args, {:stdin => "#{user}\n#{password}\n"}) else # this is a hack # puppet-access needs to support alternative to interactive login # create .puppetlabs dir cmd = Beaker::Command.new('echo', ['%userprofile%'], :cmdexe => true) user_home_dir = host.exec(cmd).stdout.chomp win_token_path = "#{user_home_dir}\\.puppetlabs\\" host.exec(Beaker::Command.new('MD', [win_token_path.gsub('\\', '\\\\\\')], :cmdexe => true), :accept_all_exit_codes => true) token = credentialed_dispatcher.acquire_token_with_credentials(lifetime) create_remote_file(host, "#{win_token_path}\\token", token) end end |
#puppet_access_on(*args, &block) ⇒ Object
puppet-access helper win/lin/osx
15 16 17 |
# File 'lib/beaker-pe/pe-client-tools/executable_helper.rb', line 15 def puppet_access_on(*args, &block) Private.new.tool(:access, *args, &block) end |
#puppet_app_on(*args, &block) ⇒ Object
puppet-app helper win/lin/osx
42 43 44 |
# File 'lib/beaker-pe/pe-client-tools/executable_helper.rb', line 42 def puppet_app_on(*args, &block) Private.new.tool(:app, *args, &block) end |
#puppet_code_on(*args, &block) ⇒ Object
puppet-code helper win/lin/osx
24 25 26 |
# File 'lib/beaker-pe/pe-client-tools/executable_helper.rb', line 24 def puppet_code_on(*args, &block) Private.new.tool(:code, *args, &block) end |
#puppet_db_on(*args, &block) ⇒ Object
puppet-db helper win/lin/osx
51 52 53 |
# File 'lib/beaker-pe/pe-client-tools/executable_helper.rb', line 51 def puppet_db_on(*args, &block) Private.new.tool(:db, *args, &block) end |
#puppet_job_on(*args, &block) ⇒ Object
puppet-job helper win/lin/osx
33 34 35 |
# File 'lib/beaker-pe/pe-client-tools/executable_helper.rb', line 33 def puppet_job_on(*args, &block) Private.new.tool(:job, *args, &block) end |