Class: ContentfulMiddleman::WebhookHandler

Inherits:
Contentful::Webhook::Listener::Controllers::Wait
  • Object
show all
Defined in:
lib/contentful_middleman/webhook_handler.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.start(options) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/contentful_middleman/webhook_handler.rb', line 12

def self.start(options)
  Contentful::Webhook::Listener::Server.start do |config|
    config[:endpoints] = [{
      endpoint: '/receive',
      timeout: options.webhook_timeout,
      controller: options.webhook_controller
    }]
    logger = Logger.new(STDOUT)
    logger.level = Logger::INFO
    logger.formatter = proc do |severity, datetime, progname, msg|
      date_format = datetime.strftime("%Y-%m-%d %H:%M:%S")
      if severity == "INFO"
        "Webhook Server: #{msg}\n"
      else
        "[#{date_format}] #{severity} (#{progname}): #{msg}\n"
      end
    end
    config[:logger] = logger
  end
end

Instance Method Details

#performObject



5
6
7
8
9
10
# File 'lib/contentful_middleman/webhook_handler.rb', line 5

def perform(*)
  logger.info 'Webhook Received - Waiting for rebuild'
  super
  logger.info 'Rebuilding'
  system('bundle exec middleman contentful --rebuild')
end