bolt 2.35.0 → 2.40.2
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of bolt might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Puppetfile +1 -1
- data/bolt-modules/boltlib/lib/puppet/datatypes/applyresult.rb +1 -0
- data/lib/bolt/analytics.rb +27 -8
- data/lib/bolt/apply_result.rb +3 -3
- data/lib/bolt/bolt_option_parser.rb +45 -18
- data/lib/bolt/cli.rb +92 -110
- data/lib/bolt/config.rb +184 -80
- data/lib/bolt/config/options.rb +144 -83
- data/lib/bolt/config/transport/base.rb +10 -19
- data/lib/bolt/config/transport/local.rb +1 -7
- data/lib/bolt/config/transport/options.rb +11 -68
- data/lib/bolt/config/transport/ssh.rb +8 -19
- data/lib/bolt/executor.rb +5 -17
- data/lib/bolt/inventory.rb +25 -0
- data/lib/bolt/inventory/group.rb +0 -8
- data/lib/bolt/inventory/options.rb +130 -0
- data/lib/bolt/inventory/target.rb +10 -11
- data/lib/bolt/module_installer.rb +21 -13
- data/lib/bolt/module_installer/resolver.rb +1 -1
- data/lib/bolt/outputter.rb +19 -5
- data/lib/bolt/outputter/human.rb +20 -1
- data/lib/bolt/outputter/json.rb +1 -1
- data/lib/bolt/outputter/logger.rb +1 -1
- data/lib/bolt/outputter/rainbow.rb +13 -2
- data/lib/bolt/plugin.rb +41 -12
- data/lib/bolt/plugin/cache.rb +76 -0
- data/lib/bolt/plugin/module.rb +4 -4
- data/lib/bolt/plugin/puppetdb.rb +1 -1
- data/lib/bolt/project.rb +59 -40
- data/lib/bolt/project_manager.rb +201 -0
- data/lib/bolt/{project_migrator/config.rb → project_manager/config_migrator.rb} +49 -4
- data/lib/bolt/{project_migrator/inventory.rb → project_manager/inventory_migrator.rb} +3 -3
- data/lib/bolt/{project_migrator/base.rb → project_manager/migrator.rb} +2 -2
- data/lib/bolt/{project_migrator/modules.rb → project_manager/module_migrator.rb} +5 -3
- data/lib/bolt/puppetdb/client.rb +8 -0
- data/lib/bolt/puppetdb/config.rb +1 -2
- data/lib/bolt/rerun.rb +1 -5
- data/lib/bolt/shell/bash.rb +8 -2
- data/lib/bolt/shell/powershell.rb +21 -3
- data/lib/bolt/target.rb +4 -0
- data/lib/bolt/task/run.rb +1 -1
- data/lib/bolt/transport/local.rb +13 -0
- data/lib/bolt/transport/ssh/exec_connection.rb +6 -2
- data/lib/bolt/util.rb +36 -7
- data/lib/bolt/validator.rb +227 -0
- data/lib/bolt/version.rb +1 -1
- data/lib/bolt_server/base_config.rb +3 -1
- data/lib/bolt_server/config.rb +3 -1
- data/lib/bolt_server/plugin.rb +13 -0
- data/lib/bolt_server/plugin/puppet_connect_data.rb +37 -0
- data/lib/bolt_server/schemas/connect-data.json +22 -0
- data/lib/bolt_server/schemas/partials/task.json +3 -3
- data/lib/bolt_server/transport_app.rb +68 -40
- data/libexec/apply_catalog.rb +1 -1
- data/libexec/custom_facts.rb +1 -1
- data/libexec/query_resources.rb +1 -1
- metadata +23 -17
- data/lib/bolt/project_migrator.rb +0 -80
data/lib/bolt/version.rb
CHANGED
@@ -7,7 +7,9 @@ module BoltServer
|
|
7
7
|
class BaseConfig
|
8
8
|
def config_keys
|
9
9
|
%w[host port ssl-cert ssl-key ssl-ca-cert
|
10
|
-
ssl-cipher-suites loglevel logfile allowlist
|
10
|
+
ssl-cipher-suites loglevel logfile allowlist
|
11
|
+
projects-dir environments-codedir
|
12
|
+
environmentpath basemodulepath]
|
11
13
|
end
|
12
14
|
|
13
15
|
def env_keys
|
data/lib/bolt_server/config.rb
CHANGED
@@ -7,7 +7,9 @@ require 'bolt/error'
|
|
7
7
|
module BoltServer
|
8
8
|
class Config < BoltServer::BaseConfig
|
9
9
|
def config_keys
|
10
|
-
super + %w[concurrency cache-dir file-server-conn-timeout
|
10
|
+
super + %w[concurrency cache-dir file-server-conn-timeout
|
11
|
+
file-server-uri projects-dir environments-codedir
|
12
|
+
environmentpath basemodulepath]
|
11
13
|
end
|
12
14
|
|
13
15
|
def env_keys
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'bolt/error'
|
4
|
+
|
5
|
+
module BoltServer
|
6
|
+
class Plugin
|
7
|
+
class PluginNotSupported < Bolt::Error
|
8
|
+
def initialize(msg, plugin_name)
|
9
|
+
super(msg, 'bolt/plugin-not-supported', { "plugin_name" => plugin_name })
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BoltServer
|
4
|
+
class Plugin
|
5
|
+
class PuppetConnectData
|
6
|
+
def initialize(data, **_opts)
|
7
|
+
@data = data
|
8
|
+
end
|
9
|
+
|
10
|
+
def name
|
11
|
+
'puppet_connect_data'
|
12
|
+
end
|
13
|
+
|
14
|
+
def hooks
|
15
|
+
%i[resolve_reference validate_resolve_reference]
|
16
|
+
end
|
17
|
+
|
18
|
+
def resolve_reference(opts)
|
19
|
+
key = opts['key']
|
20
|
+
|
21
|
+
@data.dig(key, 'value')
|
22
|
+
end
|
23
|
+
|
24
|
+
def validate_resolve_reference(opts)
|
25
|
+
unless opts['key']
|
26
|
+
raise Bolt::ValidationError,
|
27
|
+
"puppet_connect_data plugin requires that 'key' be specified"
|
28
|
+
end
|
29
|
+
|
30
|
+
unless @data.key?(opts['key'])
|
31
|
+
raise Bolt::ValidationError,
|
32
|
+
"puppet_connect_data plugin tried to lookup key '#{opts['key']}' but no value was found"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"title": "project_inventory_targets connect plugin data",
|
4
|
+
"description": "POST project_inventory_targets connect plugin data",
|
5
|
+
"type": "object",
|
6
|
+
"properties": {
|
7
|
+
"puppet_connect_data": {
|
8
|
+
"type": "object",
|
9
|
+
"patternProperties": {
|
10
|
+
".*": {
|
11
|
+
"type": "object",
|
12
|
+
"properties": {
|
13
|
+
"value": {}
|
14
|
+
},
|
15
|
+
"required": ["value"]
|
16
|
+
}
|
17
|
+
},
|
18
|
+
"additionalProperties": false
|
19
|
+
}
|
20
|
+
},
|
21
|
+
"required": ["puppet_connect_data"]
|
22
|
+
}
|
@@ -37,7 +37,7 @@
|
|
37
37
|
},
|
38
38
|
"input_method": {
|
39
39
|
"type": "string",
|
40
|
-
"enum": ["stdin", "environment", "powershell"],
|
40
|
+
"enum": ["stdin", "environment", "powershell", "both"],
|
41
41
|
"description": "What input method should be used to pass params to the task"
|
42
42
|
}
|
43
43
|
}
|
@@ -64,7 +64,7 @@
|
|
64
64
|
"description": "Environment the task is in",
|
65
65
|
"type": "string"
|
66
66
|
},
|
67
|
-
"
|
67
|
+
"versioned_project": {
|
68
68
|
"description": "Project the task is in",
|
69
69
|
"type": "string"
|
70
70
|
}
|
@@ -77,7 +77,7 @@
|
|
77
77
|
},
|
78
78
|
{
|
79
79
|
"required": [
|
80
|
-
"
|
80
|
+
"versioned_project"
|
81
81
|
]
|
82
82
|
}
|
83
83
|
],
|
@@ -8,6 +8,8 @@ require 'bolt/inventory'
|
|
8
8
|
require 'bolt/project'
|
9
9
|
require 'bolt/target'
|
10
10
|
require 'bolt_server/file_cache'
|
11
|
+
require 'bolt_server/plugin'
|
12
|
+
require 'bolt_server/plugin/puppet_connect_data'
|
11
13
|
require 'bolt/task/puppet_server'
|
12
14
|
require 'json'
|
13
15
|
require 'json-schema'
|
@@ -35,6 +37,7 @@ module BoltServer
|
|
35
37
|
action-upload_file
|
36
38
|
transport-ssh
|
37
39
|
transport-winrm
|
40
|
+
connect-data
|
38
41
|
].freeze
|
39
42
|
|
40
43
|
# PE_BOLTLIB_PATH is intended to function exactly like the BOLTLIB_PATH used
|
@@ -48,8 +51,8 @@ module BoltServer
|
|
48
51
|
# See the `orchestrator.bolt.codedir` tk config setting.
|
49
52
|
DEFAULT_BOLT_CODEDIR = '/opt/puppetlabs/server/data/orchestration-services/code'
|
50
53
|
|
51
|
-
|
52
|
-
400, Bolt::ValidationError.new('`
|
54
|
+
MISSING_VERSIONED_PROJECT_RESPONSE = [
|
55
|
+
400, Bolt::ValidationError.new('`versioned_project` is a required argument').to_json
|
53
56
|
].freeze
|
54
57
|
|
55
58
|
def initialize(config)
|
@@ -235,9 +238,9 @@ module BoltServer
|
|
235
238
|
#
|
236
239
|
# WARNING: THIS FUNCTION SHOULD ONLY BE CALLED INSIDE A SYNCHRONIZED PAL MUTEX
|
237
240
|
def modulepath_from_environment(environment_name)
|
238
|
-
codedir = DEFAULT_BOLT_CODEDIR
|
239
|
-
environmentpath = "#{codedir}/environments"
|
240
|
-
basemodulepath = "#{codedir}/modules:/opt/puppetlabs/puppet/modules"
|
241
|
+
codedir = @config['environments-codedir'] || DEFAULT_BOLT_CODEDIR
|
242
|
+
environmentpath = @config['environmentpath'] || "#{codedir}/environments"
|
243
|
+
basemodulepath = @config['basemodulepath'] || "#{codedir}/modules:/opt/puppetlabs/puppet/modules"
|
241
244
|
modulepath_dirs = nil
|
242
245
|
with_pe_pal_init_settings(codedir, environmentpath, basemodulepath) do
|
243
246
|
environment = Puppet.lookup(:environments).get!(environment_name)
|
@@ -265,16 +268,16 @@ module BoltServer
|
|
265
268
|
end
|
266
269
|
end
|
267
270
|
|
268
|
-
def config_from_project(
|
269
|
-
project_dir = File.join(@config['projects-dir'],
|
270
|
-
raise Bolt::ValidationError, "`
|
271
|
+
def config_from_project(versioned_project)
|
272
|
+
project_dir = File.join(@config['projects-dir'], versioned_project)
|
273
|
+
raise Bolt::ValidationError, "`versioned_project`: #{project_dir} does not exist" unless Dir.exist?(project_dir)
|
271
274
|
project = Bolt::Project.create_project(project_dir)
|
272
275
|
Bolt::Config.from_project(project, { log: { 'bolt-debug.log' => 'disable' } })
|
273
276
|
end
|
274
277
|
|
275
|
-
def in_bolt_project(
|
278
|
+
def in_bolt_project(versioned_project)
|
276
279
|
@pal_mutex.synchronize do
|
277
|
-
bolt_config = config_from_project(
|
280
|
+
bolt_config = config_from_project(versioned_project)
|
278
281
|
modulepath_object = Bolt::Config::Modulepath.new(
|
279
282
|
bolt_config.modulepath,
|
280
283
|
boltlib_path: [PE_BOLTLIB_PATH, Bolt::Config::Modulepath::BOLTLIB_PATH]
|
@@ -285,8 +288,6 @@ module BoltServer
|
|
285
288
|
config: bolt_config
|
286
289
|
}
|
287
290
|
yield context
|
288
|
-
rescue Bolt::Error => e
|
289
|
-
[400, e.to_json]
|
290
291
|
end
|
291
292
|
end
|
292
293
|
|
@@ -513,14 +514,16 @@ module BoltServer
|
|
513
514
|
|
514
515
|
# Fetches the metadata for a single plan
|
515
516
|
#
|
516
|
-
# @param
|
517
|
+
# @param versioned_project [String] the project to fetch the plan from
|
517
518
|
get '/project_plans/:module_name/:plan_name' do
|
518
|
-
return
|
519
|
-
in_bolt_project(params['
|
519
|
+
return MISSING_VERSIONED_PROJECT_RESPONSE if params['versioned_project'].nil?
|
520
|
+
in_bolt_project(params['versioned_project']) do |context|
|
520
521
|
plan_info = pe_plan_info(context[:pal], params[:module_name], params[:plan_name])
|
521
522
|
plan_info = allowed_helper(plan_info, context[:config].project.plans)
|
522
523
|
[200, plan_info.to_json]
|
523
524
|
end
|
525
|
+
rescue Bolt::Error => e
|
526
|
+
[400, e.to_json]
|
524
527
|
end
|
525
528
|
|
526
529
|
# Fetches the metadata for a single task
|
@@ -538,17 +541,19 @@ module BoltServer
|
|
538
541
|
|
539
542
|
# Fetches the metadata for a single task
|
540
543
|
#
|
541
|
-
# @param
|
544
|
+
# @param bolt_versioned_project [String] the reference to the bolt-project directory to load task metadata from
|
542
545
|
get '/project_tasks/:module_name/:task_name' do
|
543
|
-
return
|
544
|
-
in_bolt_project(params['
|
546
|
+
return MISSING_VERSIONED_PROJECT_RESPONSE if params['versioned_project'].nil?
|
547
|
+
in_bolt_project(params['versioned_project']) do |context|
|
545
548
|
ps_parameters = {
|
546
|
-
'
|
549
|
+
'versioned_project' => params['versioned_project']
|
547
550
|
}
|
548
551
|
task_info = pe_task_info(context[:pal], params[:module_name], params[:task_name], ps_parameters)
|
549
552
|
task_info = allowed_helper(task_info, context[:config].project.tasks)
|
550
553
|
[200, task_info.to_json]
|
551
554
|
end
|
555
|
+
rescue Bolt::Error => e
|
556
|
+
[400, e.to_json]
|
552
557
|
end
|
553
558
|
|
554
559
|
# Fetches the list of plans for an environment, optionally fetching all metadata for each plan
|
@@ -577,10 +582,10 @@ module BoltServer
|
|
577
582
|
|
578
583
|
# Fetches the list of plans for a project
|
579
584
|
#
|
580
|
-
# @param
|
585
|
+
# @param versioned_project [String] the project to fetch the list of plans from
|
581
586
|
get '/project_plans' do
|
582
|
-
return
|
583
|
-
in_bolt_project(params['
|
587
|
+
return MISSING_VERSIONED_PROJECT_RESPONSE if params['versioned_project'].nil?
|
588
|
+
in_bolt_project(params['versioned_project']) do |context|
|
584
589
|
plans_response = plan_list(context[:pal])
|
585
590
|
|
586
591
|
# Dig in context for the allowlist of plans from project object
|
@@ -592,6 +597,8 @@ module BoltServer
|
|
592
597
|
# to bolt-server smaller/simpler.
|
593
598
|
[200, plans_response.to_json]
|
594
599
|
end
|
600
|
+
rescue Bolt::Error => e
|
601
|
+
[400, e.to_json]
|
595
602
|
end
|
596
603
|
|
597
604
|
# Fetches the list of tasks for an environment
|
@@ -611,10 +618,10 @@ module BoltServer
|
|
611
618
|
|
612
619
|
# Fetches the list of tasks for a bolt-project
|
613
620
|
#
|
614
|
-
# @param
|
621
|
+
# @param versioned_project [String] the project to fetch the list of tasks from
|
615
622
|
get '/project_tasks' do
|
616
|
-
return
|
617
|
-
in_bolt_project(params['
|
623
|
+
return MISSING_VERSIONED_PROJECT_RESPONSE if params['versioned_project'].nil?
|
624
|
+
in_bolt_project(params['versioned_project']) do |context|
|
618
625
|
tasks_response = task_list(context[:pal])
|
619
626
|
|
620
627
|
# Dig in context for the allowlist of tasks from project object
|
@@ -626,37 +633,58 @@ module BoltServer
|
|
626
633
|
# to bolt-server smaller/simpler.
|
627
634
|
[200, tasks_response.to_json]
|
628
635
|
end
|
636
|
+
rescue Bolt::Error => e
|
637
|
+
[400, e.to_json]
|
629
638
|
end
|
630
639
|
|
631
640
|
# Implements puppetserver's file_metadatas endpoint for projects.
|
632
641
|
#
|
633
|
-
# @param
|
642
|
+
# @param versioned_project [String] the versioned_project to fetch the file metadatas from
|
634
643
|
get '/project_file_metadatas/:module_name/*' do
|
635
|
-
return
|
636
|
-
in_bolt_project(params['
|
644
|
+
return MISSING_VERSIONED_PROJECT_RESPONSE if params['versioned_project'].nil?
|
645
|
+
in_bolt_project(params['versioned_project']) do |context|
|
637
646
|
file = params[:splat].first
|
638
647
|
metadatas = file_metadatas(context[:pal], params[:module_name], file)
|
639
648
|
[200, metadatas.to_json]
|
640
649
|
end
|
650
|
+
rescue Bolt::Error => e
|
651
|
+
[400, e.to_json]
|
641
652
|
rescue ArgumentError => e
|
642
653
|
[400, e.message]
|
643
654
|
end
|
644
655
|
|
645
656
|
# Returns a list of targets parsed from a Project inventory
|
646
657
|
#
|
647
|
-
# @param
|
648
|
-
|
649
|
-
return
|
650
|
-
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
+
# @param versioned_project [String] the versioned_project to compute the inventory from
|
659
|
+
post '/project_inventory_targets' do
|
660
|
+
return MISSING_VERSIONED_PROJECT_RESPONSE if params['versioned_project'].nil?
|
661
|
+
content_type :json
|
662
|
+
body = JSON.parse(request.body.read)
|
663
|
+
error = validate_schema(@schemas["connect-data"], body)
|
664
|
+
return [400, error_result(error).to_json] unless error.nil?
|
665
|
+
in_bolt_project(params['versioned_project']) do |context|
|
666
|
+
if context[:config].inventoryfile &&
|
667
|
+
context[:config].project.inventory_file.to_s !=
|
668
|
+
context[:config].inventoryfile
|
669
|
+
raise Bolt::ValidationError, "Project inventory must be defined in the " \
|
670
|
+
"inventory.yaml file at the root of the project directory"
|
671
|
+
end
|
658
672
|
|
659
|
-
|
673
|
+
Bolt::Util.validate_file('inventory file', context[:config].project.inventory_file)
|
674
|
+
|
675
|
+
begin
|
676
|
+
connect_plugin = BoltServer::Plugin::PuppetConnectData.new(body['puppet_connect_data'])
|
677
|
+
plugins = Bolt::Plugin.setup(context[:config], context[:pal], load_plugins: false)
|
678
|
+
plugins.add_plugin(connect_plugin)
|
679
|
+
inventory = Bolt::Inventory.from_config(context[:config], plugins)
|
680
|
+
target_list = inventory.get_targets('all').map { |targ| targ.to_h.merge({ 'transport' => targ.transport }) }
|
681
|
+
rescue Bolt::Plugin::PluginError::LoadingDisabled => e
|
682
|
+
msg = "Cannot load plugin #{e.details['plugin_name']}: plugin not supported"
|
683
|
+
raise BoltServer::Plugin::PluginNotSupported.new(msg, e.details['plugin_name'])
|
684
|
+
end
|
685
|
+
|
686
|
+
[200, target_list.to_json]
|
687
|
+
end
|
660
688
|
rescue Bolt::Error => e
|
661
689
|
[500, e.to_json]
|
662
690
|
end
|
data/libexec/apply_catalog.rb
CHANGED
@@ -74,7 +74,7 @@ begin
|
|
74
74
|
Puppet::ResourceApi::Transport.inject_device(type, transport)
|
75
75
|
|
76
76
|
Puppet[:facts_terminus] = :network_device
|
77
|
-
Puppet[:certname] = conn_info['
|
77
|
+
Puppet[:certname] = conn_info['name']
|
78
78
|
end
|
79
79
|
|
80
80
|
# Ensure custom facts are available for provider suitability tests
|
data/libexec/custom_facts.rb
CHANGED
@@ -51,7 +51,7 @@ Dir.mktmpdir do |puppet_root|
|
|
51
51
|
Puppet::ResourceApi::Transport.inject_device(type, transport)
|
52
52
|
|
53
53
|
Puppet[:facts_terminus] = :network_device
|
54
|
-
Puppet[:certname] = conn_info['
|
54
|
+
Puppet[:certname] = conn_info['name']
|
55
55
|
end
|
56
56
|
|
57
57
|
facts = Puppet::Node::Facts.indirection.find(SecureRandom.uuid, environment: env)
|
data/libexec/query_resources.rb
CHANGED
@@ -59,7 +59,7 @@ Dir.mktmpdir do |puppet_root|
|
|
59
59
|
Puppet::ResourceApi::Transport.inject_device(type, transport)
|
60
60
|
|
61
61
|
Puppet[:facts_terminus] = :network_device
|
62
|
-
Puppet[:certname] = conn_info['
|
62
|
+
Puppet[:certname] = conn_info['name']
|
63
63
|
end
|
64
64
|
|
65
65
|
resources = args['resources'].flat_map do |resource_desc|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bolt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.40.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Puppet
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -185,9 +185,6 @@ dependencies:
|
|
185
185
|
- - ">="
|
186
186
|
- !ruby/object:Gem::Version
|
187
187
|
version: 6.18.0
|
188
|
-
- - "<"
|
189
|
-
- !ruby/object:Gem::Version
|
190
|
-
version: '6.20'
|
191
188
|
type: :runtime
|
192
189
|
prerelease: false
|
193
190
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -195,23 +192,20 @@ dependencies:
|
|
195
192
|
- - ">="
|
196
193
|
- !ruby/object:Gem::Version
|
197
194
|
version: 6.18.0
|
198
|
-
- - "<"
|
199
|
-
- !ruby/object:Gem::Version
|
200
|
-
version: '6.20'
|
201
195
|
- !ruby/object:Gem::Dependency
|
202
196
|
name: puppetfile-resolver
|
203
197
|
requirement: !ruby/object:Gem::Requirement
|
204
198
|
requirements:
|
205
|
-
- -
|
199
|
+
- - '='
|
206
200
|
- !ruby/object:Gem::Version
|
207
|
-
version:
|
201
|
+
version: 0.4.0
|
208
202
|
type: :runtime
|
209
203
|
prerelease: false
|
210
204
|
version_requirements: !ruby/object:Gem::Requirement
|
211
205
|
requirements:
|
212
|
-
- -
|
206
|
+
- - '='
|
213
207
|
- !ruby/object:Gem::Version
|
214
|
-
version:
|
208
|
+
version: 0.4.0
|
215
209
|
- !ruby/object:Gem::Dependency
|
216
210
|
name: puppet-resource_api
|
217
211
|
requirement: !ruby/object:Gem::Requirement
|
@@ -317,6 +311,9 @@ dependencies:
|
|
317
311
|
- - ">="
|
318
312
|
- !ruby/object:Gem::Version
|
319
313
|
version: '1.14'
|
314
|
+
- - "<"
|
315
|
+
- !ruby/object:Gem::Version
|
316
|
+
version: 2.2.0
|
320
317
|
type: :development
|
321
318
|
prerelease: false
|
322
319
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -324,6 +321,9 @@ dependencies:
|
|
324
321
|
- - ">="
|
325
322
|
- !ruby/object:Gem::Version
|
326
323
|
version: '1.14'
|
324
|
+
- - "<"
|
325
|
+
- !ruby/object:Gem::Version
|
326
|
+
version: 2.2.0
|
327
327
|
- !ruby/object:Gem::Dependency
|
328
328
|
name: octokit
|
329
329
|
requirement: !ruby/object:Gem::Requirement
|
@@ -469,6 +469,7 @@ files:
|
|
469
469
|
- lib/bolt/inventory.rb
|
470
470
|
- lib/bolt/inventory/group.rb
|
471
471
|
- lib/bolt/inventory/inventory.rb
|
472
|
+
- lib/bolt/inventory/options.rb
|
472
473
|
- lib/bolt/inventory/target.rb
|
473
474
|
- lib/bolt/logger.rb
|
474
475
|
- lib/bolt/module.rb
|
@@ -510,17 +511,18 @@ files:
|
|
510
511
|
- lib/bolt/plan_creator.rb
|
511
512
|
- lib/bolt/plan_result.rb
|
512
513
|
- lib/bolt/plugin.rb
|
514
|
+
- lib/bolt/plugin/cache.rb
|
513
515
|
- lib/bolt/plugin/env_var.rb
|
514
516
|
- lib/bolt/plugin/module.rb
|
515
517
|
- lib/bolt/plugin/prompt.rb
|
516
518
|
- lib/bolt/plugin/puppetdb.rb
|
517
519
|
- lib/bolt/plugin/task.rb
|
518
520
|
- lib/bolt/project.rb
|
519
|
-
- lib/bolt/
|
520
|
-
- lib/bolt/
|
521
|
-
- lib/bolt/
|
522
|
-
- lib/bolt/
|
523
|
-
- lib/bolt/
|
521
|
+
- lib/bolt/project_manager.rb
|
522
|
+
- lib/bolt/project_manager/config_migrator.rb
|
523
|
+
- lib/bolt/project_manager/inventory_migrator.rb
|
524
|
+
- lib/bolt/project_manager/migrator.rb
|
525
|
+
- lib/bolt/project_manager/module_migrator.rb
|
524
526
|
- lib/bolt/puppetdb.rb
|
525
527
|
- lib/bolt/puppetdb/client.rb
|
526
528
|
- lib/bolt/puppetdb/config.rb
|
@@ -555,17 +557,21 @@ files:
|
|
555
557
|
- lib/bolt/transport/winrm/connection.rb
|
556
558
|
- lib/bolt/util.rb
|
557
559
|
- lib/bolt/util/puppet_log_level.rb
|
560
|
+
- lib/bolt/validator.rb
|
558
561
|
- lib/bolt/version.rb
|
559
562
|
- lib/bolt/yarn.rb
|
560
563
|
- lib/bolt_server/acl.rb
|
561
564
|
- lib/bolt_server/base_config.rb
|
562
565
|
- lib/bolt_server/config.rb
|
563
566
|
- lib/bolt_server/file_cache.rb
|
567
|
+
- lib/bolt_server/plugin.rb
|
568
|
+
- lib/bolt_server/plugin/puppet_connect_data.rb
|
564
569
|
- lib/bolt_server/schemas/action-check_node_connections.json
|
565
570
|
- lib/bolt_server/schemas/action-run_command.json
|
566
571
|
- lib/bolt_server/schemas/action-run_script.json
|
567
572
|
- lib/bolt_server/schemas/action-run_task.json
|
568
573
|
- lib/bolt_server/schemas/action-upload_file.json
|
574
|
+
- lib/bolt_server/schemas/connect-data.json
|
569
575
|
- lib/bolt_server/schemas/partials/target-any.json
|
570
576
|
- lib/bolt_server/schemas/partials/target-ssh.json
|
571
577
|
- lib/bolt_server/schemas/partials/target-winrm.json
|