Sha256: 11fed8fff330d3ec6be5010a0a3993e5e3e9ff8fe0fed231f090f57347ccb333

Contents?: true

Size: 776 Bytes

Versions: 6

Compression:

Stored size: 776 Bytes

Contents

# frozen_string_literal: true
module Shipit
  class RollbacksController < ShipitController
    before_action :load_stack
    before_action :load_deploy

    def create
      @rollback = @deploy.trigger_rollback(current_user, env: rollback_params[:env], force: params[:force].present?)
      redirect_to(stack_deploy_path(@stack, @rollback))
    rescue Task::ConcurrentTaskRunning
      redirect_to(rollback_stack_deploy_path(@stack, @deploy))
    end

    private

    def load_stack
      @stack ||= Stack.from_param!(params[:stack_id])
    end

    def load_deploy
      @deploy = @stack.deploys.find(rollback_params[:parent_id])
    end

    def rollback_params
      params.require(:rollback).permit(:parent_id, env: @stack.deploy_variables.map(&:name))
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
shipit-engine-0.36.0 app/controllers/shipit/rollbacks_controller.rb
shipit-engine-0.35.1 app/controllers/shipit/rollbacks_controller.rb
shipit-engine-0.35.0 app/controllers/shipit/rollbacks_controller.rb
shipit-engine-0.34.0 app/controllers/shipit/rollbacks_controller.rb
shipit-engine-0.33.0 app/controllers/shipit/rollbacks_controller.rb
shipit-engine-0.32.0 app/controllers/shipit/rollbacks_controller.rb