Sha256: d2448201d5afe40d74beda845fa0a7ac178af353c430f47b3483c5c5196956a4

Contents?: true

Size: 722 Bytes

Versions: 1

Compression:

Stored size: 722 Bytes

Contents

class Ufo::Docker
  class Compiler
    def initialize(dockerfile)
      @dockerfile = dockerfile
      @erb_file = "#{dockerfile}.erb"
    end

    def compile
      return unless File.exist?(@erb_file)

      puts "Compiled #{File.basename(@erb_file).color(:green)} to #{File.basename(@dockerfile).color(:green)}"
      path = "#{Ufo.root}/.ufo/settings/dockerfile_variables.yml"
      vars = YAML.load_file(path)[Ufo.env] if File.exist?(path)
      vars ||= {}
      result = RenderMePretty.result(@erb_file, vars)
      comment = "# Note this file was generated from #{File.basename(@erb_file)} as a part of running ufo ship"
      result = "#{comment}\n#{result}"
      IO.write(@dockerfile, result)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ufo-4.5.0 lib/ufo/docker/compiler.rb