Sha256: a9185270c4d29c595c553ebf2f8c193dfa2a2494462be134ac68414ae5fe05de
Contents?: true
Size: 1.38 KB
Versions: 1
Compression:
Stored size: 1.38 KB
Contents
# frozen_string_literal: true module Floe class Workflow class Runner include Logging TYPES = %w[docker podman kubernetes].freeze def initialize(_options = {}) end class << self attr_writer :docker_runner def docker_runner @docker_runner ||= Floe::Workflow::Runner::Docker.new end def for_resource(resource) raise ArgumentError, "resource cannot be nil" if resource.nil? scheme = resource.split("://").first case scheme when "docker" docker_runner else raise "Invalid resource scheme [#{scheme}]" end end end def run!(resource, env = {}, secrets = {}) raise NotImplementedError, "Must be implemented in a subclass" end def run_async!(_image, _env = {}, _secrets = {}) raise NotImplementedError, "Must be implemented in a subclass" end def running?(_ref) raise NotImplementedError, "Must be implemented in a subclass" end def success?(_ref) raise NotImplementedError, "Must be implemented in a subclass" end def output(_ref) raise NotImplementedError, "Must be implemented in a subclass" end def cleanup(_ref, _secret) raise NotImplementedError, "Must be implemented in a subclass" end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
floe-0.4.0 | lib/floe/workflow/runner.rb |