Skip to content

Commit

Permalink
Merge pull request #36 from chef/revert-31-vasundhara/fix_to_set_user…
Browse files Browse the repository at this point in the history
…_information_at_the_time_of_creation_of_task

Revert "Fix to set user information at the time of task creation"
  • Loading branch information
Vasundhara Jagdale committed Jun 6, 2018
2 parents dd09459 + 8cec8f6 commit e11e3e3
Showing 1 changed file with 7 additions and 17 deletions.
24 changes: 7 additions & 17 deletions lib/win32/taskscheduler.rb
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ def set_account_information(user, password)
TASK_CREATE_OR_UPDATE,
user,
password,
password ? TASK_LOGON_PASSWORD : TASK_LOGON_SERVICE_ACCOUNT
TASK_LOGON_PASSWORD
)
rescue WIN32OLERuntimeError => err
raise Error, ole_error('RegisterTaskDefinition', err)
Expand Down Expand Up @@ -491,27 +491,17 @@ def priority=(priority)
# trigger variable is a hash of options that define when the scheduled
# job should run.
#
def new_work_item(task, trigger, userinfo = { user: nil, password: nil })
raise TypeError unless userinfo.is_a?(Hash)
def new_work_item(task, trigger)
raise TypeError unless task.is_a?(String)
raise TypeError unless trigger.is_a?(Hash)

unless userinfo[:user].nil?
raise TypeError unless userinfo[:user].is_a?(String)
unless SYSTEM_USERS.include?(userinfo[:user])
raise TypeError unless userinfo[:password].is_a?(String)
end
end

taskDefinition = @service.NewTask(0)
taskDefinition.RegistrationInfo.Description = ''
taskDefinition.RegistrationInfo.Author = ''
taskDefinition.Settings.StartWhenAvailable = false
taskDefinition.Settings.StartWhenAvailable = true
taskDefinition.Settings.Enabled = true
taskDefinition.Settings.Hidden = false



unless trigger.empty?
raise ArgumentError, 'Unknown trigger type' unless valid_trigger_option(trigger[:trigger_type])
validate_trigger(trigger)
Expand Down Expand Up @@ -590,16 +580,16 @@ def new_work_item(task, trigger, userinfo = { user: nil, password: nil })

act = taskDefinition.Actions.Create(0)
act.Path = 'cmd'
user = taskDefinition.Principal.UserId

@password = userinfo[:password]
begin
@task = @root.RegisterTaskDefinition(
task,
taskDefinition,
TASK_CREATE_OR_UPDATE,
userinfo[:user].nil? || userinfo[:user].empty? ? 'SYSTEM': userinfo[:user],
userinfo[:password],
userinfo[:password] ? TASK_LOGON_PASSWORD : TASK_LOGON_SERVICE_ACCOUNT
user.empty? ? 'SYSTEM' : user,
@password,
@password ? TASK_LOGON_PASSWORD : TASK_LOGON_SERVICE_ACCOUNT
)
rescue WIN32OLERuntimeError => err
raise Error, ole_error('RegisterTaskDefinition', err)
Expand Down

0 comments on commit e11e3e3

Please sign in to comment.