Sha256: df98855b511dca3b105483f833bec028b8baad5531ae88e028e2ff050a63d6be

Contents?: true

Size: 1.07 KB

Versions: 19

Compression:

Stored size: 1.07 KB

Contents

# Core helper methods.
#
# * docker_image - Docker image name to be used when a the docker image is build. This is defined in .ufo/config.rb
# * dockerfile_port - Exposed port in the Dockerfile.  Only supports one exposed port, the first one that is encountered.
#
module Ufo::TaskDefinition::Helpers
  module Docker
    def dockerfile_port
      if File.exist?("Dockerfile")
        port = parse_for_dockerfile_port("Dockerfile")
        return port if port
      end

      # Also consider EXPOSE in Dockerfile.base
      if File.exist?("Dockerfile.base")
        parse_for_dockerfile_port("Dockerfile.base")
      end
    end

    def docker_image
      # Dont need to use @options here. Helps simplify the Helper initialization.
      Ufo::Docker::Builder.new({}).docker_image
    end

    def parse_for_dockerfile_port(dockerfile_path)
      lines = IO.read(dockerfile_path).split("\n")
      expose_line = lines.find { |l| l =~ /^EXPOSE / }
      if expose_line
        md = expose_line.match(/EXPOSE (\d+)/)
        port = md[1] if md
      end
      port.to_i if port
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
ufo-6.3.13 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.12 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.11 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.10 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.9 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.8 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.7 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.6 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.5 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.4 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.3 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.2 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.1 lib/ufo/task_definition/helpers/docker.rb
ufo-6.3.0 lib/ufo/task_definition/helpers/docker.rb
ufo-6.2.5 lib/ufo/task_definition/helpers/docker.rb
ufo-6.2.4 lib/ufo/task_definition/helpers/docker.rb
ufo-6.2.3 lib/ufo/task_definition/helpers/docker.rb
ufo-6.2.2 lib/ufo/task_definition/helpers/docker.rb
ufo-6.2.1 lib/ufo/task_definition/helpers/docker.rb