train-core 1.4.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +780 -0
  3. data/Gemfile +36 -0
  4. data/LICENSE +201 -0
  5. data/README.md +197 -0
  6. data/lib/train.rb +158 -0
  7. data/lib/train/errors.rb +32 -0
  8. data/lib/train/extras.rb +11 -0
  9. data/lib/train/extras/command_wrapper.rb +137 -0
  10. data/lib/train/extras/stat.rb +132 -0
  11. data/lib/train/file.rb +151 -0
  12. data/lib/train/file/local.rb +75 -0
  13. data/lib/train/file/local/unix.rb +96 -0
  14. data/lib/train/file/local/windows.rb +63 -0
  15. data/lib/train/file/remote.rb +36 -0
  16. data/lib/train/file/remote/aix.rb +21 -0
  17. data/lib/train/file/remote/linux.rb +19 -0
  18. data/lib/train/file/remote/qnx.rb +41 -0
  19. data/lib/train/file/remote/unix.rb +106 -0
  20. data/lib/train/file/remote/windows.rb +94 -0
  21. data/lib/train/options.rb +80 -0
  22. data/lib/train/platforms.rb +84 -0
  23. data/lib/train/platforms/common.rb +34 -0
  24. data/lib/train/platforms/detect.rb +12 -0
  25. data/lib/train/platforms/detect/helpers/os_common.rb +145 -0
  26. data/lib/train/platforms/detect/helpers/os_linux.rb +75 -0
  27. data/lib/train/platforms/detect/helpers/os_windows.rb +120 -0
  28. data/lib/train/platforms/detect/scanner.rb +84 -0
  29. data/lib/train/platforms/detect/specifications/api.rb +15 -0
  30. data/lib/train/platforms/detect/specifications/os.rb +578 -0
  31. data/lib/train/platforms/detect/uuid.rb +34 -0
  32. data/lib/train/platforms/family.rb +26 -0
  33. data/lib/train/platforms/platform.rb +101 -0
  34. data/lib/train/plugins.rb +40 -0
  35. data/lib/train/plugins/base_connection.rb +169 -0
  36. data/lib/train/plugins/transport.rb +49 -0
  37. data/lib/train/transports/local.rb +232 -0
  38. data/lib/train/version.rb +7 -0
  39. data/train-core.gemspec +27 -0
  40. metadata +116 -0
@@ -0,0 +1,7 @@
1
+ # encoding: utf-8
2
+ #
3
+ # Author:: Dominik Richter (<dominik.richter@gmail.com>)
4
+
5
+ module Train
6
+ VERSION = '1.4.4'.freeze
7
+ end
@@ -0,0 +1,27 @@
1
+ # encoding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'train/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'train-core'
8
+ spec.version = Train::VERSION
9
+ spec.authors = ['Dominik Richter']
10
+ spec.email = ['dominik.richter@gmail.com']
11
+ spec.summary = 'Transport interface to talk to a selected set of backends.'
12
+ spec.description = 'A minimal Train with a selected set of backends, ssh, winrm, and docker.'
13
+ spec.homepage = 'https://github.com/chef/train/'
14
+ spec.license = 'Apache-2.0'
15
+
16
+ spec.files = %w{train-core.gemspec README.md LICENSE Gemfile CHANGELOG.md} + Dir
17
+ .glob('lib/**/*', File::FNM_DOTMATCH)
18
+ .reject { |f| f =~ /^(?!.*(local.rb)).*transports/ }
19
+ .reject { |f| File.directory?(f) }
20
+
21
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
22
+ spec.require_paths = ['lib']
23
+
24
+ # chef-client < 12.4.1 require mixlib-shellout-2.0.1
25
+ spec.add_dependency 'mixlib-shellout', '~> 2.0'
26
+ spec.add_dependency 'json', '>= 1.8', '< 3.0'
27
+ end
metadata ADDED
@@ -0,0 +1,116 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: train-core
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.4.4
5
+ platform: ruby
6
+ authors:
7
+ - Dominik Richter
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-05-02 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: mixlib-shellout
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: json
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '1.8'
34
+ - - "<"
35
+ - !ruby/object:Gem::Version
36
+ version: '3.0'
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '1.8'
44
+ - - "<"
45
+ - !ruby/object:Gem::Version
46
+ version: '3.0'
47
+ description: A minimal Train with a selected set of backends, ssh, winrm, and docker.
48
+ email:
49
+ - dominik.richter@gmail.com
50
+ executables: []
51
+ extensions: []
52
+ extra_rdoc_files: []
53
+ files:
54
+ - CHANGELOG.md
55
+ - Gemfile
56
+ - LICENSE
57
+ - README.md
58
+ - lib/train.rb
59
+ - lib/train/errors.rb
60
+ - lib/train/extras.rb
61
+ - lib/train/extras/command_wrapper.rb
62
+ - lib/train/extras/stat.rb
63
+ - lib/train/file.rb
64
+ - lib/train/file/local.rb
65
+ - lib/train/file/local/unix.rb
66
+ - lib/train/file/local/windows.rb
67
+ - lib/train/file/remote.rb
68
+ - lib/train/file/remote/aix.rb
69
+ - lib/train/file/remote/linux.rb
70
+ - lib/train/file/remote/qnx.rb
71
+ - lib/train/file/remote/unix.rb
72
+ - lib/train/file/remote/windows.rb
73
+ - lib/train/options.rb
74
+ - lib/train/platforms.rb
75
+ - lib/train/platforms/common.rb
76
+ - lib/train/platforms/detect.rb
77
+ - lib/train/platforms/detect/helpers/os_common.rb
78
+ - lib/train/platforms/detect/helpers/os_linux.rb
79
+ - lib/train/platforms/detect/helpers/os_windows.rb
80
+ - lib/train/platforms/detect/scanner.rb
81
+ - lib/train/platforms/detect/specifications/api.rb
82
+ - lib/train/platforms/detect/specifications/os.rb
83
+ - lib/train/platforms/detect/uuid.rb
84
+ - lib/train/platforms/family.rb
85
+ - lib/train/platforms/platform.rb
86
+ - lib/train/plugins.rb
87
+ - lib/train/plugins/base_connection.rb
88
+ - lib/train/plugins/transport.rb
89
+ - lib/train/transports/local.rb
90
+ - lib/train/version.rb
91
+ - train-core.gemspec
92
+ homepage: https://github.com/chef/train/
93
+ licenses:
94
+ - Apache-2.0
95
+ metadata: {}
96
+ post_install_message:
97
+ rdoc_options: []
98
+ require_paths:
99
+ - lib
100
+ required_ruby_version: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ required_rubygems_version: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ requirements: []
111
+ rubyforge_project:
112
+ rubygems_version: 2.7.6
113
+ signing_key:
114
+ specification_version: 4
115
+ summary: Transport interface to talk to a selected set of backends.
116
+ test_files: []