Merge pull request #529 from reasonerjt/master

write log to job log when it's canceled, fixes #527
This commit is contained in:
Daniel Jiang 2016-07-13 14:47:08 +08:00 committed by GitHub
commit 4edfbeb30b
2 changed files with 15 additions and 14 deletions

View File

@ -191,6 +191,7 @@ func (sm *SM) Reset(jid int64) error {
sm.desiredState = "" sm.desiredState = ""
sm.lock.Unlock() sm.lock.Unlock()
sm.Logger = utils.NewLogger(sm.JobID)
//init parms //init parms
job, err := dao.GetRepJob(sm.JobID) job, err := dao.GetRepJob(sm.JobID)
if err != nil { if err != nil {
@ -239,7 +240,6 @@ func (sm *SM) Reset(jid int64) error {
sm.Parms.TargetPassword = pwd sm.Parms.TargetPassword = pwd
//init states handlers //init states handlers
sm.Logger = utils.NewLogger(sm.JobID)
sm.Handlers = make(map[string]StateHandler) sm.Handlers = make(map[string]StateHandler)
sm.Transitions = make(map[string]map[string]struct{}) sm.Transitions = make(map[string]map[string]struct{})
sm.CurrentState = models.JobPending sm.CurrentState = models.JobPending

View File

@ -1,16 +1,16 @@
/* /*
Copyright (c) 2016 VMware, Inc. All Rights Reserved. Copyright (c) 2016 VMware, Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
You may obtain a copy of the License at You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
package job package job
@ -90,8 +90,9 @@ func (w *Worker) handleRepJob(id int64) {
return return
} }
if w.SM.Parms.Enabled == 0 { if w.SM.Parms.Enabled == 0 {
log.Debugf("The policy of job:%d is disabled, will cancel the job") log.Debugf("The policy of job:%d is disabled, will cancel the job", id)
_ = dao.UpdateRepJobStatus(id, models.JobCanceled) _ = dao.UpdateRepJobStatus(id, models.JobCanceled)
w.SM.Logger.Info("The job has been canceled")
} else { } else {
w.SM.Start(models.JobRunning) w.SM.Start(models.JobRunning)
} }