summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/controllers/builds_controller.rb7
-rw-r--r--app/models/build.rb4
2 files changed, 5 insertions, 6 deletions
diff --git a/app/controllers/builds_controller.rb b/app/controllers/builds_controller.rb
index 523437d..a0eed73 100644
--- a/app/controllers/builds_controller.rb
+++ b/app/controllers/builds_controller.rb
@@ -32,12 +32,7 @@ class BuildsController < ApplicationController
end
def retry
- build = project.builds.create(
- sha: @build.sha,
- before_sha: @build.before_sha,
- push_data: @build.commit.push_data,
- ref: @build.ref
- )
+ build = Build.retry(@build)
redirect_to project_build_path(project, build)
end
diff --git a/app/models/build.rb b/app/models/build.rb
index b770356..968ac03 100644
--- a/app/models/build.rb
+++ b/app/models/build.rb
@@ -55,6 +55,10 @@ class Build < ActiveRecord::Base
new_build.save
end
+ def self.retry(build)
+ Build.create(commit_id: build.commit_id)
+ end
+
state_machine :status, initial: :pending do
event :run do
transition pending: :running