knife-director 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.github/workflows/ci.yml +30 -0
- data/.gitignore +0 -2
- data/.ruby-version +1 -0
- data/README.md +6 -5
- data/knife-director.gemspec +4 -7
- data/lib/chef/knife/director_bootstrap_windows.rb +6 -5
- data/lib/knife/director/version.rb +1 -1
- metadata +16 -59
- data/.circleci/config.yml +0 -55
- data/.travis.yml +0 -5
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 49ca61ad9d3945a48a5fd972b5065ae47b12a1266e0933ef2636ceab22c418f2
|
|
4
|
+
data.tar.gz: 5a82e800186565a4ae59aef0e04665e89a685f84cb2c6deb8098a64ffa017d25
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3c8177764333d56846effbc98d9062a47c4cfe44c77ce4c228fd57ecaaafbc9efb4f618bceb0126317c24dcc617d9c059dcc4b46c3d9265a8131b73680d4c11c
|
|
7
|
+
data.tar.gz: f392e46a87b713ead5b259037fcb0a19b62a6214690cd1ade592de385edc72f4a9d641f8abac911408cd5b19c936cf99cd16138708bae08a0c82c767e2eb8405
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
|
|
6
|
+
jobs:
|
|
7
|
+
build:
|
|
8
|
+
runs-on: ubuntu-latest
|
|
9
|
+
|
|
10
|
+
steps:
|
|
11
|
+
- uses: actions/checkout@v4
|
|
12
|
+
|
|
13
|
+
- uses: ruby/setup-ruby@v1
|
|
14
|
+
with:
|
|
15
|
+
ruby-version-file: .ruby-version
|
|
16
|
+
bundler-cache: true
|
|
17
|
+
|
|
18
|
+
- name: Run tests
|
|
19
|
+
run: |
|
|
20
|
+
mkdir -p /tmp/test-results
|
|
21
|
+
bundle exec rspec --format progress \
|
|
22
|
+
--format RspecJunitFormatter \
|
|
23
|
+
--out /tmp/test-results/rspec.xml \
|
|
24
|
+
--format progress
|
|
25
|
+
|
|
26
|
+
- uses: actions/upload-artifact@v4
|
|
27
|
+
if: always()
|
|
28
|
+
with:
|
|
29
|
+
name: test-results
|
|
30
|
+
path: /tmp/test-results
|
data/.gitignore
CHANGED
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.1.6
|
data/README.md
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
# Knife::Director
|
|
2
2
|
|
|
3
|
-
[](https://github.com/elastic-infra/knife-director/actions/workflows/ci.yml)
|
|
4
4
|
[](https://badge.fury.io/rb/knife-director)
|
|
5
|
-
[](https://codeclimate.com/github/elastic-infra/knife-director)
|
|
6
|
-
[](https://codeclimate.com/github/elastic-infra/knife-director/coverage)
|
|
7
|
-
[](https://codeclimate.com/github/elastic-infra/knife-director)
|
|
8
5
|

|
|
9
6
|
|
|
10
7
|
This gem provides wrappers for `knife bootstrap` or `knife zero` and so on.
|
|
@@ -41,7 +38,7 @@ knife director bootstrap windows $target -E $env
|
|
|
41
38
|
|
|
42
39
|
`$OS` can be `linux` or `windows`.
|
|
43
40
|
|
|
44
|
-
It wraps `knife bootstrap`
|
|
41
|
+
It wraps `knife bootstrap` (chef/cinc 15+).
|
|
45
42
|
You can't omit `-E (--environment)` option.
|
|
46
43
|
|
|
47
44
|
You need not specify `-N (--node-name)` option since it sets FQDN as the node name,
|
|
@@ -50,6 +47,10 @@ but you can do it to explicitly specify.
|
|
|
50
47
|
It automatically passes `--bootstrap-template` option to them.
|
|
51
48
|
Prepare `.chef/bootstrap/{linux,windows}.erb` or pass `-t __no_template__` to disable template.
|
|
52
49
|
|
|
50
|
+
For Windows, SSH is used by default. To use WinRM instead, pass `--connection-protocol winrm`.
|
|
51
|
+
|
|
52
|
+
**Requirements:** chef or cinc 15 or later.
|
|
53
|
+
|
|
53
54
|
## Development
|
|
54
55
|
|
|
55
56
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/knife-director.gemspec
CHANGED
|
@@ -23,14 +23,11 @@ Gem::Specification.new do |spec|
|
|
|
23
23
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
24
24
|
spec.require_paths = ['lib']
|
|
25
25
|
|
|
26
|
-
spec.add_development_dependency 'bundler', '~>
|
|
27
|
-
spec.add_development_dependency 'rake', '~>
|
|
28
|
-
spec.add_development_dependency 'rspec', '~> 3
|
|
26
|
+
spec.add_development_dependency 'bundler', '~> 2.0'
|
|
27
|
+
spec.add_development_dependency 'rake', '~> 13'
|
|
28
|
+
spec.add_development_dependency 'rspec', '~> 3'
|
|
29
29
|
spec.add_development_dependency 'rspec_junit_formatter'
|
|
30
|
-
spec.add_development_dependency 'chef', '
|
|
31
|
-
spec.add_development_dependency 'simplecov'
|
|
32
|
-
spec.add_development_dependency 'codeclimate-test-reporter', '~> 1.0.0'
|
|
30
|
+
spec.add_development_dependency 'chef', '~> 18.0'
|
|
33
31
|
spec.add_dependency 'knife-zero'
|
|
34
|
-
spec.add_dependency 'knife-windows'
|
|
35
32
|
spec.add_dependency 'knife-bootstrap-resolver'
|
|
36
33
|
end
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'chef/knife'
|
|
4
|
-
require 'chef/knife/
|
|
4
|
+
require 'chef/knife/bootstrap'
|
|
5
|
+
require 'chef/knife/bootstrap_resolver'
|
|
5
6
|
require 'chef/knife/director_bootstrap_base'
|
|
6
7
|
|
|
7
8
|
module ElasticInfra
|
|
8
9
|
# knife bootstrap wrapper for Windows
|
|
9
|
-
class DirectorBootstrapWindows < Chef::Knife::
|
|
10
|
+
class DirectorBootstrapWindows < Chef::Knife::Bootstrap
|
|
10
11
|
# Wraps like:
|
|
11
12
|
# sudo -E knife bootstrap \
|
|
12
13
|
# --why-run \
|
|
@@ -18,13 +19,13 @@ module ElasticInfra
|
|
|
18
19
|
include DirectorBootstrapBase
|
|
19
20
|
|
|
20
21
|
deps do
|
|
21
|
-
Chef::Knife::
|
|
22
|
+
Chef::Knife::Bootstrap.load_deps
|
|
22
23
|
end
|
|
23
24
|
|
|
24
25
|
banner 'knife director bootstrap windows ' \
|
|
25
|
-
'[SSH_USER@]HOSTNAME [options]'
|
|
26
|
+
'[SSH_USER@]HOSTNAME -E ENVIRONMENT [options]'
|
|
26
27
|
|
|
27
|
-
self.options =
|
|
28
|
+
self.options = Bootstrap.options.merge(options)
|
|
28
29
|
|
|
29
30
|
def initialize(argv = [])
|
|
30
31
|
@default_template = DEFAULT_TEMPLATE
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: knife-director
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- limitusus
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2026-06-25 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -16,42 +16,42 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '2.0'
|
|
20
20
|
type: :development
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '2.0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: rake
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
31
|
- - "~>"
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
33
|
+
version: '13'
|
|
34
34
|
type: :development
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
38
|
- - "~>"
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
40
|
+
version: '13'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: rspec
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
45
|
- - "~>"
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '3
|
|
47
|
+
version: '3'
|
|
48
48
|
type: :development
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
52
|
- - "~>"
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '3
|
|
54
|
+
version: '3'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: rspec_junit_formatter
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -68,46 +68,18 @@ dependencies:
|
|
|
68
68
|
version: '0'
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: chef
|
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
|
72
|
-
requirements:
|
|
73
|
-
- - ">="
|
|
74
|
-
- !ruby/object:Gem::Version
|
|
75
|
-
version: 12.2.1
|
|
76
|
-
type: :development
|
|
77
|
-
prerelease: false
|
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
-
requirements:
|
|
80
|
-
- - ">="
|
|
81
|
-
- !ruby/object:Gem::Version
|
|
82
|
-
version: 12.2.1
|
|
83
|
-
- !ruby/object:Gem::Dependency
|
|
84
|
-
name: simplecov
|
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
|
86
|
-
requirements:
|
|
87
|
-
- - ">="
|
|
88
|
-
- !ruby/object:Gem::Version
|
|
89
|
-
version: '0'
|
|
90
|
-
type: :development
|
|
91
|
-
prerelease: false
|
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
-
requirements:
|
|
94
|
-
- - ">="
|
|
95
|
-
- !ruby/object:Gem::Version
|
|
96
|
-
version: '0'
|
|
97
|
-
- !ruby/object:Gem::Dependency
|
|
98
|
-
name: codeclimate-test-reporter
|
|
99
71
|
requirement: !ruby/object:Gem::Requirement
|
|
100
72
|
requirements:
|
|
101
73
|
- - "~>"
|
|
102
74
|
- !ruby/object:Gem::Version
|
|
103
|
-
version:
|
|
75
|
+
version: '18.0'
|
|
104
76
|
type: :development
|
|
105
77
|
prerelease: false
|
|
106
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
107
79
|
requirements:
|
|
108
80
|
- - "~>"
|
|
109
81
|
- !ruby/object:Gem::Version
|
|
110
|
-
version:
|
|
82
|
+
version: '18.0'
|
|
111
83
|
- !ruby/object:Gem::Dependency
|
|
112
84
|
name: knife-zero
|
|
113
85
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -122,20 +94,6 @@ dependencies:
|
|
|
122
94
|
- - ">="
|
|
123
95
|
- !ruby/object:Gem::Version
|
|
124
96
|
version: '0'
|
|
125
|
-
- !ruby/object:Gem::Dependency
|
|
126
|
-
name: knife-windows
|
|
127
|
-
requirement: !ruby/object:Gem::Requirement
|
|
128
|
-
requirements:
|
|
129
|
-
- - ">="
|
|
130
|
-
- !ruby/object:Gem::Version
|
|
131
|
-
version: '0'
|
|
132
|
-
type: :runtime
|
|
133
|
-
prerelease: false
|
|
134
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
135
|
-
requirements:
|
|
136
|
-
- - ">="
|
|
137
|
-
- !ruby/object:Gem::Version
|
|
138
|
-
version: '0'
|
|
139
97
|
- !ruby/object:Gem::Dependency
|
|
140
98
|
name: knife-bootstrap-resolver
|
|
141
99
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -157,11 +115,11 @@ executables: []
|
|
|
157
115
|
extensions: []
|
|
158
116
|
extra_rdoc_files: []
|
|
159
117
|
files:
|
|
160
|
-
- ".
|
|
118
|
+
- ".github/workflows/ci.yml"
|
|
161
119
|
- ".gitignore"
|
|
162
120
|
- ".rspec"
|
|
163
121
|
- ".rubocop.yml"
|
|
164
|
-
- ".
|
|
122
|
+
- ".ruby-version"
|
|
165
123
|
- CODE_OF_CONDUCT.md
|
|
166
124
|
- Gemfile
|
|
167
125
|
- LICENSE.txt
|
|
@@ -179,7 +137,7 @@ homepage: https://github.com/elastic-infra/knife-director
|
|
|
179
137
|
licenses:
|
|
180
138
|
- MIT
|
|
181
139
|
metadata: {}
|
|
182
|
-
post_install_message:
|
|
140
|
+
post_install_message:
|
|
183
141
|
rdoc_options: []
|
|
184
142
|
require_paths:
|
|
185
143
|
- lib
|
|
@@ -194,9 +152,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
194
152
|
- !ruby/object:Gem::Version
|
|
195
153
|
version: '0'
|
|
196
154
|
requirements: []
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
signing_key:
|
|
155
|
+
rubygems_version: 3.5.16
|
|
156
|
+
signing_key:
|
|
200
157
|
specification_version: 4
|
|
201
158
|
summary: knife role manager
|
|
202
159
|
test_files: []
|
data/.circleci/config.yml
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
version: 2
|
|
2
|
-
jobs:
|
|
3
|
-
build:
|
|
4
|
-
docker:
|
|
5
|
-
- image: circleci/ruby:2.4.1-node-browsers
|
|
6
|
-
working_directory: ~/repo
|
|
7
|
-
|
|
8
|
-
steps:
|
|
9
|
-
- checkout
|
|
10
|
-
|
|
11
|
-
- restore_cache:
|
|
12
|
-
keys:
|
|
13
|
-
- v1-dependencies-{{ checksum "Gemfile.lock" }}
|
|
14
|
-
# fallback to using the latest cache if no exact match is found
|
|
15
|
-
- v1-dependencies-
|
|
16
|
-
|
|
17
|
-
- run:
|
|
18
|
-
name: install dependencies
|
|
19
|
-
command: |
|
|
20
|
-
bundle install --jobs=4 --retry=3 --path vendor/bundle
|
|
21
|
-
|
|
22
|
-
- save_cache:
|
|
23
|
-
paths:
|
|
24
|
-
- ./venv
|
|
25
|
-
key: v1-dependencies-{{ checksum "Gemfile.lock" }}
|
|
26
|
-
|
|
27
|
-
- run:
|
|
28
|
-
name: Prepare CodeClimate
|
|
29
|
-
command: |
|
|
30
|
-
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
|
31
|
-
|
|
32
|
-
# run tests!
|
|
33
|
-
- run:
|
|
34
|
-
name: run tests
|
|
35
|
-
command: |
|
|
36
|
-
mkdir /tmp/test-results
|
|
37
|
-
TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)"
|
|
38
|
-
|
|
39
|
-
bundle exec rspec --format progress \
|
|
40
|
-
--format RspecJunitFormatter \
|
|
41
|
-
--out /tmp/test-results/rspec.xml \
|
|
42
|
-
--format progress \
|
|
43
|
-
${TEST_FILES}
|
|
44
|
-
|
|
45
|
-
- run:
|
|
46
|
-
name: Report to CodeClimate
|
|
47
|
-
command: |
|
|
48
|
-
bundle exec codeclimate-test-reporter
|
|
49
|
-
|
|
50
|
-
# collect reports
|
|
51
|
-
- store_test_results:
|
|
52
|
-
path: /tmp/test-results
|
|
53
|
-
- store_artifacts:
|
|
54
|
-
path: /tmp/test-results
|
|
55
|
-
destination: test-results
|