parse_response

in lib/release_tools/release_managers/slack_client.rb [86:106]


      def parse_response(response)
        unless response.status.success?
          case response.status.to_sym
          when :unauthorized
            raise Client::UnauthorizedError, 'Unauthorized'
          when :forbidden
            raise Client::UnauthorizedError, 'Invalid token'
          else
            raise Client::SyncError, response.status.reason
          end
        end

        resp = JSON.parse(response.body)
        unless resp['ok']
          logger.error('Slack release-managers group update failed', response_body: resp)
          raise Client::SyncError, resp['error'] || 'unknown error'
        end

        resp
      end