kafo 6.5.0 → 7.0.0
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 +4 -4
- data/README.md +5 -7
- data/bin/kafofy +2 -2
- data/lib/kafo/help_builders/advanced.rb +1 -1
- data/lib/kafo/help_builders/base.rb +1 -1
- data/lib/kafo/kafo_configure.rb +4 -4
- data/lib/kafo/puppet_command.rb +0 -5
- data/lib/kafo/puppet_module.rb +1 -1
- data/lib/kafo/version.rb +1 -1
- data/modules/kafo_configure/manifests/init.pp +1 -10
- data/modules/kafo_configure/spec/classes/init_spec.rb +0 -7
- metadata +8 -9
- data/modules/kafo_configure/lib/puppet/parser/functions/add_progress.rb +0 -43
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8ae11e11628c99446f1b247135f656e0f5546c6045499b05b9b00b83665b5afc
|
4
|
+
data.tar.gz: bd4361d90a598e7f3beb6a27f28a5f7992a0e30b033f327cfbe5dd0488676766
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 709acb14a02a183b1f3b5b604014d6d22aedca7d15e08fdd29408296aa189d9813be07b873cb151b412015b5a0c3b313a6224e7e91c8dea5a44c77063fb0b263
|
7
|
+
data.tar.gz: b53a7e0ddbe08344b26d68a965ad14a550930be9bf943920df2d352a45d5edb1806e4b9612623109a7db33d8470722a36a73429631985f20728cd57446f2f712
|
data/README.md
CHANGED
@@ -160,9 +160,8 @@ As you may have noticed there are several ways how to specify arguments. Here's
|
|
160
160
|
|
161
161
|
## Requirements
|
162
162
|
|
163
|
-
Kafo is supported with Puppet
|
164
|
-
|
165
|
-
packages.
|
163
|
+
Kafo is supported with Puppet version 7. Puppet may be installed as a gem (add
|
164
|
+
it to Gemfile) or through a package, including official AIO packages.
|
166
165
|
|
167
166
|
## How do I report bugs or contribute?
|
168
167
|
|
@@ -207,13 +206,12 @@ When using Puppet via a Gemfile, Bundler should set up PATH to point at the
|
|
207
206
|
gem version. If using a system/packaged version, it will typically find and
|
208
207
|
execute /usr/bin/puppet from the regular PATH.
|
209
208
|
|
210
|
-
When using an AIO
|
209
|
+
When using an AIO packaged version of Puppet, other versions of Puppet from
|
211
210
|
PATH will be preferred if they exist, so they should either be removed or PATH
|
212
211
|
set to prefer /opt/puppetlabs/bin, i.e. `export PATH=/opt/puppetlabs/bin:$PATH`.
|
213
212
|
Debug logs from Kafo should indicate the full path of the binary used.
|
214
213
|
|
215
|
-
Note that Kafo parsers
|
216
|
-
extra modules (such as puppet-strings on Puppet 4+) to parse manifests.
|
214
|
+
Note that Kafo parsers relies on puppet-strings to parse manifests.
|
217
215
|
|
218
216
|
## Parameters prefixes
|
219
217
|
|
@@ -728,7 +726,7 @@ If you use "params_path" for this purpose, "params_name" is ignored.
|
|
728
726
|
|
729
727
|
## Validations
|
730
728
|
|
731
|
-
If class parameters are declared with Puppet
|
729
|
+
If class parameters are declared with Puppet data types then Kafo will
|
732
730
|
validate user inputs against Puppet's type validation rules.
|
733
731
|
|
734
732
|
## Enabling or disabling module
|
data/bin/kafofy
CHANGED
@@ -47,7 +47,7 @@ end
|
|
47
47
|
|
48
48
|
# Create default config file
|
49
49
|
puts "creating #{options[:config_file]} as a default scenario file"
|
50
|
-
if !File.
|
50
|
+
if !File.exist?(options[:config_file])
|
51
51
|
puts "... creating config file #{options[:config_file]}"
|
52
52
|
FileUtils.touch options[:config_file]
|
53
53
|
File.chmod 0600, options[:config_file]
|
@@ -61,7 +61,7 @@ end
|
|
61
61
|
# Installer script
|
62
62
|
script_name = "bin/#{options[:name]}"
|
63
63
|
puts "... creating #{script_name}"
|
64
|
-
if !File.
|
64
|
+
if !File.exist?(script_name)
|
65
65
|
content = <<EOS
|
66
66
|
#!/usr/bin/env ruby
|
67
67
|
require 'rubygems'
|
data/lib/kafo/kafo_configure.rb
CHANGED
@@ -304,7 +304,7 @@ module Kafo
|
|
304
304
|
store = Store.new()
|
305
305
|
store_path = self.class.config.app[:store_dir]
|
306
306
|
store_path = File.expand_path(File.join(CONFIG_DIR, '../store.d')) if store_path.empty? && defined?(CONFIG_DIR)
|
307
|
-
store.add_dir(store_path) if File.
|
307
|
+
store.add_dir(store_path) if File.exist?(store_path)
|
308
308
|
store
|
309
309
|
end
|
310
310
|
|
@@ -556,10 +556,10 @@ module Kafo
|
|
556
556
|
end
|
557
557
|
|
558
558
|
def config_file
|
559
|
-
return CONFIG_FILE if defined?(CONFIG_FILE) && File.
|
559
|
+
return CONFIG_FILE if defined?(CONFIG_FILE) && File.exist?(CONFIG_FILE)
|
560
560
|
return self.class.scenario_manager.select_scenario if self.class.scenario_manager.configured?
|
561
|
-
return '/etc/kafo/kafo.yaml' if File.
|
562
|
-
return "#{::RbConfig::CONFIG['sysconfdir']}/kafo/kafo.yaml" if File.
|
561
|
+
return '/etc/kafo/kafo.yaml' if File.exist?('/etc/kafo/kafo.yaml')
|
562
|
+
return "#{::RbConfig::CONFIG['sysconfdir']}/kafo/kafo.yaml" if File.exist?("#{::RbConfig::CONFIG['sysconfdir']}/kafo/kafo.yaml")
|
563
563
|
File.join(Dir.pwd, 'config', 'kafo.yaml')
|
564
564
|
end
|
565
565
|
|
data/lib/kafo/puppet_command.rb
CHANGED
@@ -73,16 +73,11 @@ module Kafo
|
|
73
73
|
def manifest
|
74
74
|
%{echo '
|
75
75
|
$kafo_config_file="#{@configuration.config_file}"
|
76
|
-
#{add_progress}
|
77
76
|
#{generate_version_checks.join("\n") if @puppet_version_check}
|
78
77
|
#{@command}
|
79
78
|
'}
|
80
79
|
end
|
81
80
|
|
82
|
-
def add_progress
|
83
|
-
%{$kafo_add_progress=#{!KafoConfigure.verbose}}
|
84
|
-
end
|
85
|
-
|
86
81
|
def generate_version_checks
|
87
82
|
checks = []
|
88
83
|
modules_path.each do |modulepath|
|
data/lib/kafo/puppet_module.rb
CHANGED
@@ -36,7 +36,7 @@ module Kafo
|
|
36
36
|
if @configuration.module_dirs.count == 1
|
37
37
|
module_dir = @configuration.module_dirs.first
|
38
38
|
else
|
39
|
-
module_dir = @configuration.module_dirs.find { |dir| File.
|
39
|
+
module_dir = @configuration.module_dirs.find { |dir| File.exist?(File.join(dir, module_manifest_path)) } ||
|
40
40
|
warn("Manifest #{module_manifest_path} was not found in #{@configuration.module_dirs.join(', ')}")
|
41
41
|
end
|
42
42
|
@manifest_path = File.join(module_dir, module_manifest_path)
|
data/lib/kafo/version.rb
CHANGED
@@ -3,15 +3,6 @@
|
|
3
3
|
# optional $answers class parameter
|
4
4
|
# $modulepath/config/answers.yaml
|
5
5
|
# /etc/kafo-configure/answers.yaml
|
6
|
-
|
7
|
-
# @param add_progress
|
8
|
-
# Whether to add a progress bar. Only works on Puppet < 6.
|
9
|
-
class kafo_configure(
|
10
|
-
Boolean $add_progress = $::kafo_add_progress,
|
11
|
-
) {
|
12
|
-
if $add_progress and SemVer($facts['puppetversion']) =~ SemVerRange('< 6.0.0') {
|
13
|
-
add_progress()
|
14
|
-
}
|
15
|
-
|
6
|
+
class kafo_configure {
|
16
7
|
lookup('classes', {merge => unique}).include
|
17
8
|
}
|
@@ -2,16 +2,9 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe 'kafo_configure' do
|
4
4
|
let(:hiera_config) { 'spec/fixtures/hiera/hiera.yaml' }
|
5
|
-
let(:facts) { { puppetversion: Puppet.version } }
|
6
5
|
|
7
6
|
context 'without parameters' do
|
8
|
-
let(:params) { {add_progress: false} }
|
9
7
|
it { is_expected.to compile.with_all_deps }
|
10
8
|
it { is_expected.to contain_class('dummy') }
|
11
9
|
end
|
12
|
-
|
13
|
-
context 'with progress' do
|
14
|
-
let(:params) { {add_progress: true} }
|
15
|
-
it { is_expected.to compile.with_all_deps }
|
16
|
-
end
|
17
10
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kafo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 7.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marek Hulan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-05-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -148,20 +148,20 @@ dependencies:
|
|
148
148
|
requirements:
|
149
149
|
- - ">="
|
150
150
|
- !ruby/object:Gem::Version
|
151
|
-
version:
|
151
|
+
version: 1.3.1
|
152
152
|
- - "<"
|
153
153
|
- !ruby/object:Gem::Version
|
154
|
-
version:
|
154
|
+
version: '2'
|
155
155
|
type: :runtime
|
156
156
|
prerelease: false
|
157
157
|
version_requirements: !ruby/object:Gem::Requirement
|
158
158
|
requirements:
|
159
159
|
- - ">="
|
160
160
|
- !ruby/object:Gem::Version
|
161
|
-
version:
|
161
|
+
version: 1.3.1
|
162
162
|
- - "<"
|
163
163
|
- !ruby/object:Gem::Version
|
164
|
-
version:
|
164
|
+
version: '2'
|
165
165
|
- !ruby/object:Gem::Dependency
|
166
166
|
name: highline
|
167
167
|
requirement: !ruby/object:Gem::Requirement
|
@@ -286,7 +286,6 @@ files:
|
|
286
286
|
- modules/kafo_configure/lib/puppet/functions/kafo_configure/dump_lookups.rb
|
287
287
|
- modules/kafo_configure/lib/puppet/functions/kafo_configure/dump_variables.rb
|
288
288
|
- modules/kafo_configure/lib/puppet/functions/kafo_configure/to_yaml.rb
|
289
|
-
- modules/kafo_configure/lib/puppet/parser/functions/add_progress.rb
|
290
289
|
- modules/kafo_configure/manifests/dump_values.pp
|
291
290
|
- modules/kafo_configure/manifests/init.pp
|
292
291
|
- modules/kafo_configure/manifests/puppet_version_semver.pp
|
@@ -313,14 +312,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
313
312
|
requirements:
|
314
313
|
- - ">="
|
315
314
|
- !ruby/object:Gem::Version
|
316
|
-
version: 2.
|
315
|
+
version: '2.7'
|
317
316
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
318
317
|
requirements:
|
319
318
|
- - ">="
|
320
319
|
- !ruby/object:Gem::Version
|
321
320
|
version: '0'
|
322
321
|
requirements: []
|
323
|
-
rubygems_version: 3.
|
322
|
+
rubygems_version: 3.4.10
|
324
323
|
signing_key:
|
325
324
|
specification_version: 4
|
326
325
|
summary: A gem for making installations based on puppet user friendly
|
@@ -1,43 +0,0 @@
|
|
1
|
-
module Puppet::Parser::Functions
|
2
|
-
newfunction(:add_progress) do |args|
|
3
|
-
loaded = false
|
4
|
-
begin
|
5
|
-
require 'puppet/transaction'
|
6
|
-
loaded = true
|
7
|
-
rescue LoadError
|
8
|
-
::Puppet.warning 'Unable to load puppet/transaction for progress bar support, this version may not be supported'
|
9
|
-
end
|
10
|
-
|
11
|
-
if loaded
|
12
|
-
# Monkey patch the transaction to put our wrapper around the report object
|
13
|
-
class Puppet::Transaction
|
14
|
-
attr_accessor :in_main_catalog
|
15
|
-
|
16
|
-
def is_interesting?(resource)
|
17
|
-
return false if resource.class.name == :component # ignore defined types
|
18
|
-
![:schedule, :class, :stage, :filebucket, :anchor, :concat_fragment].include?(resource.to_s.split('[')[0].downcase.to_sym)
|
19
|
-
end
|
20
|
-
|
21
|
-
def tracked_resources
|
22
|
-
@tracked_resources ||= catalog.vertices.select { |resource| is_interesting?(resource) }.map(&:to_s)
|
23
|
-
end
|
24
|
-
|
25
|
-
def evaluate_with_trigger(*args, &block)
|
26
|
-
if catalog.version
|
27
|
-
self.in_main_catalog = true
|
28
|
-
tracked_resources.each { |r| ::Puppet.info "MONITOR_RESOURCE #{r}" }
|
29
|
-
end
|
30
|
-
evaluate_without_trigger(*args, &block)
|
31
|
-
self.in_main_catalog = false if catalog.version
|
32
|
-
end
|
33
|
-
|
34
|
-
if method_defined?(:evaluate) && method_defined?(:report)
|
35
|
-
alias_method :evaluate_without_trigger, :evaluate
|
36
|
-
alias_method :evaluate, :evaluate_with_trigger
|
37
|
-
else
|
38
|
-
::Puppet.warning 'Unable to patch Puppet transactions for progress bar support, this version may not be supported'
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|