eventhub-command 0.0.15 → 0.0.16
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/.gitignore +17 -17
- data/README.md +29 -29
- data/eh.gemspec +27 -27
- data/lib/eh/commands/copy_config.rb +51 -51
- data/lib/eh/commands/deploy.rb +38 -38
- data/lib/eh/commands/generate_processor.rb +89 -89
- data/lib/eh/commands/package.rb +97 -97
- data/lib/eh/commands/package_rails.rb +97 -97
- data/lib/eh/settings.rb +65 -65
- data/lib/eh/version.rb +3 -3
- data/lib/eh-commands.rb +7 -7
- data/lib/eh.rb +6 -6
- data/todo.txt +8 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0302cea6be0586be4c4a88446e1e6b44559494a3
|
4
|
+
data.tar.gz: 5d0c50461efd466abe535adabc24b1139e03451d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 204ef7824c0ac03b05cdb2096a32d2a0fe3f79c40aa5261ea2483938dc311238f34b26b3701d00d57783ca3c0d9cb1de6afdc1382bd04ef4f953f8eb52e204e0
|
7
|
+
data.tar.gz: 0d27e3d786904a399a70d3d271a48904a6800d1d19bc22925964fdaaf8429f660ff94a6d919f2e9ece0ba8f34b04b6f3ea7cd9ef726e0464a4cd593e28ad9db4
|
data/.gitignore
CHANGED
@@ -1,18 +1,18 @@
|
|
1
|
-
*.gem
|
2
|
-
*.rbc
|
3
|
-
.bundle
|
4
|
-
.config
|
5
|
-
.yardoc
|
6
|
-
Gemfile.lock
|
7
|
-
InstalledFiles
|
8
|
-
_yardoc
|
9
|
-
coverage
|
10
|
-
doc/
|
11
|
-
lib/bundler/man
|
12
|
-
pkg
|
13
|
-
rdoc
|
14
|
-
spec/reports
|
15
|
-
test/tmp
|
16
|
-
test/version_tmp
|
17
|
-
tmp
|
1
|
+
*.gem
|
2
|
+
*.rbc
|
3
|
+
.bundle
|
4
|
+
.config
|
5
|
+
.yardoc
|
6
|
+
Gemfile.lock
|
7
|
+
InstalledFiles
|
8
|
+
_yardoc
|
9
|
+
coverage
|
10
|
+
doc/
|
11
|
+
lib/bundler/man
|
12
|
+
pkg
|
13
|
+
rdoc
|
14
|
+
spec/reports
|
15
|
+
test/tmp
|
16
|
+
test/version_tmp
|
17
|
+
tmp
|
18
18
|
.DS_Store
|
data/README.md
CHANGED
@@ -1,29 +1,29 @@
|
|
1
|
-
eventhub-command
|
2
|
-
================
|
3
|
-
|
4
|
-
Event Hub Command Line Tool includes the following features
|
5
|
-
|
6
|
-
* Packaging Event Hub Processor's
|
7
|
-
* Pushing Channel Adapter and Processor configuration files to servers
|
8
|
-
* Scaffold your Event Hub Processor
|
9
|
-
|
10
|
-
## Installation
|
11
|
-
|
12
|
-
Install gem and make command provided by this gem available
|
13
|
-
|
14
|
-
~~~ sh
|
15
|
-
$ gem i eventhub-command
|
16
|
-
$ rbenv rehash
|
17
|
-
~~~
|
18
|
-
|
19
|
-
First time running the command
|
20
|
-
~~~ sh
|
21
|
-
$ eh
|
22
|
-
Config file missing: ~/.eh, will create it now...
|
23
|
-
Please specify the Eventhub SVN root directory (i.e. the directory which contains the 'src', 'release', ... directories
|
24
|
-
/Users/username/dev/event_hub
|
25
|
-
Config file written to /Users/username/.eh. Please try again.
|
26
|
-
$
|
27
|
-
~~~
|
28
|
-
|
29
|
-
## Usage
|
1
|
+
eventhub-command
|
2
|
+
================
|
3
|
+
|
4
|
+
Event Hub Command Line Tool includes the following features
|
5
|
+
|
6
|
+
* Packaging Event Hub Processor's
|
7
|
+
* Pushing Channel Adapter and Processor configuration files to servers
|
8
|
+
* Scaffold your Event Hub Processor
|
9
|
+
|
10
|
+
## Installation
|
11
|
+
|
12
|
+
Install gem and make command provided by this gem available
|
13
|
+
|
14
|
+
~~~ sh
|
15
|
+
$ gem i eventhub-command
|
16
|
+
$ rbenv rehash
|
17
|
+
~~~
|
18
|
+
|
19
|
+
First time running the command
|
20
|
+
~~~ sh
|
21
|
+
$ eh
|
22
|
+
Config file missing: ~/.eh, will create it now...
|
23
|
+
Please specify the Eventhub SVN root directory (i.e. the directory which contains the 'src', 'release', ... directories
|
24
|
+
/Users/username/dev/event_hub
|
25
|
+
Config file written to /Users/username/.eh. Please try again.
|
26
|
+
$
|
27
|
+
~~~
|
28
|
+
|
29
|
+
## Usage
|
data/eh.gemspec
CHANGED
@@ -1,27 +1,27 @@
|
|
1
|
-
# Ensure we require the local version and not one we might have installed already
|
2
|
-
require File.join([File.dirname(__FILE__),'lib','eh','version.rb'])
|
3
|
-
spec = Gem::Specification.new do |s|
|
4
|
-
s.name = 'eventhub-command'
|
5
|
-
s.version = Eh::VERSION
|
6
|
-
s.author = ['Pascal Betz','Thomas Steiner']
|
7
|
-
s.email = ['pascal.betz@simplificator.com','thomas.steiner@ikey.ch']
|
8
|
-
s.homepage = 'http://github.com/thomis/eventhub-command'
|
9
|
-
s.platform = Gem::Platform::RUBY
|
10
|
-
s.description = 'Event Hub Command Line Tool which supports you with various Event Hub related administrative development features.'
|
11
|
-
s.summary = 'Event Hub Command Line Tool'
|
12
|
-
s.license = "MIT"
|
13
|
-
s.files = `git ls-files`.split("
|
14
|
-
")
|
15
|
-
s.require_paths << 'lib'
|
16
|
-
s.has_rdoc = true
|
17
|
-
s.extra_rdoc_files = ['README.md','eh.rdoc']
|
18
|
-
s.rdoc_options << '--title' << 'eh' << '--main' << 'README.rdoc' << '-ri'
|
19
|
-
s.bindir = 'bin'
|
20
|
-
s.executables << 'eh'
|
21
|
-
s.add_development_dependency('rake', '~> 10.1')
|
22
|
-
s.add_development_dependency('rdoc', '~> 4.1')
|
23
|
-
s.add_development_dependency('aruba', '~> 0.5')
|
24
|
-
s.add_runtime_dependency('gli','2.12.0')
|
25
|
-
s.add_runtime_dependency('rubyzip', '~> 1.0')
|
26
|
-
s.add_runtime_dependency('activesupport', '~> 4.1')
|
27
|
-
end
|
1
|
+
# Ensure we require the local version and not one we might have installed already
|
2
|
+
require File.join([File.dirname(__FILE__),'lib','eh','version.rb'])
|
3
|
+
spec = Gem::Specification.new do |s|
|
4
|
+
s.name = 'eventhub-command'
|
5
|
+
s.version = Eh::VERSION
|
6
|
+
s.author = ['Pascal Betz','Thomas Steiner']
|
7
|
+
s.email = ['pascal.betz@simplificator.com','thomas.steiner@ikey.ch']
|
8
|
+
s.homepage = 'http://github.com/thomis/eventhub-command'
|
9
|
+
s.platform = Gem::Platform::RUBY
|
10
|
+
s.description = 'Event Hub Command Line Tool which supports you with various Event Hub related administrative development features.'
|
11
|
+
s.summary = 'Event Hub Command Line Tool'
|
12
|
+
s.license = "MIT"
|
13
|
+
s.files = `git ls-files`.split("
|
14
|
+
")
|
15
|
+
s.require_paths << 'lib'
|
16
|
+
s.has_rdoc = true
|
17
|
+
s.extra_rdoc_files = ['README.md','eh.rdoc']
|
18
|
+
s.rdoc_options << '--title' << 'eh' << '--main' << 'README.rdoc' << '-ri'
|
19
|
+
s.bindir = 'bin'
|
20
|
+
s.executables << 'eh'
|
21
|
+
s.add_development_dependency('rake', '~> 10.1')
|
22
|
+
s.add_development_dependency('rdoc', '~> 4.1')
|
23
|
+
s.add_development_dependency('aruba', '~> 0.5')
|
24
|
+
s.add_runtime_dependency('gli','2.12.0')
|
25
|
+
s.add_runtime_dependency('rubyzip', '~> 1.0')
|
26
|
+
s.add_runtime_dependency('activesupport', '~> 4.1')
|
27
|
+
end
|
@@ -1,51 +1,51 @@
|
|
1
|
-
desc 'Copies the config directory of a given processor to remote'
|
2
|
-
command :copy_config do |c|
|
3
|
-
c.flag([:s, :source], :desc => "Source config directory", :default_value => Eh::Settings.current.source_config_dir, :long_desc => "A local directory containing subfolders for each of the processors")
|
4
|
-
c.flag([:p, :processors], :desc => "Specify what processors' configs to copy", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
5
|
-
|
6
|
-
c.action do |global_options, options, args|
|
7
|
-
source_config_dir = options['s']
|
8
|
-
repository_deployment_dir = File.join(Eh::Settings.current.repository_root_dir, "branches", "master", "src", "deployment")
|
9
|
-
|
10
|
-
processor_names = Dir["#{source_config_dir}/*"].map do |dir|
|
11
|
-
File.basename(dir)
|
12
|
-
end
|
13
|
-
|
14
|
-
included_processor_names = processor_names
|
15
|
-
|
16
|
-
# only include processors specified by -p option, if option is given
|
17
|
-
if options['p']
|
18
|
-
included_processor_names = included_processor_names.select do |processor_name|
|
19
|
-
options['p'].include?(processor_name)
|
20
|
-
end
|
21
|
-
end
|
22
|
-
|
23
|
-
# make sure we have at least one processor
|
24
|
-
if included_processor_names.empty?
|
25
|
-
raise "There are no processor configs to copy. Either there is nothing in #{source_config_dir} or the processor(s) specified with -p don't exist."
|
26
|
-
end
|
27
|
-
|
28
|
-
included_processor_names.each do |processor_name|
|
29
|
-
processor_config_source_dir = File.join(source_config_dir, processor_name)
|
30
|
-
|
31
|
-
cmd = "cd #{repository_deployment_dir} && COPY_FROM_DIR=#{processor_config_source_dir} bundle exec cap event_hub:scp_copy_config"
|
32
|
-
|
33
|
-
puts "Will copy config files from #{processor_config_source_dir} to remote."
|
34
|
-
puts "WARNING: This will overwrite any existing files with the same name!"
|
35
|
-
puts "Do you really want to do this?"
|
36
|
-
input = STDIN.gets.chomp
|
37
|
-
|
38
|
-
unless ['y', 'Y'].include?(input)
|
39
|
-
raise "Not confirmed. Stop."
|
40
|
-
end
|
41
|
-
|
42
|
-
puts "Command: #{cmd}" if global_options['v']
|
43
|
-
|
44
|
-
Bundler.with_clean_env do
|
45
|
-
system cmd
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
puts "Done."
|
50
|
-
end
|
51
|
-
end
|
1
|
+
desc 'Copies the config directory of a given processor to remote'
|
2
|
+
command :copy_config do |c|
|
3
|
+
c.flag([:s, :source], :desc => "Source config directory", :default_value => Eh::Settings.current.source_config_dir, :long_desc => "A local directory containing subfolders for each of the processors")
|
4
|
+
c.flag([:p, :processors], :desc => "Specify what processors' configs to copy", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
5
|
+
|
6
|
+
c.action do |global_options, options, args|
|
7
|
+
source_config_dir = options['s']
|
8
|
+
repository_deployment_dir = File.join(Eh::Settings.current.repository_root_dir, "branches", "master", "src", "deployment")
|
9
|
+
|
10
|
+
processor_names = Dir["#{source_config_dir}/*"].map do |dir|
|
11
|
+
File.basename(dir)
|
12
|
+
end
|
13
|
+
|
14
|
+
included_processor_names = processor_names
|
15
|
+
|
16
|
+
# only include processors specified by -p option, if option is given
|
17
|
+
if options['p']
|
18
|
+
included_processor_names = included_processor_names.select do |processor_name|
|
19
|
+
options['p'].include?(processor_name)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
# make sure we have at least one processor
|
24
|
+
if included_processor_names.empty?
|
25
|
+
raise "There are no processor configs to copy. Either there is nothing in #{source_config_dir} or the processor(s) specified with -p don't exist."
|
26
|
+
end
|
27
|
+
|
28
|
+
included_processor_names.each do |processor_name|
|
29
|
+
processor_config_source_dir = File.join(source_config_dir, processor_name)
|
30
|
+
|
31
|
+
cmd = "cd #{repository_deployment_dir} && COPY_FROM_DIR=#{processor_config_source_dir} bundle exec cap event_hub:scp_copy_config"
|
32
|
+
|
33
|
+
puts "Will copy config files from #{processor_config_source_dir} to remote."
|
34
|
+
puts "WARNING: This will overwrite any existing files with the same name!"
|
35
|
+
puts "Do you really want to do this?"
|
36
|
+
input = STDIN.gets.chomp
|
37
|
+
|
38
|
+
unless ['y', 'Y'].include?(input)
|
39
|
+
raise "Not confirmed. Stop."
|
40
|
+
end
|
41
|
+
|
42
|
+
puts "Command: #{cmd}" if global_options['v']
|
43
|
+
|
44
|
+
Bundler.with_clean_env do
|
45
|
+
system cmd
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
puts "Done."
|
50
|
+
end
|
51
|
+
end
|
data/lib/eh/commands/deploy.rb
CHANGED
@@ -1,38 +1,38 @@
|
|
1
|
-
desc 'Deploys the app'
|
2
|
-
arg_name 'stage', optional: true
|
3
|
-
command :deploy do |c|
|
4
|
-
|
5
|
-
c.flag([:deploy_via], :desc => "One of 'copy' or 'scm'", :default_value => 'scm')
|
6
|
-
c.flag([:copy_from_dir], :desc => "Source directory for copy operation", :default_value => Eh::Settings.current.releases_dir)
|
7
|
-
c.flag([:tag], :desc => "The tag to deploy")
|
8
|
-
c.flag([:branch], :desc => "The branch to deploy", :default_value => "master")
|
9
|
-
|
10
|
-
c.action do |global_options, options, args|
|
11
|
-
stage = args[0] || "development"
|
12
|
-
|
13
|
-
deployment_dir = Eh::Settings.current.deployment_dir
|
14
|
-
|
15
|
-
env_variables = []
|
16
|
-
env_variables << "DEPLOY_VIA=#{options[:deploy_via]}"
|
17
|
-
|
18
|
-
if options[:tag]
|
19
|
-
env_variables << "TAG=#{options[:tag]}"
|
20
|
-
else
|
21
|
-
env_variables << "BRANCH=#{options[:branch]}"
|
22
|
-
end
|
23
|
-
|
24
|
-
if options[:deploy_via] == "copy"
|
25
|
-
env_variables << "COPY_FROM_DIR=#{options[:copy_from_dir]}"
|
26
|
-
end
|
27
|
-
|
28
|
-
cmd = "cd #{deployment_dir} && #{env_variables.join(' ')} bundle exec cap #{stage} event_hub"
|
29
|
-
|
30
|
-
puts "Command: #{cmd}" if global_options['v']
|
31
|
-
|
32
|
-
Bundler.with_clean_env do
|
33
|
-
system cmd
|
34
|
-
end
|
35
|
-
|
36
|
-
puts "Done."
|
37
|
-
end
|
38
|
-
end
|
1
|
+
desc 'Deploys the app'
|
2
|
+
arg_name 'stage', optional: true
|
3
|
+
command :deploy do |c|
|
4
|
+
|
5
|
+
c.flag([:deploy_via], :desc => "One of 'copy' or 'scm'", :default_value => 'scm')
|
6
|
+
c.flag([:copy_from_dir], :desc => "Source directory for copy operation", :default_value => Eh::Settings.current.releases_dir)
|
7
|
+
c.flag([:tag], :desc => "The tag to deploy")
|
8
|
+
c.flag([:branch], :desc => "The branch to deploy", :default_value => "master")
|
9
|
+
|
10
|
+
c.action do |global_options, options, args|
|
11
|
+
stage = args[0] || "development"
|
12
|
+
|
13
|
+
deployment_dir = Eh::Settings.current.deployment_dir
|
14
|
+
|
15
|
+
env_variables = []
|
16
|
+
env_variables << "DEPLOY_VIA=#{options[:deploy_via]}"
|
17
|
+
|
18
|
+
if options[:tag]
|
19
|
+
env_variables << "TAG=#{options[:tag]}"
|
20
|
+
else
|
21
|
+
env_variables << "BRANCH=#{options[:branch]}"
|
22
|
+
end
|
23
|
+
|
24
|
+
if options[:deploy_via] == "copy"
|
25
|
+
env_variables << "COPY_FROM_DIR=#{options[:copy_from_dir]}"
|
26
|
+
end
|
27
|
+
|
28
|
+
cmd = "cd #{deployment_dir} && #{env_variables.join(' ')} bundle exec cap #{stage} event_hub"
|
29
|
+
|
30
|
+
puts "Command: #{cmd}" if global_options['v']
|
31
|
+
|
32
|
+
Bundler.with_clean_env do
|
33
|
+
system cmd
|
34
|
+
end
|
35
|
+
|
36
|
+
puts "Done."
|
37
|
+
end
|
38
|
+
end
|
@@ -1,90 +1,90 @@
|
|
1
|
-
desc 'Generates a template for a processor'
|
2
|
-
arg_name 'module_name processor_name'
|
3
|
-
|
4
|
-
command :generate_processor do |c|
|
5
|
-
c.action do |global_options, options, args|
|
6
|
-
require 'active_support/core_ext/string/inflections'
|
7
|
-
require 'fileutils'
|
8
|
-
require 'erb'
|
9
|
-
|
10
|
-
if args.size != 2
|
11
|
-
puts "Needs exactly 2 arguments: eh generate_processor ModuleName ProcessorName"
|
12
|
-
exit -1
|
13
|
-
end
|
14
|
-
|
15
|
-
processor_module_name = args[0].camelcase
|
16
|
-
processor_class_name = args[1].camelcase
|
17
|
-
underscored_processor_module_name = processor_module_name.underscore
|
18
|
-
underscored_processor_class_name = processor_class_name.underscore
|
19
|
-
|
20
|
-
destination_dir = Eh::Settings.current.processes_src_dir
|
21
|
-
destination_dir = File.join(destination_dir, "#{underscored_processor_module_name}.#{underscored_processor_class_name}")
|
22
|
-
|
23
|
-
if Dir.exists? destination_dir
|
24
|
-
puts "#{destination_dir} already exists!"
|
25
|
-
exit -1
|
26
|
-
end
|
27
|
-
|
28
|
-
template_tmp_dir = Eh::Settings.current.template_tmp_dir
|
29
|
-
checkout_git_repo(template_tmp_dir)
|
30
|
-
|
31
|
-
FileUtils.cp_r template_tmp_dir, destination_dir
|
32
|
-
FileUtils.rm_rf File.join(destination_dir, ".git")
|
33
|
-
FileUtils.rm File.join(destination_dir, 'README.md')
|
34
|
-
|
35
|
-
puts "Generating processor #{processor_module_name}::#{processor_class_name} in #{destination_dir}"
|
36
|
-
Dir.glob(destination_dir + "/**/*.erb") do |file|
|
37
|
-
template = ERB.new(File.read(file))
|
38
|
-
|
39
|
-
File.open(file, "w") do |writeable_file|
|
40
|
-
writeable_file.puts template.result(binding)
|
41
|
-
end
|
42
|
-
|
43
|
-
FileUtils.mv file, File.join(File.dirname(file), File.basename(file, ".erb"))
|
44
|
-
end
|
45
|
-
|
46
|
-
replacements = [
|
47
|
-
["underscored_processor_module_name", underscored_processor_module_name],
|
48
|
-
["underscored_processor_class_name", underscored_processor_class_name],
|
49
|
-
["processor_module_name", processor_module_name],
|
50
|
-
["processor_class_name", processor_class_name]
|
51
|
-
]
|
52
|
-
|
53
|
-
rename_files_with_replacements(destination_dir, replacements)
|
54
|
-
|
55
|
-
FileUtils.rm_rf template_tmp_dir
|
56
|
-
|
57
|
-
puts "Done."
|
58
|
-
end
|
59
|
-
end
|
60
|
-
|
61
|
-
def shallow_clone_git_repository(source_url, destination_dir)
|
62
|
-
system("git clone --depth 1 #{source_url} #{destination_dir}")
|
63
|
-
end
|
64
|
-
|
65
|
-
def rename_files_with_replacements(destination_dir, replacements)
|
66
|
-
Dir.glob(destination_dir + "/**/*") do |src_file_path|
|
67
|
-
if File.file? src_file_path
|
68
|
-
dir = File.dirname src_file_path
|
69
|
-
file_with_replacements = File.basename src_file_path
|
70
|
-
|
71
|
-
replacements.each do |find_string, replace_string|
|
72
|
-
file_with_replacements.sub!(find_string, replace_string)
|
73
|
-
end
|
74
|
-
|
75
|
-
dest_file_path = File.join(dir, file_with_replacements)
|
76
|
-
|
77
|
-
if src_file_path != dest_file_path
|
78
|
-
FileUtils.mv src_file_path, dest_file_path
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|
82
|
-
end
|
83
|
-
|
84
|
-
def checkout_git_repo(destination_dir)
|
85
|
-
template_repository_url = Eh::Settings.current.processor_template_repository_url
|
86
|
-
puts "Checking out latest template from #{template_repository_url}"
|
87
|
-
FileUtils.rm_rf(destination_dir)
|
88
|
-
FileUtils.mkdir(destination_dir)
|
89
|
-
shallow_clone_git_repository(template_repository_url, destination_dir)
|
1
|
+
desc 'Generates a template for a processor'
|
2
|
+
arg_name 'module_name processor_name'
|
3
|
+
|
4
|
+
command :generate_processor do |c|
|
5
|
+
c.action do |global_options, options, args|
|
6
|
+
require 'active_support/core_ext/string/inflections'
|
7
|
+
require 'fileutils'
|
8
|
+
require 'erb'
|
9
|
+
|
10
|
+
if args.size != 2
|
11
|
+
puts "Needs exactly 2 arguments: eh generate_processor ModuleName ProcessorName"
|
12
|
+
exit -1
|
13
|
+
end
|
14
|
+
|
15
|
+
processor_module_name = args[0].camelcase
|
16
|
+
processor_class_name = args[1].camelcase
|
17
|
+
underscored_processor_module_name = processor_module_name.underscore
|
18
|
+
underscored_processor_class_name = processor_class_name.underscore
|
19
|
+
|
20
|
+
destination_dir = Eh::Settings.current.processes_src_dir
|
21
|
+
destination_dir = File.join(destination_dir, "#{underscored_processor_module_name}.#{underscored_processor_class_name}")
|
22
|
+
|
23
|
+
if Dir.exists? destination_dir
|
24
|
+
puts "#{destination_dir} already exists!"
|
25
|
+
exit -1
|
26
|
+
end
|
27
|
+
|
28
|
+
template_tmp_dir = Eh::Settings.current.template_tmp_dir
|
29
|
+
checkout_git_repo(template_tmp_dir)
|
30
|
+
|
31
|
+
FileUtils.cp_r template_tmp_dir, destination_dir
|
32
|
+
FileUtils.rm_rf File.join(destination_dir, ".git")
|
33
|
+
FileUtils.rm File.join(destination_dir, 'README.md')
|
34
|
+
|
35
|
+
puts "Generating processor #{processor_module_name}::#{processor_class_name} in #{destination_dir}"
|
36
|
+
Dir.glob(destination_dir + "/**/*.erb") do |file|
|
37
|
+
template = ERB.new(File.read(file))
|
38
|
+
|
39
|
+
File.open(file, "w") do |writeable_file|
|
40
|
+
writeable_file.puts template.result(binding)
|
41
|
+
end
|
42
|
+
|
43
|
+
FileUtils.mv file, File.join(File.dirname(file), File.basename(file, ".erb"))
|
44
|
+
end
|
45
|
+
|
46
|
+
replacements = [
|
47
|
+
["underscored_processor_module_name", underscored_processor_module_name],
|
48
|
+
["underscored_processor_class_name", underscored_processor_class_name],
|
49
|
+
["processor_module_name", processor_module_name],
|
50
|
+
["processor_class_name", processor_class_name]
|
51
|
+
]
|
52
|
+
|
53
|
+
rename_files_with_replacements(destination_dir, replacements)
|
54
|
+
|
55
|
+
FileUtils.rm_rf template_tmp_dir
|
56
|
+
|
57
|
+
puts "Done."
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
def shallow_clone_git_repository(source_url, destination_dir)
|
62
|
+
system("git clone --depth 1 #{source_url} #{destination_dir}")
|
63
|
+
end
|
64
|
+
|
65
|
+
def rename_files_with_replacements(destination_dir, replacements)
|
66
|
+
Dir.glob(destination_dir + "/**/*") do |src_file_path|
|
67
|
+
if File.file? src_file_path
|
68
|
+
dir = File.dirname src_file_path
|
69
|
+
file_with_replacements = File.basename src_file_path
|
70
|
+
|
71
|
+
replacements.each do |find_string, replace_string|
|
72
|
+
file_with_replacements.sub!(find_string, replace_string)
|
73
|
+
end
|
74
|
+
|
75
|
+
dest_file_path = File.join(dir, file_with_replacements)
|
76
|
+
|
77
|
+
if src_file_path != dest_file_path
|
78
|
+
FileUtils.mv src_file_path, dest_file_path
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
def checkout_git_repo(destination_dir)
|
85
|
+
template_repository_url = Eh::Settings.current.processor_template_repository_url
|
86
|
+
puts "Checking out latest template from #{template_repository_url}"
|
87
|
+
FileUtils.rm_rf(destination_dir)
|
88
|
+
FileUtils.mkdir(destination_dir)
|
89
|
+
shallow_clone_git_repository(template_repository_url, destination_dir)
|
90
90
|
end
|
data/lib/eh/commands/package.rb
CHANGED
@@ -1,97 +1,97 @@
|
|
1
|
-
desc 'Packages processors to zip files'
|
2
|
-
command :package do |c|
|
3
|
-
c.flag([:x, :exclude], :desc => "Exclude processors by name.", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
4
|
-
c.flag([:p, :processors], :desc => "Specify what processors to package", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
5
|
-
c.flag([:d, :destination], :desc => "Destination directory to place created zip files.", :default_value => Eh::Settings.current.ruby_release_dir)
|
6
|
-
c.flag([:s, :source], :desc => "Source directory to read processors from.", :default_value => Eh::Settings.current.processes_src_dir)
|
7
|
-
|
8
|
-
c.action do |global_options, options, args|
|
9
|
-
source_dir = options['s']
|
10
|
-
destination_dir = options['d']
|
11
|
-
|
12
|
-
puts "Will package processors from #{source_dir} to #{destination_dir}"
|
13
|
-
# find all processors in the base directory
|
14
|
-
processor_names = Dir["#{source_dir}/*"].map do |dir|
|
15
|
-
File.basename(dir)
|
16
|
-
end
|
17
|
-
|
18
|
-
# Drop files, only use directories
|
19
|
-
processor_names.delete_if do |item|
|
20
|
-
!File.directory?("#{source_dir}/#{item}")
|
21
|
-
end
|
22
|
-
|
23
|
-
included_processor_names = processor_names
|
24
|
-
|
25
|
-
# only include processors specified by -p option, if option is given
|
26
|
-
if options['p']
|
27
|
-
included_processor_names = included_processor_names.select do |processor_name|
|
28
|
-
options['p'].include?(processor_name)
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
# exclude processors specified by -x option, if option is given
|
33
|
-
if options['x']
|
34
|
-
# check if any processor has been excluded from packaging
|
35
|
-
included_processor_names = included_processor_names.select do |processor_name|
|
36
|
-
!options['x'].include?(processor_name)
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
# make sure we have at least one processor
|
41
|
-
if included_processor_names.empty?
|
42
|
-
raise "There are no processor names. Either your -s directory is empty or you specified a strange combination of -x and -p"
|
43
|
-
end
|
44
|
-
|
45
|
-
|
46
|
-
# make sure destination directory exists
|
47
|
-
FileUtils.mkdir_p(destination_dir)
|
48
|
-
|
49
|
-
# Zip all processors
|
50
|
-
included_processor_names.each do |processor_name|
|
51
|
-
|
52
|
-
directory = File.join(source_dir, processor_name) # last slash could be omitted
|
53
|
-
zipfile_name = File.join(destination_dir, "#{processor_name}.zip")
|
54
|
-
|
55
|
-
# remove zip before we create a new one
|
56
|
-
FileUtils.rm zipfile_name, :force => true
|
57
|
-
|
58
|
-
options = {"directories-recursively" => true}
|
59
|
-
|
60
|
-
Zip::File.open(zipfile_name,Zip::File::CREATE) do |zipfile|
|
61
|
-
|
62
|
-
#zipfile.add(processor_name, directory)
|
63
|
-
[directory].each{ |file_to_be_zipped|
|
64
|
-
|
65
|
-
if File.directory?(file_to_be_zipped)
|
66
|
-
# should skip directories
|
67
|
-
next if options["directories-skip"]
|
68
|
-
|
69
|
-
# should recursively add directory
|
70
|
-
if options["directories-recursively"]
|
71
|
-
directory = file_to_be_zipped
|
72
|
-
puts "zipper: archiving directory: #{directory}"
|
73
|
-
directory_chosen_pathname = options["directories-recursively-splat"] ? directory : File.dirname(directory)
|
74
|
-
directory_pathname = Pathname.new(directory_chosen_pathname)
|
75
|
-
files = Dir[File.join(directory, '**', '**')]
|
76
|
-
files.delete_if {|filename| ["log", "logs", "exceptions", "pids", "tmp"].include?(filename) }
|
77
|
-
files.each do |file|
|
78
|
-
file_pathname = Pathname.new(file)
|
79
|
-
file_relative_pathname = file_pathname.relative_path_from(directory_pathname)
|
80
|
-
zipfile.add(file_relative_pathname,file)
|
81
|
-
end
|
82
|
-
next
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
filename = File.basename(file_to_be_zipped)
|
87
|
-
|
88
|
-
puts "zipper: archiving #{file_to_be_zipped} as #{filename} into #{zipfile}"
|
89
|
-
|
90
|
-
zipfile.add(filename,file_to_be_zipped)
|
91
|
-
}
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
puts "Done packaging #{included_processor_names.size} processors"
|
96
|
-
end
|
97
|
-
end
|
1
|
+
desc 'Packages processors to zip files'
|
2
|
+
command :package do |c|
|
3
|
+
c.flag([:x, :exclude], :desc => "Exclude processors by name.", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
4
|
+
c.flag([:p, :processors], :desc => "Specify what processors to package", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
5
|
+
c.flag([:d, :destination], :desc => "Destination directory to place created zip files.", :default_value => Eh::Settings.current.ruby_release_dir)
|
6
|
+
c.flag([:s, :source], :desc => "Source directory to read processors from.", :default_value => Eh::Settings.current.processes_src_dir)
|
7
|
+
|
8
|
+
c.action do |global_options, options, args|
|
9
|
+
source_dir = options['s']
|
10
|
+
destination_dir = options['d']
|
11
|
+
|
12
|
+
puts "Will package processors from #{source_dir} to #{destination_dir}"
|
13
|
+
# find all processors in the base directory
|
14
|
+
processor_names = Dir["#{source_dir}/*"].map do |dir|
|
15
|
+
File.basename(dir)
|
16
|
+
end
|
17
|
+
|
18
|
+
# Drop files, only use directories
|
19
|
+
processor_names.delete_if do |item|
|
20
|
+
!File.directory?("#{source_dir}/#{item}")
|
21
|
+
end
|
22
|
+
|
23
|
+
included_processor_names = processor_names
|
24
|
+
|
25
|
+
# only include processors specified by -p option, if option is given
|
26
|
+
if options['p']
|
27
|
+
included_processor_names = included_processor_names.select do |processor_name|
|
28
|
+
options['p'].include?(processor_name)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
# exclude processors specified by -x option, if option is given
|
33
|
+
if options['x']
|
34
|
+
# check if any processor has been excluded from packaging
|
35
|
+
included_processor_names = included_processor_names.select do |processor_name|
|
36
|
+
!options['x'].include?(processor_name)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
# make sure we have at least one processor
|
41
|
+
if included_processor_names.empty?
|
42
|
+
raise "There are no processor names. Either your -s directory is empty or you specified a strange combination of -x and -p"
|
43
|
+
end
|
44
|
+
|
45
|
+
|
46
|
+
# make sure destination directory exists
|
47
|
+
FileUtils.mkdir_p(destination_dir)
|
48
|
+
|
49
|
+
# Zip all processors
|
50
|
+
included_processor_names.each do |processor_name|
|
51
|
+
|
52
|
+
directory = File.join(source_dir, processor_name) # last slash could be omitted
|
53
|
+
zipfile_name = File.join(destination_dir, "#{processor_name}.zip")
|
54
|
+
|
55
|
+
# remove zip before we create a new one
|
56
|
+
FileUtils.rm zipfile_name, :force => true
|
57
|
+
|
58
|
+
options = {"directories-recursively" => true}
|
59
|
+
|
60
|
+
Zip::File.open(zipfile_name,Zip::File::CREATE) do |zipfile|
|
61
|
+
|
62
|
+
#zipfile.add(processor_name, directory)
|
63
|
+
[directory].each{ |file_to_be_zipped|
|
64
|
+
|
65
|
+
if File.directory?(file_to_be_zipped)
|
66
|
+
# should skip directories
|
67
|
+
next if options["directories-skip"]
|
68
|
+
|
69
|
+
# should recursively add directory
|
70
|
+
if options["directories-recursively"]
|
71
|
+
directory = file_to_be_zipped
|
72
|
+
puts "zipper: archiving directory: #{directory}"
|
73
|
+
directory_chosen_pathname = options["directories-recursively-splat"] ? directory : File.dirname(directory)
|
74
|
+
directory_pathname = Pathname.new(directory_chosen_pathname)
|
75
|
+
files = Dir[File.join(directory, '**', '**')]
|
76
|
+
files.delete_if {|filename| ["log", "logs", "exceptions", "pids", "tmp"].include?(filename) }
|
77
|
+
files.each do |file|
|
78
|
+
file_pathname = Pathname.new(file)
|
79
|
+
file_relative_pathname = file_pathname.relative_path_from(directory_pathname)
|
80
|
+
zipfile.add(file_relative_pathname,file)
|
81
|
+
end
|
82
|
+
next
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
filename = File.basename(file_to_be_zipped)
|
87
|
+
|
88
|
+
puts "zipper: archiving #{file_to_be_zipped} as #{filename} into #{zipfile}"
|
89
|
+
|
90
|
+
zipfile.add(filename,file_to_be_zipped)
|
91
|
+
}
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
puts "Done packaging #{included_processor_names.size} processors"
|
96
|
+
end
|
97
|
+
end
|
@@ -1,97 +1,97 @@
|
|
1
|
-
desc 'Packages Rails Console to zip file'
|
2
|
-
command :package_rails do |c|
|
3
|
-
#c.flag([:x, :exclude], :desc => "Exclude processors by name.", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
4
|
-
#c.flag([:p, :processors], :desc => "Specify what processors to package", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
5
|
-
c.flag([:d, :destination], :desc => "Destination directory to place created zip file.", :default_value => Eh::Settings.current.rails_release_dir)
|
6
|
-
c.flag([:s, :source], :desc => "Source directory to read rails console from.", :default_value => Eh::Settings.current.rails_src_dir)
|
7
|
-
|
8
|
-
c.action do |global_options, options, args|
|
9
|
-
source_dir = options['s']
|
10
|
-
destination_dir = options['d']
|
11
|
-
|
12
|
-
puts "Will package rails console from #{source_dir} to #{destination_dir}"
|
13
|
-
|
14
|
-
console = Dir["#{source_dir}"]
|
15
|
-
|
16
|
-
FileUtils.mkdir_p(destination_dir)
|
17
|
-
|
18
|
-
options = {"directories-recursively"=>true}
|
19
|
-
|
20
|
-
zipfile_name = File.join(destination_dir, "console.zip")
|
21
|
-
directory = source_dir
|
22
|
-
|
23
|
-
# remove zip before we create a new one
|
24
|
-
FileUtils.rm zipfile_name, :force => true
|
25
|
-
|
26
|
-
Zip::File.open(zipfile_name,Zip::File::CREATE) do |zipfile|
|
27
|
-
|
28
|
-
#zipfile.add(processor_name, directory)
|
29
|
-
[directory].each{ |file_to_be_zipped|
|
30
|
-
if File.directory?(file_to_be_zipped)
|
31
|
-
# should skip directories
|
32
|
-
next if options["directories-skip"]
|
33
|
-
# should recursively add directory
|
34
|
-
if options["directories-recursively"]
|
35
|
-
directory = file_to_be_zipped
|
36
|
-
puts "zipper: archiving directory: #{directory}"
|
37
|
-
directory_chosen_pathname = options["directories-recursively-splat"] ? directory : File.dirname(directory)
|
38
|
-
directory_pathname = Pathname.new(directory_chosen_pathname)
|
39
|
-
files = Dir[File.join(directory, '**', '**')]
|
40
|
-
files.delete_if {|filename| ["#{source_dir}/log", "#{source_dir}/logs", "#{source_dir}/exceptions", "#{source_dir}/tmp/pids"].include?(filename) }
|
41
|
-
files.each do |file|
|
42
|
-
file_pathname = Pathname.new(file)
|
43
|
-
file_relative_pathname = file_pathname.relative_path_from(directory_pathname)
|
44
|
-
zipfile.add(file_relative_pathname,file)
|
45
|
-
end
|
46
|
-
next
|
47
|
-
end
|
48
|
-
end
|
49
|
-
filename = File.basename(file_to_be_zipped)
|
50
|
-
|
51
|
-
puts "zipper: archiving #{file_to_be_zipped} as #{filename} into #{zipfile}"
|
52
|
-
|
53
|
-
zipfile.add(filename,file_to_be_zipped)
|
54
|
-
}
|
55
|
-
end
|
56
|
-
|
57
|
-
# find all processors in the base directory
|
58
|
-
#console = Dir["#{source_dir}/*"].map do |dir|
|
59
|
-
# File.basename(dir)
|
60
|
-
#end
|
61
|
-
|
62
|
-
#included_processor_names = processor_names
|
63
|
-
|
64
|
-
# only include processors specified by -p option, if option is given
|
65
|
-
#if options['p']
|
66
|
-
# included_processor_names = included_processor_names.select do |processor_name|
|
67
|
-
# options['p'].include?(processor_name)
|
68
|
-
# end
|
69
|
-
#end
|
70
|
-
#
|
71
|
-
## exclude processors specified by -x option, if option is given
|
72
|
-
#if options['x']
|
73
|
-
# # check if any processor has been excluded from packaging
|
74
|
-
# included_processor_names = included_processor_names.select do |processor_name|
|
75
|
-
# !options['x'].include?(processor_name)
|
76
|
-
# end
|
77
|
-
#end
|
78
|
-
|
79
|
-
# make sure we have at least one processor
|
80
|
-
#if included_processor_names.empty?
|
81
|
-
# raise "There are no processor names. Either your -s directory is empty or you specified a strange combination of -x and -p"
|
82
|
-
#end
|
83
|
-
|
84
|
-
|
85
|
-
# make sure destination directory exists
|
86
|
-
#FileUtils.mkdir_p(destination_dir)
|
87
|
-
#
|
88
|
-
## Zip all processors
|
89
|
-
#included_processor_names.each do |processor_name|
|
90
|
-
#
|
91
|
-
#directory = File.join(source_dir, processor_name) # last slash could be omitted
|
92
|
-
#zipfile_name = File.join(destination_dir, "#{processor_name}.zip")
|
93
|
-
#
|
94
|
-
|
95
|
-
puts "Done packaging #{console.size} processors"
|
96
|
-
end
|
97
|
-
end
|
1
|
+
desc 'Packages Rails Console to zip file'
|
2
|
+
command :package_rails do |c|
|
3
|
+
#c.flag([:x, :exclude], :desc => "Exclude processors by name.", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
4
|
+
#c.flag([:p, :processors], :desc => "Specify what processors to package", :type => Array, :long_desc => "You can specify multiple processors by providing a comma-separated list.")
|
5
|
+
c.flag([:d, :destination], :desc => "Destination directory to place created zip file.", :default_value => Eh::Settings.current.rails_release_dir)
|
6
|
+
c.flag([:s, :source], :desc => "Source directory to read rails console from.", :default_value => Eh::Settings.current.rails_src_dir)
|
7
|
+
|
8
|
+
c.action do |global_options, options, args|
|
9
|
+
source_dir = options['s']
|
10
|
+
destination_dir = options['d']
|
11
|
+
|
12
|
+
puts "Will package rails console from #{source_dir} to #{destination_dir}"
|
13
|
+
|
14
|
+
console = Dir["#{source_dir}"]
|
15
|
+
|
16
|
+
FileUtils.mkdir_p(destination_dir)
|
17
|
+
|
18
|
+
options = {"directories-recursively"=>true}
|
19
|
+
|
20
|
+
zipfile_name = File.join(destination_dir, "console.zip")
|
21
|
+
directory = source_dir
|
22
|
+
|
23
|
+
# remove zip before we create a new one
|
24
|
+
FileUtils.rm zipfile_name, :force => true
|
25
|
+
|
26
|
+
Zip::File.open(zipfile_name,Zip::File::CREATE) do |zipfile|
|
27
|
+
|
28
|
+
#zipfile.add(processor_name, directory)
|
29
|
+
[directory].each{ |file_to_be_zipped|
|
30
|
+
if File.directory?(file_to_be_zipped)
|
31
|
+
# should skip directories
|
32
|
+
next if options["directories-skip"]
|
33
|
+
# should recursively add directory
|
34
|
+
if options["directories-recursively"]
|
35
|
+
directory = file_to_be_zipped
|
36
|
+
puts "zipper: archiving directory: #{directory}"
|
37
|
+
directory_chosen_pathname = options["directories-recursively-splat"] ? directory : File.dirname(directory)
|
38
|
+
directory_pathname = Pathname.new(directory_chosen_pathname)
|
39
|
+
files = Dir[File.join(directory, '**', '**')]
|
40
|
+
files.delete_if {|filename| ["#{source_dir}/log", "#{source_dir}/logs", "#{source_dir}/exceptions", "#{source_dir}/tmp/pids"].include?(filename) }
|
41
|
+
files.each do |file|
|
42
|
+
file_pathname = Pathname.new(file)
|
43
|
+
file_relative_pathname = file_pathname.relative_path_from(directory_pathname)
|
44
|
+
zipfile.add(file_relative_pathname,file)
|
45
|
+
end
|
46
|
+
next
|
47
|
+
end
|
48
|
+
end
|
49
|
+
filename = File.basename(file_to_be_zipped)
|
50
|
+
|
51
|
+
puts "zipper: archiving #{file_to_be_zipped} as #{filename} into #{zipfile}"
|
52
|
+
|
53
|
+
zipfile.add(filename,file_to_be_zipped)
|
54
|
+
}
|
55
|
+
end
|
56
|
+
|
57
|
+
# find all processors in the base directory
|
58
|
+
#console = Dir["#{source_dir}/*"].map do |dir|
|
59
|
+
# File.basename(dir)
|
60
|
+
#end
|
61
|
+
|
62
|
+
#included_processor_names = processor_names
|
63
|
+
|
64
|
+
# only include processors specified by -p option, if option is given
|
65
|
+
#if options['p']
|
66
|
+
# included_processor_names = included_processor_names.select do |processor_name|
|
67
|
+
# options['p'].include?(processor_name)
|
68
|
+
# end
|
69
|
+
#end
|
70
|
+
#
|
71
|
+
## exclude processors specified by -x option, if option is given
|
72
|
+
#if options['x']
|
73
|
+
# # check if any processor has been excluded from packaging
|
74
|
+
# included_processor_names = included_processor_names.select do |processor_name|
|
75
|
+
# !options['x'].include?(processor_name)
|
76
|
+
# end
|
77
|
+
#end
|
78
|
+
|
79
|
+
# make sure we have at least one processor
|
80
|
+
#if included_processor_names.empty?
|
81
|
+
# raise "There are no processor names. Either your -s directory is empty or you specified a strange combination of -x and -p"
|
82
|
+
#end
|
83
|
+
|
84
|
+
|
85
|
+
# make sure destination directory exists
|
86
|
+
#FileUtils.mkdir_p(destination_dir)
|
87
|
+
#
|
88
|
+
## Zip all processors
|
89
|
+
#included_processor_names.each do |processor_name|
|
90
|
+
#
|
91
|
+
#directory = File.join(source_dir, processor_name) # last slash could be omitted
|
92
|
+
#zipfile_name = File.join(destination_dir, "#{processor_name}.zip")
|
93
|
+
#
|
94
|
+
|
95
|
+
puts "Done packaging #{console.size} processors"
|
96
|
+
end
|
97
|
+
end
|
data/lib/eh/settings.rb
CHANGED
@@ -1,66 +1,66 @@
|
|
1
|
-
class Eh::Settings
|
2
|
-
attr_reader :data
|
3
|
-
def self.load(file)
|
4
|
-
data = File.read(file)
|
5
|
-
json = JSON.parse(data)
|
6
|
-
Eh::Settings.new(json)
|
7
|
-
end
|
8
|
-
|
9
|
-
def self.current=(value)
|
10
|
-
Thread.current[:eh_settings] = value
|
11
|
-
end
|
12
|
-
|
13
|
-
def self.current
|
14
|
-
Thread.current[:eh_settings]
|
15
|
-
end
|
16
|
-
|
17
|
-
def initialize(data)
|
18
|
-
@data = data
|
19
|
-
end
|
20
|
-
|
21
|
-
|
22
|
-
def repository_root_dir
|
23
|
-
File.expand_path(data['repository_root_dir'])
|
24
|
-
end
|
25
|
-
|
26
|
-
def releases_dir
|
27
|
-
File.join(repository_root_dir, 'releases')
|
28
|
-
end
|
29
|
-
|
30
|
-
def rails_release_dir
|
31
|
-
File.join(releases_dir, 'rails')
|
32
|
-
end
|
33
|
-
|
34
|
-
def ruby_release_dir
|
35
|
-
File.join(releases_dir, 'ruby')
|
36
|
-
end
|
37
|
-
|
38
|
-
def processes_src_dir
|
39
|
-
File.join(repository_root_dir, 'src', 'process')
|
40
|
-
end
|
41
|
-
|
42
|
-
def deployment_dir
|
43
|
-
File.join(repository_root_dir, 'src', 'deployment')
|
44
|
-
end
|
45
|
-
|
46
|
-
def rails_src_dir
|
47
|
-
File.join(repository_root_dir, 'src', 'rails', 'console')
|
48
|
-
end
|
49
|
-
|
50
|
-
def source_config_dir
|
51
|
-
File.join(repository_root_dir, 'config')
|
52
|
-
end
|
53
|
-
|
54
|
-
def processor_template_repository_url
|
55
|
-
"
|
56
|
-
end
|
57
|
-
|
58
|
-
def package_tmp_dir
|
59
|
-
'./tmp'
|
60
|
-
end
|
61
|
-
|
62
|
-
def template_tmp_dir
|
63
|
-
"/tmp/eventhub-processor-template/"
|
64
|
-
end
|
65
|
-
|
1
|
+
class Eh::Settings
|
2
|
+
attr_reader :data
|
3
|
+
def self.load(file)
|
4
|
+
data = File.read(file)
|
5
|
+
json = JSON.parse(data)
|
6
|
+
Eh::Settings.new(json)
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.current=(value)
|
10
|
+
Thread.current[:eh_settings] = value
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.current
|
14
|
+
Thread.current[:eh_settings]
|
15
|
+
end
|
16
|
+
|
17
|
+
def initialize(data)
|
18
|
+
@data = data
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
def repository_root_dir
|
23
|
+
File.expand_path(data['repository_root_dir'])
|
24
|
+
end
|
25
|
+
|
26
|
+
def releases_dir
|
27
|
+
File.join(repository_root_dir, 'releases')
|
28
|
+
end
|
29
|
+
|
30
|
+
def rails_release_dir
|
31
|
+
File.join(releases_dir, 'rails')
|
32
|
+
end
|
33
|
+
|
34
|
+
def ruby_release_dir
|
35
|
+
File.join(releases_dir, 'ruby')
|
36
|
+
end
|
37
|
+
|
38
|
+
def processes_src_dir
|
39
|
+
File.join(repository_root_dir, 'src', 'process')
|
40
|
+
end
|
41
|
+
|
42
|
+
def deployment_dir
|
43
|
+
File.join(repository_root_dir, 'src', 'deployment')
|
44
|
+
end
|
45
|
+
|
46
|
+
def rails_src_dir
|
47
|
+
File.join(repository_root_dir, 'src', 'rails', 'console')
|
48
|
+
end
|
49
|
+
|
50
|
+
def source_config_dir
|
51
|
+
File.join(repository_root_dir, 'config')
|
52
|
+
end
|
53
|
+
|
54
|
+
def processor_template_repository_url
|
55
|
+
"https://github.com/thomis/eventhub-processor-template.git"
|
56
|
+
end
|
57
|
+
|
58
|
+
def package_tmp_dir
|
59
|
+
'./tmp'
|
60
|
+
end
|
61
|
+
|
62
|
+
def template_tmp_dir
|
63
|
+
"/tmp/eventhub-processor-template/"
|
64
|
+
end
|
65
|
+
|
66
66
|
end
|
data/lib/eh/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
module Eh
|
2
|
-
VERSION = '0.0.
|
3
|
-
end
|
1
|
+
module Eh
|
2
|
+
VERSION = '0.0.16'
|
3
|
+
end
|
data/lib/eh-commands.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
|
2
|
-
# All commands are required here
|
3
|
-
require 'eh/commands/deploy'
|
4
|
-
require 'eh/commands/copy_config'
|
5
|
-
require 'eh/commands/generate_processor'
|
6
|
-
require 'eh/commands/package_rails'
|
7
|
-
require 'eh/commands/package'
|
1
|
+
|
2
|
+
# All commands are required here
|
3
|
+
require 'eh/commands/deploy'
|
4
|
+
require 'eh/commands/copy_config'
|
5
|
+
require 'eh/commands/generate_processor'
|
6
|
+
require 'eh/commands/package_rails'
|
7
|
+
require 'eh/commands/package'
|
data/lib/eh.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
|
-
module Eh
|
2
|
-
end
|
3
|
-
require 'zip'
|
4
|
-
require 'pathname'
|
5
|
-
|
6
|
-
require 'eh/version'
|
1
|
+
module Eh
|
2
|
+
end
|
3
|
+
require 'zip'
|
4
|
+
require 'pathname'
|
5
|
+
|
6
|
+
require 'eh/version'
|
7
7
|
require 'eh/settings'
|
data/todo.txt
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
-- -------------------------------------
|
2
|
-
-- to do
|
3
|
-
-- -------------------------------------
|
4
|
-
|
5
|
-
- eh relase -r or --repository plate_store or http path -u user -p password
|
6
|
-
- folder filter, default and customize
|
7
|
-
- extension filter, default and custmize
|
8
|
-
- it could take config settings from a local .ehconfig file
|
1
|
+
-- -------------------------------------
|
2
|
+
-- to do
|
3
|
+
-- -------------------------------------
|
4
|
+
|
5
|
+
- eh relase -r or --repository plate_store or http path -u user -p password
|
6
|
+
- folder filter, default and customize
|
7
|
+
- extension filter, default and custmize
|
8
|
+
- it could take config settings from a local .ehconfig file
|
9
9
|
- would be nice to have a release all feature
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eventhub-command
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pascal Betz
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-10-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|