Sha256: 121b7093bd31cc1d108aa32a85e25a1f2a27742be2796ed65a055c127c15632d

Contents?: true

Size: 1.16 KB

Versions: 16

Compression:

Stored size: 1.16 KB

Contents

require 'yaml'

module Rundock
  module Builder
    class DefaultSshBuilder < Base
      RUNDOCK_PACKAGE_PATH = Gem::Specification.find_by_path('rundock')
      PRESET_SSH_OPTIONS_DEFAULT_ROOT = RUNDOCK_PACKAGE_PATH.nil? ? '.' : RUNDOCK_PACKAGE_PATH.full_gem_path
      PRESET_SSH_OPTIONS_DEFAULT_FILE_PATH = "#{PRESET_SSH_OPTIONS_DEFAULT_ROOT}/default_ssh.yml"
      HOME_SSH_OPTIONS_DEFAULT_FILE_PATH = "#{Dir.home}/default_ssh.yml"

      def initialize(options)
        super(options)
      end

      def build
        opts = {}

        def_ssh_file = if @options[:default_ssh_opts] && FileTest.exist?(@options[:default_ssh_opts])
                         @options[:default_ssh_opts]
                       elsif FileTest.exist?(HOME_SSH_OPTIONS_DEFAULT_FILE_PATH)
                         HOME_SSH_OPTIONS_DEFAULT_FILE_PATH
                       else
                         PRESET_SSH_OPTIONS_DEFAULT_FILE_PATH
                       end

        File.open(def_ssh_file) do |f|
          YAML.load_documents(f) do |y|
            y.each do |k, v|
              opts["#{k}_ssh_default".to_sym] = v
            end
          end
        end

        opts
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
rundock-1.2.0 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.7 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.6 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.5 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.4 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.3 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.2 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.1 lib/rundock/builder/default_ssh_builder.rb
rundock-1.1.0 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.8 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.7 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.6 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.5 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.4 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.2 lib/rundock/builder/default_ssh_builder.rb
rundock-1.0.1 lib/rundock/builder/default_ssh_builder.rb