Sha256: 54b98cae0691f033f43259d67070fd52953b26ae0750cb26f9f2ee759c1d00c4

Contents?: true

Size: 746 Bytes

Versions: 1

Compression:

Stored size: 746 Bytes

Contents

require 'json'
require_relative 'step'
require_relative 'support/build_metadata'
require_relative 'support/params'
require_relative 'support/work_dir'

module Fuselage
  class Out < Step
    include Support::BuildMetadata
    include Support::Params
    include Support::WorkDir

    Contract None => HashOf[String, String]
    def version
      fail NotImplementedError
    end

    Contract None => ArrayOf[Maybe[HashOf[String, String]]]
    def metadata
      []
    end

    Contract None => String
    def output
      JSON.dump version: version, metadata: metadata
    end

    Contract None => Any
    def update!
      fail NotImplementedError
    end

    Contract None => String
    def run
      update!
      output
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
concourse-fuselage-0.1.0 lib/concourse-fuselage/out.rb