eventhub-command 0.2.1 → 0.2.2

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.
@@ -1,38 +1,38 @@
1
- desc 'Deploys the app'
2
- arg_name 'stage', optional: true
3
-
4
- command :deploy do |c|
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
+
4
+ command :deploy do |c|
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,23 +1,23 @@
1
- desc 'deploy a single channel adapter'
2
- arg_name '[channel_adapter[,other_channel_adapter,pattern*]]'
3
-
4
- command :deploy_mule do |c|
5
- c.flag([:stage], desc: 'stage', type: String, long_desc: 'Stage where channel adapter is deployed to', default_value: 'development')
6
- c.flag([:deploy_via], desc: 'how to get hold of the channel adapter: scm or scp', type: String, long_desc: 'copy the channel adapter zip file via scp from this machine or check it out from scm', default_value: 'scp')
7
-
8
- c.switch([:v, :verbose], :desc => 'Show additional output.')
9
-
10
- c.action do |global_options, options, args|
11
- begin
12
- if args[0]
13
- adapter_names = args[0].split(',').map(&:strip)
14
- else
15
- adapter_names = nil
16
- end
17
- Deployer::MuleDeployer.new(adapter_names, options).deploy!
18
- rescue => e
19
- puts e.message
20
- puts e.backtrace.join("\n")
21
- end
22
- end
23
- end
1
+ desc 'deploy a single channel adapter'
2
+ arg_name '[channel_adapter[,other_channel_adapter,pattern*]]'
3
+
4
+ command :deploy_mule do |c|
5
+ c.flag([:stage], desc: 'stage', type: String, long_desc: 'Stage where channel adapter is deployed to', default_value: 'development')
6
+ c.flag([:deploy_via], desc: 'how to get hold of the channel adapter: scm or scp', type: String, long_desc: 'copy the channel adapter zip file via scp from this machine or check it out from scm', default_value: 'scp')
7
+
8
+ c.switch([:v, :verbose], :desc => 'Show additional output.')
9
+
10
+ c.action do |global_options, options, args|
11
+ begin
12
+ if args[0]
13
+ adapter_names = args[0].split(',').map(&:strip)
14
+ else
15
+ adapter_names = nil
16
+ end
17
+ Deployer::MuleDeployer.new(adapter_names, options).deploy!
18
+ rescue => e
19
+ puts e.message
20
+ puts e.backtrace.join("\n")
21
+ end
22
+ end
23
+ end
@@ -1,25 +1,25 @@
1
- desc 'deploy a single ruby processor'
2
- arg_name '[processor_name,[other_processor_name,pattern*]]'
3
-
4
- command :deploy_ruby do |c|
5
- c.flag([:stage], desc: 'stage', type: String, long_desc: 'Stage where processor is deployed to', default_value: 'development')
6
- c.flag([:deploy_via], desc: 'how to get hold of the processor: scm or scp', type: String, long_desc: 'copy the processor zip file via scp from this machine or check it out from scm', default_value: 'scp')
7
- c.flag([:branch], desc: 'branch', type: String, long_desc: 'What branch to deploy. Only when deploy_via=scm', default_value: 'master')
8
- c.flag([:tag], desc: 'tag', type: String, long_desc: 'What tag to deploy. Only when deploy_via=scm', default_value: nil)
9
-
10
- c.switch([:v, :verbose], :desc => 'Show additional output.')
11
-
12
- c.action do |global_options, options, args|
13
- begin
14
- if args[0]
15
- processor_names = args[0].split(',').map(&:strip)
16
- else
17
- processor_names = nil
18
- end
19
- Deployer::RubyDeployer.new(processor_names, options).deploy!
20
- rescue => e
21
- puts e.message
22
- puts e.backtrace.join("\n")
23
- end
24
- end
25
- end
1
+ desc 'deploy a single ruby processor'
2
+ arg_name '[processor_name,[other_processor_name,pattern*]]'
3
+
4
+ command :deploy_ruby do |c|
5
+ c.flag([:stage], desc: 'stage', type: String, long_desc: 'Stage where processor is deployed to', default_value: 'development')
6
+ c.flag([:deploy_via], desc: 'how to get hold of the processor: scm or scp', type: String, long_desc: 'copy the processor zip file via scp from this machine or check it out from scm', default_value: 'scp')
7
+ c.flag([:branch], desc: 'branch', type: String, long_desc: 'What branch to deploy. Only when deploy_via=scm', default_value: 'master')
8
+ c.flag([:tag], desc: 'tag', type: String, long_desc: 'What tag to deploy. Only when deploy_via=scm', default_value: nil)
9
+
10
+ c.switch([:v, :verbose], :desc => 'Show additional output.')
11
+
12
+ c.action do |global_options, options, args|
13
+ begin
14
+ if args[0]
15
+ processor_names = args[0].split(',').map(&:strip)
16
+ else
17
+ processor_names = nil
18
+ end
19
+ Deployer::RubyDeployer.new(processor_names, options).deploy!
20
+ rescue => e
21
+ puts e.message
22
+ puts e.backtrace.join("\n")
23
+ end
24
+ end
25
+ 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.processors_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
- end
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.processors_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
+ end
@@ -1,104 +1,104 @@
1
- desc 'Packages processors to zip files'
2
- command :package_ruby 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.processors_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
- Eh::Settings.current.deployment_management_files.each do |file|
50
- FileUtils.cp(file, destination_dir)
51
- end
52
-
53
- # Zip all processors
54
- included_processor_names.each do |processor_name|
55
-
56
- directory = File.join(source_dir, processor_name) # last slash could be omitted
57
- zipfile_name = File.join(destination_dir, "#{processor_name}.zip")
58
-
59
- # remove zip before we create a new one
60
- FileUtils.rm zipfile_name, :force => true
61
-
62
- options = {"directories-recursively" => true}
63
-
64
- Zip::File.open(zipfile_name,Zip::File::CREATE) do |zipfile|
65
-
66
- [directory].each{ |file_to_be_zipped|
67
-
68
- if File.directory?(file_to_be_zipped)
69
- # should skip directories
70
- next if options["directories-skip"]
71
-
72
- # should recursively add directory
73
- if options["directories-recursively"]
74
- directory = file_to_be_zipped
75
- puts "zipper: archiving directory: #{directory}"
76
- directory_chosen_pathname = options["directories-recursively-splat"] ? directory : File.dirname(directory)
77
- directory_pathname = Pathname.new(directory_chosen_pathname)
78
- files = Dir[File.join(directory, '**', '**')]
79
-
80
- # pattern to exclude unwanted folders
81
- re = Regexp.new("^#{directory}/(log|logs|exceptions|pids|tmp)")
82
- files.delete_if {|filename| re.match(filename) if File.directory?(filename)}
83
-
84
- files.each do |file|
85
- file_pathname = Pathname.new(file)
86
- file_relative_pathname = file_pathname.relative_path_from(directory_pathname)
87
- zipfile.add(file_relative_pathname,file)
88
- end
89
- next
90
- end
91
- end
92
-
93
- filename = File.basename(file_to_be_zipped)
94
-
95
- puts "zipper: archiving #{file_to_be_zipped} as #{filename} into #{zipfile}"
96
-
97
- zipfile.add(filename,file_to_be_zipped)
98
- }
99
- end
100
- end
101
-
102
- puts "Done packaging #{included_processor_names.size} processors"
103
- end
104
- end
1
+ desc 'Packages processors to zip files'
2
+ command :package_ruby 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.processors_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
+ Eh::Settings.current.deployment_management_files.each do |file|
50
+ FileUtils.cp(file, destination_dir)
51
+ end
52
+
53
+ # Zip all processors
54
+ included_processor_names.each do |processor_name|
55
+
56
+ directory = File.join(source_dir, processor_name) # last slash could be omitted
57
+ zipfile_name = File.join(destination_dir, "#{processor_name}.zip")
58
+
59
+ # remove zip before we create a new one
60
+ FileUtils.rm zipfile_name, :force => true
61
+
62
+ options = {"directories-recursively" => true}
63
+
64
+ Zip::File.open(zipfile_name,Zip::File::CREATE) do |zipfile|
65
+
66
+ [directory].each{ |file_to_be_zipped|
67
+
68
+ if File.directory?(file_to_be_zipped)
69
+ # should skip directories
70
+ next if options["directories-skip"]
71
+
72
+ # should recursively add directory
73
+ if options["directories-recursively"]
74
+ directory = file_to_be_zipped
75
+ puts "zipper: archiving directory: #{directory}"
76
+ directory_chosen_pathname = options["directories-recursively-splat"] ? directory : File.dirname(directory)
77
+ directory_pathname = Pathname.new(directory_chosen_pathname)
78
+ files = Dir[File.join(directory, '**', '**')]
79
+
80
+ # pattern to exclude unwanted folders
81
+ re = Regexp.new("^#{directory}/(log|logs|exceptions|pids|tmp)")
82
+ files.delete_if {|filename| re.match(filename) if File.directory?(filename)}
83
+
84
+ files.each do |file|
85
+ file_pathname = Pathname.new(file)
86
+ file_relative_pathname = file_pathname.relative_path_from(directory_pathname)
87
+ zipfile.add(file_relative_pathname,file)
88
+ end
89
+ next
90
+ end
91
+ end
92
+
93
+ filename = File.basename(file_to_be_zipped)
94
+
95
+ puts "zipper: archiving #{file_to_be_zipped} as #{filename} into #{zipfile}"
96
+
97
+ zipfile.add(filename,file_to_be_zipped)
98
+ }
99
+ end
100
+ end
101
+
102
+ puts "Done packaging #{included_processor_names.size} processors"
103
+ end
104
+ end