Sha256: d0dcf36ea1c8e51959064ac41a738faea5f30a659d1ce584b6426e204caebd84

Contents?: true

Size: 600 Bytes

Versions: 4

Compression:

Stored size: 600 Bytes

Contents

require 'hawk/builder'
require 'hawk/s3_uploader'
require 'hawk/notifier'

module Hawk
  class DSL
    include Hawk::Builder::DSL
    include Hawk::S3Uploader::DSL
    include Hawk::Notifier::DSL

    def self.load(file, options)
      instance = self.new(options)
      instance.instance_eval(File.read(file), file)

      instance.execute
    end

    def initialize(opts = {})
      @options = opts
    end

    def execute
      extend Hawk::Builder
      extend Hawk::S3Uploader
      extend Hawk::Notifier

      notify_users # notify_users will trigger all dependent actions
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hawk-1.4.1 lib/hawk/dsl.rb
hawk-1.4.0 lib/hawk/dsl.rb
hawk-1.3.0 lib/hawk/dsl.rb
hawk-1.2.0 lib/hawk/dsl.rb