kitchen-transport-train 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +4 -0
- data/lib/kitchen/transport/train.rb +29 -0
- data/lib/kitchen-transport-train/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 73b1cac962017682b0b06008f9f5d6ed0abdfda2be33a39c4cb487ad703773c2
|
4
|
+
data.tar.gz: faa11ed4ab87a67bc9dc6b2caffb74b2538d5166c3a742549a5524b037367b12
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 554fc9afd48408fd7615b616a54b4603f2bf6a2efb69f9e96157f54182686b32031005f5899cc865c388c030dc76ff8d93bb018ec5ca96f768df13cd484c5c50
|
7
|
+
data.tar.gz: 45f6bf81dffdf21825fa92b5f46225bd0cff7a558f033470382e0f20c05b12cb56e5205161db44e5f4d3bccb1a911b23c293a87c4dd252aec3ac316cc0fd751c
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## Version 0.2.0
|
4
|
+
|
5
|
+
- Fix disparity between TestKitchen SSH wait parameters and Train
|
6
|
+
- Fix user passing via a `train_user` override parameters
|
7
|
+
- Add call to generate an RFC099 credentials file
|
8
|
+
|
3
9
|
## Version 0.1.0
|
4
10
|
|
5
11
|
- Initial version
|
data/README.md
CHANGED
@@ -45,6 +45,10 @@ transport:
|
|
45
45
|
|
46
46
|
Options `user`, `host` and `password` (for kitchen-ec2 and Windows instances) are set automatically.
|
47
47
|
|
48
|
+
If you want to use `kitchen-ec2` with the `root` user however (as needed in Chef 19 Target Mode), you need to additionally specify `train_user: root`. This is due to a long-standing bug in Kitchen-EC2 where the standard platform's autodetected user will override manually specified `root` values.
|
49
|
+
|
50
|
+
Standard and community-supported options for transports:
|
51
|
+
|
48
52
|
- [AWS Session Manager Transport](https://github.com/tecracer-chef/train-awsssm/blob/master/lib/train-awsssm/transport.rb#L8-L14)
|
49
53
|
- Docker Transport: no additional options
|
50
54
|
- [Serial/USB Transport](https://github.com/tecracer-chef/train-serial/blob/master/lib/train-serial/transport.rb#L8-L22)
|
@@ -39,6 +39,31 @@ module Kitchen
|
|
39
39
|
yield self if block_given?
|
40
40
|
end
|
41
41
|
|
42
|
+
def train_uri
|
43
|
+
@connection.uri
|
44
|
+
end
|
45
|
+
|
46
|
+
def credentials_file
|
47
|
+
instance_name = @connection.transport_options[:instance_name]
|
48
|
+
|
49
|
+
config = @backend.instance_variable_get(:@connection_options)
|
50
|
+
config.compact!
|
51
|
+
config.transform_values! { |v| v.is_a?(Symbol) ? v.to_s : v }
|
52
|
+
|
53
|
+
# Some configuration variables vary between transports
|
54
|
+
config[:host] = config[:hostname] = @connection.transport_options[:host]
|
55
|
+
config[:key_files] = @connection.transport_options[:key_files]
|
56
|
+
|
57
|
+
# Due to a long-standing bug in TestKitchen, standard platforms will override
|
58
|
+
# kitchen.yml `user` settings, so this transport introduces an "train_user" override.
|
59
|
+
# See https://github.com/test-kitchen/kitchen-ec2/pull/273
|
60
|
+
config[:user] = config[:username] = @connection.transport_options[:train_user] || @connection.transport_options[:user]
|
61
|
+
|
62
|
+
require "toml-rb" unless defined?(TomlRB)
|
63
|
+
|
64
|
+
"['#{instance_name}']\n" + TomlRB.dump(config)
|
65
|
+
end
|
66
|
+
|
42
67
|
def execute(command)
|
43
68
|
return if command.nil?
|
44
69
|
|
@@ -95,6 +120,10 @@ module Kitchen
|
|
95
120
|
data.delete(:ssh_key)
|
96
121
|
end
|
97
122
|
|
123
|
+
# Adjust option defaults
|
124
|
+
data[:retries] = 15
|
125
|
+
data[:delay] = 5
|
126
|
+
|
98
127
|
data
|
99
128
|
end
|
100
129
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kitchen-transport-train
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas Heinen
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-07-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: train
|
@@ -54,7 +54,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '0'
|
56
56
|
requirements: []
|
57
|
-
rubygems_version: 3.
|
57
|
+
rubygems_version: 3.3.27
|
58
58
|
signing_key:
|
59
59
|
specification_version: 4
|
60
60
|
summary: Kitchen transport for any Train backend
|