@@ -692,11 +692,10 @@ func GetNodeRunBuildCommits(ctx context.Context, db gorp.SqlExecutor, store cach
692
692
}
693
693
694
694
// PreviousNodeRun find previous node run
695
- func PreviousNodeRun (db gorp.SqlExecutor , nr sdk.WorkflowNodeRun , nodeName string , workflowID int64 ) (sdk.WorkflowNodeRun , error ) {
696
- var nodeRun sdk.WorkflowNodeRun
695
+ func PreviousNodeRun (db gorp.SqlExecutor , nr sdk.WorkflowNodeRun , nodeName string , workflowID int64 ) (* sdk.WorkflowNodeRun , error ) {
697
696
// check the first run of a workflow, no need to check previous
698
697
if nr .Number == 1 && nr .SubNumber == 0 {
699
- return nodeRun , nil
698
+ return nil , nil
700
699
}
701
700
query := fmt .Sprintf (`
702
701
SELECT %s FROM workflow_node_run
@@ -711,14 +710,16 @@ func PreviousNodeRun(db gorp.SqlExecutor, nr sdk.WorkflowNodeRun, nodeName strin
711
710
712
711
var rr = NodeRun {}
713
712
if err := db .SelectOne (& rr , query , workflowID , nodeName , nr .VCSBranch , nr .VCSTag , nr .Number , nr .ID ); err != nil {
714
- return nodeRun , sdk .WrapError (err , "Cannot load previous run on workflow %d node %s nr.VCSBranch:%s nr.VCSTag:%s nr.Number:%d nr.ID:%d " , workflowID , nodeName , nr .VCSBranch , nr .VCSTag , nr .Number , nr .ID )
713
+ if err == sql .ErrNoRows {
714
+ return nil , nil
715
+ }
716
+ return nil , sdk .WrapError (err , "Cannot load previous run on workflow %d node %s nr.VCSBranch:%s nr.VCSTag:%s nr.Number:%d nr.ID:%d " , workflowID , nodeName , nr .VCSBranch , nr .VCSTag , nr .Number , nr .ID )
715
717
}
716
718
pNodeRun , errF := fromDBNodeRun (rr , LoadRunOptions {})
717
719
if errF != nil {
718
- return nodeRun , sdk .WrapError (errF , "PreviousNodeRun> Cannot read node run" )
720
+ return nil , sdk .WrapError (errF , "PreviousNodeRun> Cannot read node run" )
719
721
}
720
- nodeRun = * pNodeRun
721
- return nodeRun , nil
722
+ return pNodeRun , nil
722
723
}
723
724
724
725
//PreviousNodeRunVCSInfos returns a struct with BuildNumber, Commit Hash, Branch, Remote, Remote_url
0 commit comments