diff --git a/app/jobs/shipit/destroy_stack_job.rb b/app/jobs/shipit/destroy_stack_job.rb index e120b0e9b..23c137b60 100644 --- a/app/jobs/shipit/destroy_stack_job.rb +++ b/app/jobs/shipit/destroy_stack_job.rb @@ -32,6 +32,9 @@ def perform(stack) delete(Shipit::OutputChunk.joins(:task).where(task: { stack_id: stack.id })) delete(Shipit::Task.where(stack_id: stack.id)) + + delete(Shipit::Commit.where(stack_id: stack.id)) + stack.destroy! end diff --git a/app/models/shipit/stack.rb b/app/models/shipit/stack.rb index 636ff18dc..a48bad72a 100644 --- a/app/models/shipit/stack.rb +++ b/app/models/shipit/stack.rb @@ -38,7 +38,7 @@ def blank? has_many :github_hooks, dependent: :destroy, class_name: 'Shipit::GithubHook::Repo' has_many :hooks, dependent: :destroy has_many :api_clients, dependent: :destroy - has_one :continuous_delivery_schedule + has_one :continuous_delivery_schedule, dependent: :destroy belongs_to :lock_author, class_name: :User, optional: true belongs_to :repository validates_associated :repository