Sha256: 56dfd8683fc1950b0df43ff4469379b89ed914280e2660e5df44bd92314adfb5

Contents?: true

Size: 1.89 KB

Versions: 4

Compression:

Stored size: 1.89 KB

Contents

module DockerizeRails
  module CommandLineMethods
    require 'colorize'

    # rubocop:disable Metrics/MethodLength
    def self.invoke(options)
      DRNameSpace.add_hash options[1][:args]
      commands = Helpers.processed_commands
      case options[0]
      when *(commands[:configure])
        return configure
      when *(commands[:dockerize])
        return dockerize
      when *(commands[:undockerize])
        return undockerize
      when *(commands[:docker_info])
        return docker_info
      when *(commands[:help])
        return help
      else
        return help 1
      end
    end
    # rubocop:enable Metrics/MethodLength

    def self.dockerize
      Helpers.ensure_rails_root
      DRNameSpace.load
      ConfigGenerator.dockerize
    end

    def self.undockerize
      Helpers.ensure_rails_root
      ConfigGenerator.undockerize
    end

    def self.configure
      Helpers.ensure_rails_root
      ConfigGenerator.configure
    end

    def self.help(status = 0)
      puts "\nCommand not found".red if status != 0
      puts Helpers.help.white
      status
    end

    def self.docker_info
      docker_version = DockerHelper.version

      puts
      Helpers.print_formatted_info 'Docker Version', "#{docker_version['Version']}\n"
      Helpers.print_formatted_info 'API', "#{docker_version['ApiVersion']} : #{docker_version['MinAPIVersion']}\n"
      Helpers.print_formatted_info 'Git Commit', "#{docker_version['GitCommit']}\n"
      Helpers.print_formatted_info 'Go Version', "#{docker_version['GoVersion']}\n"
      # Helpers.print_formatted_info 'OS', "#{v['Os']}_#{v['Arch']}_#{v['KernelVersion']}\n"
      Helpers.print_formatted_info 'Experimental', "#{docker_version['Experimental']}\n"
      Helpers.print_formatted_info 'Build Time',
                                   "#{DateTime.parse(docker_version['BuildTime']).strftime('%b %d, %Y %I:%M %p')}\n"
      puts
      0
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
dockerize_rails-1.0.4.beta.1 lib/dockerize_rails/command_line_methods.rb
dockerize_rails-1.0.3.beta.6 lib/dockerize_rails/command_line_methods.rb
dockerize_rails-1.0.3.beta.5 lib/dockerize_rails/command_line_methods.rb
dockerize_rails-1.0.3.beta.4 lib/dockerize_rails/command_line_methods.rb