Sha256: d3194e0a1d216cb0bcee63173390b2a2cb974748866b9b9d8311b4394043e468

Contents?: true

Size: 1.58 KB

Versions: 7

Compression:

Stored size: 1.58 KB

Contents

#!/usr/bin/env ruby
# frozen_string_literal: true

require 'rubygems' unless defined?(Gem)
require 'beaker'
require 'beaker-docker'

def dockerfile(hostspec, filename)
  ENV['BEAKER_HYPERVISOR'] = 'docker'
  options = Beaker::Options::Parser.new.parse_args(['--hosts', hostspec || '', '--no-provision'])
  options[:logger] = Beaker::Logger.new(options)
  network_manager = Beaker::NetworkManager.new(options, options[:logger])
  network_manager.provision
  hosts = network_manager.hosts

  if hosts.size != 1
    options[:logger].error "Found #{hosts.size} hosts, expected 1"
    exit(1)
  end

  hypervisor = network_manager.hypervisors['docker']
  # TODO: private method
  File.write(filename, hypervisor.send(:dockerfile_for, hosts.first))
end

VERSION_STRING = <<'VER'
                                 _ .--.
                                ( `    )
        beaker-docker         .-'      `--,
                  _..----.. (             )`-.
                .'_|` _|` _|(  .__,           )
               /_|  _|  _|  _(        (_,  .-'
              ;|  _|  _|  _|  '-'__,--'`--'
              | _|  _|  _|  _| |
          _   ||  _|  _|  _|  _| %s
        _( `--.\_|  _|  _|  _|/
     .-'       )--,|  _|  _|.`
    (__, (_      ) )_|  _| /
      `-.__.\ _,--'\|__|__/
                    ;____;
                     \YT/
                      ||
                     |""|
                     '=='
VER

case ARGV[0]
when 'containerfile'
  dockerfile(ARGV[1], ARGV[2] || 'Containerfile')
when 'dockerfile'
  dockerfile(ARGV[1], ARGV[2] || 'Dockerfile')
else
  puts VERSION_STRING % BeakerDocker::VERSION
end

exit 0

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
beaker-docker-2.5.2 bin/beaker-docker
beaker-docker-2.5.1 bin/beaker-docker
beaker-docker-2.5.0 bin/beaker-docker
beaker-docker-2.4.0 bin/beaker-docker
beaker-docker-2.3.1 bin/beaker-docker
beaker-docker-2.2.1 bin/beaker-docker
beaker-docker-2.2.0 bin/beaker-docker