Sha256: f567bcf8b5bcef42b35c8b2a05f1eb5c07fdef134a0c523226a45d24e3eadb9c

Contents?: true

Size: 740 Bytes

Versions: 10

Compression:

Stored size: 740 Bytes

Contents

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

    def create
      case params[:status]
      when 'success'
        @deploy.report_healthy!(user: current_user)
      when 'failure'
        @deploy.report_faulty!(user: current_user)
      else
        render(status: :unprocessable_entity, json: { message: "Invalid `status` parameter" })
      end
      render(status: :created, json: @deploy.last_release_status)
    end

    private

    def load_deploy
      @deploy = @stack.deploys_and_rollbacks.find(params[:deploy_id])
    end

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

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
shipit-engine-0.39.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.38.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.37.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.36.1 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.36.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.35.1 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.35.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.34.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.33.0 app/controllers/shipit/release_statuses_controller.rb
shipit-engine-0.32.0 app/controllers/shipit/release_statuses_controller.rb