k_manager 0.0.24 → 0.0.28
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/Gemfile +5 -1
- data/exe/k_manager +1 -0
- data/hooks/update-version +1 -1
- data/k_manager.gemspec +2 -0
- data/lib/k_manager/area.rb +1 -1
- data/lib/k_manager/cli/new.rb +74 -21
- data/lib/k_manager/cli/watch.rb +20 -4
- data/lib/k_manager/manager.rb +32 -2
- data/lib/k_manager/overview/dashboard.rb +10 -1
- data/lib/k_manager/resources/base_resource.rb +2 -1
- data/lib/k_manager/resources/resource_document_factory.rb +2 -0
- data/lib/k_manager/version.rb +1 -1
- data/lib/k_manager/watcher.rb +35 -11
- data/lib/k_manager.rb +12 -9
- data/tasks/watch.rake +0 -91
- metadata +30 -3
- data/lib/k_manager/configuration/project_config.rb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 10d0353e9cdde7cbec88c6b6a7dd47135da7fa026bf90ec9b6e5017c75ac2a0b
|
4
|
+
data.tar.gz: a77c72d2aa9888f29f3b3b835919828cbf6480e349cecb723e6862d81478f540
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eda368dd81ee863ad42831c6527f27b56a60d78d2e2417d377d8425fc6bcf823efe3998a61c5c358ff0329ba2251530b16e94e51acf44c2d463e0dc24874d921
|
7
|
+
data.tar.gz: 6aa66dabe51fcecf3d76dd65f202e5b21b7023133ca1892d1d743ed7059f0b7d3e2a00a354ea3b6d780ec59a77131d50b784aaf786e0937f20a8f71a419d24ea
|
data/Gemfile
CHANGED
@@ -31,14 +31,18 @@ if ENV['KLUE_LOCAL_GEMS']&.to_s&.downcase == 'true'
|
|
31
31
|
gem 'handlebars-helpers' , path: '../handlebars-helpers'
|
32
32
|
gem 'k_builder' , path: '../k_builder'
|
33
33
|
gem 'k_builder-dotnet' , path: '../k_builder-dotnet'
|
34
|
-
gem 'k_builder-package_json' , path: '../k_builder-package_json'
|
34
|
+
# gem 'k_builder-package_json' , path: '../k_builder-package_json'
|
35
35
|
gem 'k_builder-webpack5' , path: '../k_builder-webpack5'
|
36
|
+
gem 'k_config' , path: '../k_config'
|
36
37
|
gem 'k_decor' , path: '../k_decor'
|
38
|
+
gem 'k_director' , path: '../k_director'
|
37
39
|
gem 'k_doc' , path: '../k_doc'
|
38
40
|
gem 'k_domain' , path: '../k_domain'
|
41
|
+
gem 'k_ext-github' , path: '../k_ext-github'
|
39
42
|
gem 'k_fileset' , path: '../k_fileset'
|
40
43
|
gem 'k_log' , path: '../k_log'
|
41
44
|
gem 'k_type' , path: '../k_type'
|
42
45
|
gem 'k_util' , path: '../k_util'
|
46
|
+
gem 'peeky' , path: '../peeky'
|
43
47
|
end
|
44
48
|
end
|
data/exe/k_manager
CHANGED
data/hooks/update-version
CHANGED
data/k_manager.gemspec
CHANGED
@@ -41,7 +41,9 @@ Gem::Specification.new do |spec|
|
|
41
41
|
spec.add_dependency 'dry-struct', '~> 1'
|
42
42
|
spec.add_dependency 'filewatcher', '~> 2.0.0.beta5'
|
43
43
|
spec.add_dependency 'k_builder', '~> 0.0.0'
|
44
|
+
spec.add_dependency 'k_director', '~> 0.1'
|
44
45
|
spec.add_dependency 'k_doc', '~> 0.0.0'
|
46
|
+
spec.add_dependency 'k_domain', '~> 0.0.0'
|
45
47
|
spec.add_dependency 'k_ext-github', '~> 0.0.0'
|
46
48
|
spec.add_dependency 'k_fileset', '~> 0.0.0'
|
47
49
|
spec.add_dependency 'k_log', '~> 0.0.0'
|
data/lib/k_manager/area.rb
CHANGED
data/lib/k_manager/cli/new.rb
CHANGED
@@ -14,46 +14,95 @@ module KManager
|
|
14
14
|
default: '.builders',
|
15
15
|
desc: 'The builder folder, defaults to (.builders)'
|
16
16
|
|
17
|
-
option :boot_file,
|
18
|
-
default: 'boot.rb',
|
19
|
-
aliases: ['-b'],
|
20
|
-
desc: 'The name of the boot file to create'
|
21
|
-
|
22
17
|
option :force,
|
23
18
|
default: false,
|
24
19
|
aliases: ['-f'],
|
25
20
|
desc: 'Force even if guard fails'
|
26
21
|
|
22
|
+
option :template,
|
23
|
+
default: false,
|
24
|
+
aliases: ['-t'],
|
25
|
+
desc: 'Starter template'
|
26
|
+
|
27
|
+
option :log_level,
|
28
|
+
default: nil,
|
29
|
+
desc: 'Log level, use debug for more info'
|
30
|
+
|
27
31
|
example [
|
28
32
|
' # Project in current directory - will create a .builders folder and boot file at ./builders/boot.rb',
|
29
33
|
'-b ../config/boot.rb # Project in current directory - will create a .builders folder and boot file at ./config/boot.rb',
|
34
|
+
'-t ruby_gem # Use starter template `ruby_gem` to setup the files in .builders/*',
|
30
35
|
'my_project # will watch .xmen folder'
|
31
36
|
]
|
32
37
|
|
33
38
|
# rubocop:disable Metrics/ParameterLists
|
34
|
-
def call(project_folder:, builder_folder:,
|
35
|
-
project_folder
|
36
|
-
name
|
37
|
-
builder_folder
|
38
|
-
|
39
|
+
def call(project_folder:, builder_folder:, log_level:, force:, template:, **)
|
40
|
+
project_folder = absolute_path(project_folder, Dir.pwd)
|
41
|
+
name = File.basename(project_folder)
|
42
|
+
builder_folder = absolute_path(builder_folder, project_folder)
|
43
|
+
template_root_folder = File.expand_path('~/dev/kgems/k_templates/definitions/starter')
|
39
44
|
|
40
|
-
log_params(name, project_folder, builder_folder,
|
45
|
+
log_params(name, project_folder, builder_folder, force, log_level, template_root_folder, template) if log_level == 'debug'
|
41
46
|
|
42
|
-
create_project(project_folder, builder_folder,
|
47
|
+
create_project(name, project_folder, builder_folder, template_root_folder, template) if can_create?(force, builder_folder)
|
43
48
|
end
|
44
49
|
# rubocop:enable Metrics/ParameterLists
|
45
50
|
|
46
51
|
private
|
47
52
|
|
48
|
-
def create_project(project_folder, builder_folder,
|
53
|
+
def create_project(name, project_folder, builder_folder, template_root_folder, template)
|
49
54
|
FileUtils.mkdir_p(project_folder)
|
50
55
|
FileUtils.mkdir_p(builder_folder)
|
51
|
-
|
52
|
-
#
|
56
|
+
|
57
|
+
# handle_main_start_command
|
58
|
+
|
59
|
+
setup_builder_from_template(name, builder_folder, template_root_folder, 'default') unless setup_builder_from_template(name, builder_folder, template_root_folder, template)
|
53
60
|
|
54
61
|
log.info 'Project created'
|
55
62
|
end
|
56
63
|
|
64
|
+
def setup_builder_from_template(name, builder_folder, template_root_folder, template = nil)
|
65
|
+
return false unless template
|
66
|
+
|
67
|
+
# /Users/davidcruwys/dev/kgems/k_templates/definitions/starter/ruby_gem/.starter.json
|
68
|
+
template_folder = File.join(template_root_folder, template)
|
69
|
+
starter_config = template_starter_config(template_folder)
|
70
|
+
|
71
|
+
return false unless starter_config
|
72
|
+
|
73
|
+
builder = get_builder(builder_folder, template_folder)
|
74
|
+
|
75
|
+
return false if starter_config['files'].nil? || starter_config['files'].empty?
|
76
|
+
|
77
|
+
starter_config['files']&.each do |relative_file|
|
78
|
+
builder.add_file(relative_file, template_file: relative_file, name: name)
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
def template_starter_config(template_folder)
|
83
|
+
starter_file = File.join(template_folder, '.starter.json')
|
84
|
+
|
85
|
+
return nil unless File.exist?(starter_file)
|
86
|
+
|
87
|
+
JSON.parse(File.read(starter_file))
|
88
|
+
end
|
89
|
+
|
90
|
+
# rubocop:disable Metrics/AbcSize
|
91
|
+
def get_builder(builder_folder, template_folder)
|
92
|
+
Handlebars::Helpers.configure do |config|
|
93
|
+
config.helper_config_file = File.join(Gem.loaded_specs['handlebars-helpers'].full_gem_path, '.handlebars_helpers.json')
|
94
|
+
config.string_formatter_config_file = File.join(Gem.loaded_specs['handlebars-helpers'].full_gem_path, '.handlebars_string_formatters.json')
|
95
|
+
end
|
96
|
+
|
97
|
+
KConfig.configure(:starter_template) do |config|
|
98
|
+
config.target_folders.add(:builder , builder_folder)
|
99
|
+
config.template_folders.add(:template , template_folder)
|
100
|
+
end
|
101
|
+
|
102
|
+
KBuilder::BaseBuilder.init(KConfig.configuration(:starter_template))
|
103
|
+
end
|
104
|
+
# rubocop:enable Metrics/AbcSize
|
105
|
+
|
57
106
|
def can_create?(force, builder_folder)
|
58
107
|
return true if force
|
59
108
|
return true unless File.directory?(builder_folder)
|
@@ -63,14 +112,18 @@ module KManager
|
|
63
112
|
false
|
64
113
|
end
|
65
114
|
|
66
|
-
|
115
|
+
# rubocop:disable Metrics/ParameterLists
|
116
|
+
def log_params(name, project_folder, builder_folder, force, log_level, template_root_folder, template)
|
67
117
|
log.section_heading('Create new project')
|
68
|
-
log.kv 'name'
|
69
|
-
log.kv 'project_folder'
|
70
|
-
log.kv 'builder_folder'
|
71
|
-
log.kv '
|
72
|
-
log.kv '
|
118
|
+
log.kv 'name' , name
|
119
|
+
log.kv 'project_folder' , project_folder
|
120
|
+
log.kv 'builder_folder' , builder_folder
|
121
|
+
log.kv 'force' , force
|
122
|
+
log.kv 'log_level' , log_level
|
123
|
+
log.kv 'template_root_folder' , template_root_folder
|
124
|
+
log.kv 'template' , template
|
73
125
|
end
|
126
|
+
# rubocop:enable Metrics/ParameterLists
|
74
127
|
end
|
75
128
|
end
|
76
129
|
end
|
data/lib/k_manager/cli/watch.rb
CHANGED
@@ -27,16 +27,32 @@ module KManager
|
|
27
27
|
|
28
28
|
log_params(builder_folder, boot_file) if log_level == 'debug'
|
29
29
|
|
30
|
-
#
|
31
|
-
#
|
30
|
+
# If you do a System Exit (control+c) you can go into a reboot sequence based on options
|
31
|
+
# if the option is not set then system will exit gracefully
|
32
|
+
while keep_watching(builder_folder, boot_file); end
|
33
|
+
end
|
34
|
+
|
35
|
+
private
|
32
36
|
|
37
|
+
# rubocop:disable Metrics/AbcSize
|
38
|
+
def keep_watching(builder_folder, boot_file)
|
33
39
|
Dir.chdir(builder_folder) do
|
34
40
|
watcher = KManager::Watcher.new(builder_folder, boot_file)
|
35
41
|
watcher.start
|
36
42
|
end
|
37
|
-
|
43
|
+
false
|
44
|
+
rescue Interrupt, SystemExit
|
45
|
+
if KManager.opts.reboot_on_kill == true || KManager.opts.reboot_on_kill == 1
|
46
|
+
puts "\nRebooting #{KManager.opts.app_name}..."
|
47
|
+
sleep KManager.opts.reboot_sleep unless KManager.opts.reboot_sleep.zero?
|
38
48
|
|
39
|
-
|
49
|
+
return true
|
50
|
+
end
|
51
|
+
|
52
|
+
puts "\nExiting..."
|
53
|
+
false
|
54
|
+
end
|
55
|
+
# rubocop:enable Metrics/AbcSize
|
40
56
|
|
41
57
|
def log_params(builder_folder, boot_file)
|
42
58
|
log.section_heading('Watch project')
|
data/lib/k_manager/manager.rb
CHANGED
@@ -28,7 +28,29 @@ module KManager
|
|
28
28
|
yield(@current_resource)
|
29
29
|
end
|
30
30
|
|
31
|
-
|
31
|
+
# Usage
|
32
|
+
#
|
33
|
+
# KManager.opts.sleep = 10
|
34
|
+
# KManager.opts.reboot_on_kill = 0
|
35
|
+
# KManager.opts.exception_style = :short
|
36
|
+
# KManager.opts.show.time_taken = true
|
37
|
+
# KManager.opts.show.finished = true
|
38
|
+
# KManager.opts.show.finished_message = 'FINISHED :)'
|
39
|
+
|
40
|
+
Options = Struct.new(
|
41
|
+
:app_name,
|
42
|
+
:exception_style,
|
43
|
+
:reboot_on_kill,
|
44
|
+
:reboot_sleep,
|
45
|
+
:sleep,
|
46
|
+
:show
|
47
|
+
)
|
48
|
+
|
49
|
+
Show = Struct.new(
|
50
|
+
:time_taken,
|
51
|
+
:finished,
|
52
|
+
:finished_message
|
53
|
+
)
|
32
54
|
|
33
55
|
# @param [Integer] sleep Seconds to sleep after running, 0 = no sleep
|
34
56
|
# @param [Symbol] exception_style Format for exception messages caught by watcher.
|
@@ -36,7 +58,7 @@ module KManager
|
|
36
58
|
# :short - message and short backtrace
|
37
59
|
# :long - message and long backtrace
|
38
60
|
def opts
|
39
|
-
@opts ||= Options.new(0, :
|
61
|
+
@opts ||= Options.new('', :message, false, 1, 0, Show.new(true, true, 'FINISHED :)'))
|
40
62
|
end
|
41
63
|
|
42
64
|
def areas
|
@@ -104,7 +126,15 @@ module KManager
|
|
104
126
|
@active_uri = nil
|
105
127
|
end
|
106
128
|
|
129
|
+
def reboot
|
130
|
+
puts 'Fire reboot'
|
131
|
+
KManager.opts.reboot_on_kill = 1
|
132
|
+
raise SystemExit
|
133
|
+
end
|
134
|
+
|
107
135
|
def debug(*sections)
|
136
|
+
log.structure(KUtil.data.to_hash(opts))
|
137
|
+
|
108
138
|
areas.each do |area|
|
109
139
|
area.debug(*sections)
|
110
140
|
end
|
@@ -45,7 +45,7 @@ module KManager
|
|
45
45
|
{ namespace: { display_method: ->(row) { row.namespace } } },
|
46
46
|
{ status: { display_method: ->(row) { row.status } } },
|
47
47
|
{ content_type: { display_method: ->(row) { row.content_type } } },
|
48
|
-
{ content: { display_method: ->(row) { row.content } } },
|
48
|
+
{ content: { display_method: ->(row) { format_content(row.content, row.content_type) }, width: 50 } },
|
49
49
|
{ document_count: { display_method: ->(row) { blank_zero(row.document_count) } } },
|
50
50
|
{ valid: { display_method: ->(row) { row.valid } } },
|
51
51
|
{ error_count: { display_method: ->(row) { blank_zero(row.errors.length) } } },
|
@@ -119,6 +119,15 @@ module KManager
|
|
119
119
|
log.structure(data, **opts)
|
120
120
|
end
|
121
121
|
|
122
|
+
def format_content(content, type)
|
123
|
+
formatted = content
|
124
|
+
case type
|
125
|
+
when :ruby
|
126
|
+
formatted = formatted&.sub(/\A# frozen_string_literal: true/, '')&.strip
|
127
|
+
end
|
128
|
+
formatted
|
129
|
+
end
|
130
|
+
|
122
131
|
def blank_zero(value)
|
123
132
|
return nil if value.nil? || (value.is_a?(Integer) && value.zero?)
|
124
133
|
|
@@ -175,7 +175,8 @@ module KManager
|
|
175
175
|
rescue Exception => e
|
176
176
|
guard(e.message)
|
177
177
|
debug
|
178
|
-
log.exception(e, style:
|
178
|
+
log.exception(e, style: KManager.opts.exception_style)
|
179
|
+
# log.exception(e, style: :short)
|
179
180
|
end
|
180
181
|
# rubocop:enable Lint/RescueException
|
181
182
|
|
@@ -89,6 +89,8 @@ module KManager
|
|
89
89
|
# if documents.length > 0
|
90
90
|
# resource.resource_type = KDsl::Resources::Resource::TYPE_RUBY_DSL
|
91
91
|
# end
|
92
|
+
rescue Interrupt, SystemExit
|
93
|
+
raise
|
92
94
|
rescue Exception => e
|
93
95
|
# Report the error but still add the document so that you can see
|
94
96
|
# it in the ResourceDocument list, it will be marked as Error
|
data/lib/k_manager/version.rb
CHANGED
data/lib/k_manager/watcher.rb
CHANGED
@@ -20,41 +20,65 @@ module KManager
|
|
20
20
|
# process_updated_file(filename) if event == :updated # || event == :created
|
21
21
|
# process_deleted_file(filename) if event == :deleted
|
22
22
|
|
23
|
-
# rubocop:disable Lint/RescueException, Metrics/AbcSize
|
23
|
+
# rubocop:disable Lint/RescueException, Metrics/AbcSize, Metrics/MethodLength
|
24
24
|
def start
|
25
25
|
boot_up
|
26
26
|
|
27
27
|
update_dashboard
|
28
28
|
|
29
|
-
Filewatcher.new(watch_folder)
|
30
|
-
changes.each do |filename, event|
|
31
|
-
clear_screen
|
29
|
+
watcher = Filewatcher.new(watch_folder)
|
32
30
|
|
33
|
-
|
31
|
+
watcher.watch do |changes|
|
32
|
+
watcher.pause
|
33
|
+
if changes.length > 1
|
34
|
+
log.kv 'HOW MANY CHANGES', changes.length
|
35
|
+
log.block changes
|
36
|
+
end
|
34
37
|
|
35
|
-
|
38
|
+
changes.each do |filename, event|
|
39
|
+
# NOTE: KManager will not support space in file name, but this will at least deal with file copies, where " copy" is added to a file name.
|
36
40
|
filename = filename.gsub(' ', '%20')
|
37
41
|
|
38
|
-
|
42
|
+
log_file_event(event, filename)
|
39
43
|
|
40
44
|
uri = URI::File.build(host: nil, path: filename)
|
45
|
+
|
46
|
+
start_time = Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
41
47
|
KManager.resource_changed(uri, event)
|
48
|
+
finish_time = Process.clock_gettime(Process::CLOCK_MONOTONIC)
|
49
|
+
time_taken = finish_time - start_time
|
42
50
|
|
43
51
|
sleep KManager.opts.sleep if KManager.opts.sleep.positive?
|
44
52
|
|
53
|
+
clear_screen
|
54
|
+
|
55
|
+
log_file_event(event, filename)
|
56
|
+
log.kv 'Time Taken', time_taken.to_d.round(3, :truncate).to_f if KManager.opts.show.time_taken
|
57
|
+
|
45
58
|
update_dashboard
|
46
|
-
|
59
|
+
|
60
|
+
puts KManager.opts.show.finished_message if KManager.opts.show.finished
|
47
61
|
end
|
62
|
+
watcher.resume
|
48
63
|
end
|
64
|
+
rescue Interrupt, SystemExit
|
65
|
+
raise
|
49
66
|
rescue Exception => e
|
50
|
-
# TODO: Make style a setting: :message, :short, (whatever the last one is)
|
51
|
-
log.exception(e, style: KManager.opts.exception_style)
|
52
67
|
log.exception(e)
|
53
68
|
end
|
54
|
-
# rubocop:enable Lint/RescueException, Metrics/AbcSize
|
69
|
+
# rubocop:enable Lint/RescueException, Metrics/AbcSize, Metrics/MethodLength
|
55
70
|
|
56
71
|
private
|
57
72
|
|
73
|
+
def log_file_event(event, filename)
|
74
|
+
current = Time.now.strftime('%H:%M:%S')
|
75
|
+
output = "#{current} - #{event}: #{filename}"
|
76
|
+
|
77
|
+
log.warn(output) if event == :updated
|
78
|
+
log.error(output) if event == :deleted
|
79
|
+
log.info(output) if event == :created
|
80
|
+
end
|
81
|
+
|
58
82
|
def boot_up
|
59
83
|
clear_screen
|
60
84
|
|
data/lib/k_manager.rb
CHANGED
@@ -4,7 +4,10 @@ require 'csv'
|
|
4
4
|
require 'dry-struct'
|
5
5
|
require 'forwardable'
|
6
6
|
require 'k_log'
|
7
|
+
require 'k_config'
|
7
8
|
require 'k_doc'
|
9
|
+
require 'k_domain'
|
10
|
+
require 'k_director'
|
8
11
|
require 'k_fileset'
|
9
12
|
require 'k_builder'
|
10
13
|
require 'k_ext/github'
|
@@ -14,7 +17,6 @@ require 'handlebars/helpers/string_formatting/dasherize'
|
|
14
17
|
require 'handlebars/helpers/string_formatting/snake'
|
15
18
|
|
16
19
|
require 'k_manager/version'
|
17
|
-
require 'k_manager/configuration/project_config'
|
18
20
|
require 'k_manager/overview/models'
|
19
21
|
require 'k_manager/overview/queries'
|
20
22
|
require 'k_manager/overview/dump_json'
|
@@ -96,7 +98,15 @@ module KManager
|
|
96
98
|
@manager = Manager.new
|
97
99
|
end
|
98
100
|
|
99
|
-
def_delegators
|
101
|
+
def_delegators :manager,
|
102
|
+
:opts,
|
103
|
+
:areas,
|
104
|
+
:add_area,
|
105
|
+
:find_document,
|
106
|
+
:fire_actions,
|
107
|
+
:resource_changed,
|
108
|
+
:reboot,
|
109
|
+
:debug
|
100
110
|
|
101
111
|
# ----------------------------------------------------------------------
|
102
112
|
# Document factory facade methods
|
@@ -108,13 +118,6 @@ module KManager
|
|
108
118
|
|
109
119
|
def_delegators :document_factory, :action, :model, :csv, :json, :yaml
|
110
120
|
|
111
|
-
# TODO: DEPRECATE or REFACTOR
|
112
|
-
def new_project_config(&block)
|
113
|
-
config = KManager::Configuration::ProjectConfig.new
|
114
|
-
block.call(config) if block_given?
|
115
|
-
config
|
116
|
-
end
|
117
|
-
|
118
121
|
# ----------------------------------------------------------------------
|
119
122
|
# Utilities
|
120
123
|
# ----------------------------------------------------------------------
|
data/tasks/watch.rake
CHANGED
@@ -16,94 +16,3 @@ namespace :k_manager do
|
|
16
16
|
watcher.start
|
17
17
|
end
|
18
18
|
end
|
19
|
-
|
20
|
-
# require 'pry'
|
21
|
-
# require 'k_manager'
|
22
|
-
# require 'filewatcher'
|
23
|
-
# require 'io/console'
|
24
|
-
|
25
|
-
# class Watcher
|
26
|
-
# include KLog::Logging
|
27
|
-
|
28
|
-
# attr_reader :watch_folder
|
29
|
-
# attr_reader :boot_file
|
30
|
-
|
31
|
-
# def initialize(watch_folder, boot_file)
|
32
|
-
# @watch_folder = watch_folder
|
33
|
-
# @boot_file = boot_file
|
34
|
-
# end
|
35
|
-
|
36
|
-
#
|
37
|
-
# def start
|
38
|
-
# boot(boot_file)
|
39
|
-
# update_dashboard
|
40
|
-
|
41
|
-
# Filewatcher.new(watch_folder).watch do |changes|
|
42
|
-
# changes.each do |filename, event|
|
43
|
-
# $stdout.clear_screen
|
44
|
-
# puts "File #{event}: #{filename}"
|
45
|
-
|
46
|
-
# uri = URI::File.build(host: nil, path: filename)
|
47
|
-
# KManager.resource_changed(uri, event)
|
48
|
-
|
49
|
-
# # process_created_file(filename) if event == :created
|
50
|
-
# # process_updated_file(filename) if event == :updated # || event == :created
|
51
|
-
# # process_deleted_file(filename) if event == :deleted
|
52
|
-
# update_dashboard
|
53
|
-
# end
|
54
|
-
# end
|
55
|
-
# rescue Exception => e
|
56
|
-
# # TODO: Make style a setting: :message, :short, (whatever the last one is)
|
57
|
-
# log.exception(e, style: :short)
|
58
|
-
# end
|
59
|
-
# # private
|
60
|
-
|
61
|
-
# def boot(boot_file)
|
62
|
-
# clear_screen
|
63
|
-
|
64
|
-
# content = File.read(boot_file)
|
65
|
-
# Object.class_eval(content, boot_file)
|
66
|
-
# end
|
67
|
-
|
68
|
-
#
|
69
|
-
# def process_updated_file(filename)
|
70
|
-
# clear_screen
|
71
|
-
# update_load_path(filename)
|
72
|
-
|
73
|
-
# puts "File updated: #{filename}"
|
74
|
-
# rescue Exception => e
|
75
|
-
# # TODO: Make style a setting: :message, :short, (whatever the last one is)
|
76
|
-
# log.exception(e, style: :short)
|
77
|
-
# end
|
78
|
-
|
79
|
-
# def process_updated_file_old(filename)
|
80
|
-
# clear_screen
|
81
|
-
# update_load_path(filename)
|
82
|
-
|
83
|
-
# puts "File updated: #{filename}"
|
84
|
-
|
85
|
-
# content = File.read(filename)
|
86
|
-
# Object.class_eval(content, filename)
|
87
|
-
# rescue Exception => e
|
88
|
-
# # TODO: Make style a setting: :message, :short, (whatever the last one is)
|
89
|
-
# log.exception(e, style: :short)
|
90
|
-
# end
|
91
|
-
# # def update_dashboard
|
92
|
-
# dashboard = KManager::Overview::Dashboard.new(KManager.manager)
|
93
|
-
# dashboard.areas
|
94
|
-
# dashboard.resources
|
95
|
-
# dashboard.documents
|
96
|
-
# end
|
97
|
-
|
98
|
-
# def update_load_path(filename)
|
99
|
-
# dirname = File.dirname(filename)
|
100
|
-
|
101
|
-
# # This needs to be in detailed logging
|
102
|
-
# $LOAD_PATH.unshift(dirname) unless $LOAD_PATH.find { |path| path.start_with?(dirname) }
|
103
|
-
# end
|
104
|
-
|
105
|
-
# def clear_screen
|
106
|
-
# puts "\n" * 70
|
107
|
-
# $stdout.clear_screen
|
108
|
-
# end
|
109
|
-
# end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: k_manager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.28
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Cruwys
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: dry-struct
|
@@ -52,6 +52,20 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 0.0.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: k_director
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.1'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0.1'
|
55
69
|
- !ruby/object:Gem::Dependency
|
56
70
|
name: k_doc
|
57
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,6 +80,20 @@ dependencies:
|
|
66
80
|
- - "~>"
|
67
81
|
- !ruby/object:Gem::Version
|
68
82
|
version: 0.0.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: k_domain
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.0.0
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.0.0
|
69
97
|
- !ruby/object:Gem::Dependency
|
70
98
|
name: k_ext-github
|
71
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -162,7 +190,6 @@ files:
|
|
162
190
|
- lib/k_manager/cli/new.rb
|
163
191
|
- lib/k_manager/cli/version.rb
|
164
192
|
- lib/k_manager/cli/watch.rb
|
165
|
-
- lib/k_manager/configuration/project_config.rb
|
166
193
|
- lib/k_manager/document_factory.rb
|
167
194
|
- lib/k_manager/manager.rb
|
168
195
|
- lib/k_manager/overview/dashboard.rb
|
@@ -1,14 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module KManager
|
4
|
-
module Configuration
|
5
|
-
# Project configuration class for KManager
|
6
|
-
#
|
7
|
-
# This configuration contains template and target folders as used
|
8
|
-
# by all k_builders, it also has additional configuration that makes
|
9
|
-
# sense for a project, such as the GitHub repository configuration
|
10
|
-
class ProjectConfig < KBuilder::Configuration
|
11
|
-
attach_to(KExt::Github::Configuration, self, :github)
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|