From d41e83e91a2b2c90ab51feda61e105818e1713be Mon Sep 17 00:00:00 2001
From: Lin Jen-Shin <godfat@godfat.org>
Date: Fri, 29 Jul 2016 17:06:09 +0800
Subject: [PATCH] Don't execute hooks if ci was supposed to be skipped

And we should preserve the return value
---
 app/models/ci/pipeline.rb | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/app/models/ci/pipeline.rb b/app/models/ci/pipeline.rb
index cd6ead4ded2..4e6ccf48c68 100644
--- a/app/models/ci/pipeline.rb
+++ b/app/models/ci/pipeline.rb
@@ -237,8 +237,9 @@ module Ci
       self.started_at = statuses.started_at
       self.finished_at = statuses.finished_at
       self.duration = statuses.latest.duration
-      save
-      execute_hooks
+      saved = save
+      execute_hooks if saved && !skip_ci?
+      saved
     end
 
     def execute_hooks
-- 
GitLab