Sha256: 63dc31e624a51f1d900abb1a9f8a2e4b0d329f2d9891984079323cee2d142b28

Contents?: true

Size: 686 Bytes

Versions: 17

Compression:

Stored size: 686 Bytes

Contents

module Shipit
  module Api
    class TasksController < BaseController
      require_permission :read, :stack
      require_permission :deploy, :stack, only: :trigger

      def index
        render_resources stack.tasks
      end

      def show
        render_resource stack.tasks.find(params[:id])
      end

      params do
        accepts :env, Hash, default: {}
      end
      def trigger
        render_resource stack.trigger_task(params[:task_name], current_user, env: params.env), status: :accepted
      rescue Shipit::Task::ConcurrentTaskRunning
        render status: :conflict, json: {
          message: 'A task is already running.',
        }
      end
    end
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
shipit-engine-0.31.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.30.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.29.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.28.1 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.28.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.27.1 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.27.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.26.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.25.1 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.25.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.24.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.23.1 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.23.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.22.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.21.0 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.20.1 app/controllers/shipit/api/tasks_controller.rb
shipit-engine-0.20.0 app/controllers/shipit/api/tasks_controller.rb