geordi 0.18.0 → 1.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.
Files changed (75) hide show
  1. checksums.yaml +13 -5
  2. data/.ruby-version +1 -0
  3. data/README.md +199 -110
  4. data/Rakefile +40 -0
  5. data/bin/apache-site +1 -19
  6. data/bin/cap-all +1 -27
  7. data/bin/cleanup-directory +1 -11
  8. data/bin/console-for +1 -12
  9. data/bin/cuc +1 -2
  10. data/bin/cuc-show +1 -2
  11. data/bin/cuc-vnc-setup +1 -114
  12. data/bin/deploy-to-production +1 -91
  13. data/bin/dump-for +4 -32
  14. data/bin/dumple +2 -4
  15. data/bin/geordi +10 -0
  16. data/bin/gitpt +1 -2
  17. data/bin/launchy_browser +9 -3
  18. data/bin/load-dump +1 -4
  19. data/bin/migrate-all +1 -13
  20. data/bin/optimize-png +1 -118
  21. data/bin/power-rake +1 -7
  22. data/bin/remove-executable-flags +1 -6
  23. data/bin/rs +1 -26
  24. data/bin/run_tests +1 -2
  25. data/bin/setup-firefox-for-selenium +1 -3
  26. data/bin/shell-for +1 -8
  27. data/bin/tests +1 -5
  28. data/geordi.gemspec +19 -0
  29. data/lib/geordi/COMMAND_TEMPLATE +29 -0
  30. data/lib/geordi/capistrano.rb +9 -7
  31. data/lib/geordi/capistrano_config.rb +66 -0
  32. data/lib/geordi/cli.rb +28 -0
  33. data/lib/geordi/commands/all_targets.rb +26 -0
  34. data/lib/geordi/commands/apache_site.rb +22 -0
  35. data/lib/geordi/commands/bundle_install.rb +7 -0
  36. data/lib/geordi/commands/cleanup_directory.rb +16 -0
  37. data/lib/geordi/commands/commit.rb +171 -0
  38. data/lib/geordi/commands/console.rb +24 -0
  39. data/lib/geordi/commands/create_database_yml.rb +18 -0
  40. data/lib/geordi/commands/create_databases.rb +16 -0
  41. data/lib/geordi/commands/cucumber.rb +20 -0
  42. data/lib/geordi/commands/deploy.rb +65 -0
  43. data/lib/geordi/commands/devserver.rb +14 -0
  44. data/lib/geordi/commands/dump.rb +63 -0
  45. data/lib/geordi/commands/migrate.rb +26 -0
  46. data/lib/geordi/commands/png_optimize.rb +92 -0
  47. data/lib/geordi/commands/rake.rb +21 -0
  48. data/lib/geordi/commands/remove_executable_flags.rb +14 -0
  49. data/lib/geordi/commands/rspec.rb +40 -0
  50. data/lib/geordi/commands/security_update.rb +56 -0
  51. data/lib/geordi/commands/setup.rb +33 -0
  52. data/lib/geordi/commands/setup_firefox_for_selenium.rb +6 -0
  53. data/lib/geordi/commands/setup_vnc.rb +84 -0
  54. data/lib/geordi/commands/shell.rb +20 -0
  55. data/lib/geordi/commands/test.rb +9 -0
  56. data/lib/geordi/commands/unit.rb +11 -0
  57. data/lib/geordi/commands/update.rb +33 -0
  58. data/lib/geordi/commands/version.rb +7 -0
  59. data/lib/geordi/commands/vnc_show.rb +6 -0
  60. data/lib/geordi/commands/with_firefox_for_selenium.rb +18 -0
  61. data/lib/geordi/commands/with_rake.rb +11 -0
  62. data/lib/geordi/{cuc.rb → cucumber.rb} +28 -39
  63. data/lib/geordi/dump_loader.rb +44 -70
  64. data/lib/geordi/firefox_for_selenium.rb +93 -74
  65. data/lib/geordi/interaction.rb +47 -0
  66. data/lib/geordi/remote.rb +66 -0
  67. data/lib/geordi/util.rb +60 -0
  68. data/lib/geordi/version.rb +1 -1
  69. data/lib/geordi.rb +1 -0
  70. metadata +50 -16
  71. data/bin/install-gems-remotely +0 -18
  72. data/bin/install-gems-remotely.sh +0 -16
  73. data/bin/power-deploy +0 -18
  74. data/bin/remotify-local-branch +0 -12
  75. data/lib/geordi/gitpt.rb +0 -175
@@ -1,15 +1,17 @@
1
1
  require 'pathname'
2
+ require 'tempfile'
2
3
 
3
4
  module Geordi
4
5
  module FirefoxForSelenium
6
+ include Geordi::Interaction
5
7
 
6
8
  FIREFOX_FOR_SELENIUM_BASE_PATH = Pathname.new('~/bin/firefoxes').expand_path
7
9
  FIREFOX_FOR_SELENIUM_PROFILE_NAME = 'firefox-for-selenium'
8
10
  DEFAULT_FIREFOX_VERSION = "5.0.1"
9
11
  VERSION_SPECIFICATION_FILE = Pathname.new(".firefox-version")
10
12
 
11
- def self.install
12
- Installer.new.run
13
+ def self.install(version)
14
+ Installer.new(version).run
13
15
  end
14
16
 
15
17
  def self.path_from_config
@@ -33,6 +35,7 @@ module Geordi
33
35
 
34
36
 
35
37
  class PathFromConfig
38
+ include Geordi::Interaction
36
39
 
37
40
  def run
38
41
  unless system_firefox
@@ -57,23 +60,26 @@ module Geordi
57
60
  end
58
61
 
59
62
  def default_version
60
- puts "No firefox version given, defaulting to #{DEFAULT_FIREFOX_VERSION}."
61
- puts "Specify a version by putting it in a file named \"#{VERSION_SPECIFICATION_FILE}\"."
63
+ warn "No firefox version given, defaulting to #{DEFAULT_FIREFOX_VERSION}."
64
+ note "Specify a version by putting it in a file named \"#{VERSION_SPECIFICATION_FILE}\"."
62
65
  puts
63
66
  DEFAULT_FIREFOX_VERSION
64
67
  end
65
68
 
66
69
  def validate_install
67
70
  unless FirefoxForSelenium.binary(@version).exist?
68
- puts "Firefox #{@version} not found."
69
- puts "Install it with"
70
- puts " setup-firefox-for-selenium #{@version}"
71
- puts
72
- puts "If you want to use your system firefox and not see this message, add"
73
- puts "a \".firefox-version\" file with the content \"system\"."
74
- puts
75
- puts "Press ENTER to continue or press CTRL+C to abort."
76
- $stdin.gets
71
+ note "Firefox #{@version} not found."
72
+
73
+ puts left(<<-INSTRUCTIONS)
74
+ Install it with
75
+ geordi setup_firefox_for_selenium #{@version}
76
+
77
+ If you want to use your system firefox and not see this message, add
78
+ a .firefox-version file with the content "system".
79
+
80
+ INSTRUCTIONS
81
+
82
+ wait "Press ENTER to continue or press CTRL+C to abort."
77
83
  end
78
84
  end
79
85
 
@@ -85,9 +91,13 @@ module Geordi
85
91
 
86
92
 
87
93
  class Installer
94
+ include Geordi::Interaction
95
+
96
+ def initialize(version)
97
+ @version = version
98
+ end
88
99
 
89
100
  def run
90
- parse_version
91
101
  say_hello
92
102
  check_if_run_before
93
103
  download_firefox
@@ -108,12 +118,6 @@ module Geordi
108
118
  execute_command("PATH=#{path}:$PATH firefox #{args}")
109
119
  end
110
120
 
111
- def die(message)
112
- puts message
113
- puts
114
- exit(1)
115
- end
116
-
117
121
  def path
118
122
  FirefoxForSelenium.path(@version)
119
123
  end
@@ -130,64 +134,71 @@ module Geordi
130
134
  FirefoxForSelenium.binary(@version, "firefox-original")
131
135
  end
132
136
 
133
- def parse_version
134
- @version = ARGV.pop
135
- @version or die("Usage: setup_firefox_for_selenium VERSION")
136
- end
137
-
138
137
  def say_hello
139
138
  execute_command('clear')
140
- puts "Whenever Firefox updates, Selenium breaks. This is annoying."
141
- puts "This script will help you create an unchanging version of Firefox for your Selenium tests."
142
- puts
143
- puts "In particular, this new copy of Firefox will have the following properties:"
144
- puts
145
- puts "- It won't update itself with a newer version"
146
- puts "- It can co-exist with your regular Firefox installation (which you can update at will)"
147
- puts "- It will use a profile separate from the one you use for regular Firefox browsing"
148
- puts "- It will not try to re-use existing Firefox windows"
149
- puts "- It will automatically be used for your Selenium scenarios if you run your Cucumber using the cuc binary from the geordi gem."
150
- puts "- It will live in #{path}"
151
- puts
152
- puts "Press ENTER when you're ready to begin."
153
- gets
139
+
140
+ puts left(<<-HELLO)
141
+ Whenever Firefox updates, Selenium breaks. This is annoying. This
142
+ script will help you create an unchanging version of Firefox for your
143
+ Selenium tests.
144
+
145
+ In particular, this new copy of Firefox will have the following
146
+ properties:
147
+
148
+ - It won't update itself with a newer version
149
+ - It can co-exist with your regular Firefox installation (which you can
150
+ update at will)
151
+ - It will use a profile separate from the one you use for regular
152
+ Firefox browsing
153
+ - It will not try to re-use existing Firefox windows
154
+ - It will automatically be used for your Selenium scenarios if you run
155
+ your Cucumber using the cuc binary from the geordi gem.
156
+ - It will live in #{path}
157
+
158
+ HELLO
159
+
160
+ wait "Press ENTER when you're ready to begin."
154
161
  end
155
162
 
156
163
  def check_if_run_before
157
164
  if original_binary.exist?
158
- puts "This version seems to be already installed."
165
+ note 'This version seems to be already installed.'
159
166
  puts
160
- puts "Press ENTER to continue anyway or press CTRL+C to abort."
161
- gets
167
+ wait 'Press ENTER to continue anyway or press CTRL+C to abort.'
162
168
  end
163
169
  end
164
170
 
165
171
  def download_firefox
166
172
  path.mkpath
167
- puts "Please download an old version of Firefox from #{download_url} and unpack it to #{path}."
168
- puts "Don't create an extra #{path.join("firefox")} directory."
169
- puts
170
- puts "Press ENTER when you're done."
171
- gets
173
+
174
+ puts left(<<-INSTRUCTION)
175
+ Please download an old version of Firefox from: #{download_url}
176
+ Unpack it with: tar xvjf firefox-#{@version}.tar.bz2 -C #{path} --strip-components=1
177
+ Now #{path.join('firefox')} should be the firefox binary, not a directory.
178
+
179
+ INSTRUCTION
180
+ wait "Press ENTER when you're done."
181
+
172
182
  File.file?(binary) or raise "Could not find #{binary}"
173
183
  end
174
184
 
175
185
  def create_separate_profile
176
- puts "Creating a separate profile named '#{FIREFOX_FOR_SELENIUM_PROFILE_NAME}' so your own profile will be safe..."
177
- # don't use the patched firefox binary for this, we don't want to give a -p parameter here
186
+ note "Creating a separate profile named '#{FIREFOX_FOR_SELENIUM_PROFILE_NAME}' so your own profile will be safe..."
187
+ # don't use the patched firefox binary for this, we don't want to give
188
+ # a -p option here
178
189
  execute_command("PATH=#{path}:$PATH firefox -no-remote -CreateProfile #{FIREFOX_FOR_SELENIUM_PROFILE_NAME}")
179
190
  puts
180
191
  end
181
192
 
182
193
  def patch_old_firefox
183
- puts "Patching #{binary} so it uses the new profile and never re-uses windows from other Firefoxes..."
194
+ note "Patching #{binary} so it uses the new profile and never re-uses windows from other Firefoxes..."
184
195
  execute_command("mv #{binary} #{original_binary}")
185
196
  execute_command("mv #{binary}-bin #{original_binary}-bin")
186
197
  patched_binary = Tempfile.new('firefox')
187
- patched_binary.write <<eos
188
- #!/usr/bin/env ruby
189
- exec('#{original_binary}', '-no-remote', '-P', '#{FIREFOX_FOR_SELENIUM_PROFILE_NAME}', *ARGV)
190
- eos
198
+ patched_binary.write left(<<-PATCH)
199
+ #!/usr/bin/env ruby
200
+ exec('#{original_binary}', '-no-remote', '-P', '#{FIREFOX_FOR_SELENIUM_PROFILE_NAME}', *ARGV)
201
+ PATCH
191
202
  patched_binary.close
192
203
  execute_command("mv #{patched_binary.path} #{binary}")
193
204
  execute_command("chmod +x #{binary}")
@@ -195,30 +206,38 @@ eos
195
206
  end
196
207
 
197
208
  def configure_old_firefox
198
- puts "This script will now open the patched copy of Firefox."
199
- puts
200
- puts "Please perform the following steps manually:"
201
- puts
202
- puts "- Disable the default browser check when Firefox launches"
203
- puts "- Check that the version number is correct (#{@version})"
204
- puts "- Disable all automatic updates under Edit / Preferences / Advanced / Update (do this quickly or Firefox will already have updated)"
205
- puts "- You should not see your bookmarks, addons, plugins from your regular Firefox profile"
206
- puts
207
- puts "Press ENTER when you're ready to open Firefox and perform these steps."
208
- gets
209
+ puts left(<<-INSTRUCTION)
210
+ You will now have to do some manual configuration.
211
+
212
+ This script will open the patched copy of Firefox when you press ENTER.
213
+ Please perform the following steps manually:
214
+
215
+ - Disable the default browser check when Firefox launches
216
+ - Check that the version number is correct (#{@version})
217
+ - You should not see your bookmarks, add-ons, plugins from your regular
218
+ Firefox profile
219
+ - Disable all automatic updates under Edit / Preferences / Advanced /
220
+ Update (do this quickly or Firefox will already have updated)
221
+
222
+ INSTRUCTION
223
+
224
+ wait 'Open the patched copy of Firefox with ENTER.'
209
225
  run_firefox_for_selenium
210
226
  end
211
227
 
212
228
  def kkthxbb
213
- puts "Congratulations, you're done!"
214
- puts
215
- puts "Your patched copy of Firefox will be used when you run Cucumber using the cuc binary that comes with the geordi gem."
216
- puts "If you prefer to run Cucumber on your own, you must call it like this:"
217
- puts
218
- puts " PATH=#{path}:$PATH cucumber"
219
- puts
220
- puts "Enjoy!"
221
- puts
229
+ success "Congratulations, you're done!"
230
+
231
+ puts left(<<-INSTRUCTION)
232
+
233
+ Your patched copy of Firefox will be used when you run Cucumber using
234
+ the cucumber script that comes with the geordi gem. If you prefer to run
235
+ Cucumber on your own, you must call it like this:
236
+
237
+ PATH=#{path}:$PATH cucumber
238
+
239
+ Enjoy!
240
+ INSTRUCTION
222
241
  end
223
242
 
224
243
  end
@@ -0,0 +1,47 @@
1
+ module Geordi
2
+ module Interaction
3
+
4
+ def announce(text)
5
+ message = "\n# #{text}"
6
+ puts "\e[4;34m#{message}\e[0m" # blue underline
7
+ end
8
+
9
+ def note(text)
10
+ puts '> ' + text
11
+ end
12
+
13
+ def warn(text)
14
+ message = "> #{text}"
15
+ puts "\e[33m#{message}\e[0m" # yellow
16
+ end
17
+
18
+ def note_cmd(text)
19
+ message = "> #{text}"
20
+ puts "\e[35m#{message}\e[0m" # pink
21
+ end
22
+
23
+ def fail(text)
24
+ message = "\nx #{text}"
25
+ puts "\e[31m#{message}\e[0m" # red
26
+ exit(1)
27
+ end
28
+
29
+ def success(text)
30
+ message = "\n> #{text}"
31
+ puts "\e[32m#{message}\e[0m" # green
32
+ end
33
+
34
+ def wait(text)
35
+ message = "#{text}"
36
+ puts "\e[36m#{message}\e[0m" # cyan
37
+ $stdin.gets
38
+ end
39
+
40
+ def left(string)
41
+ leading_whitespace = (string.match(/\A( +)[^ ]+/) || [])[1]
42
+ string.gsub! /^#{leading_whitespace}/, '' if leading_whitespace
43
+ string
44
+ end
45
+
46
+ end
47
+ end
@@ -0,0 +1,66 @@
1
+ require 'geordi/capistrano_config'
2
+ require 'geordi/interaction'
3
+ require 'geordi/util'
4
+ require 'highline/import'
5
+ require 'pathname'
6
+
7
+ module Geordi
8
+ class Remote
9
+ include Geordi::Interaction
10
+
11
+ REMOTE_DUMP_PATH = '~/dumps/dump_for_download.dump'
12
+
13
+ def initialize(stage)
14
+ @stage = stage
15
+ @config = CapistranoConfig.new(stage)
16
+ end
17
+
18
+ def select_server
19
+ selected_server = choose do |menu|
20
+ @config.servers.each do |server|
21
+ menu.choice(server) { server }
22
+ end
23
+
24
+ # Default to the first listed server (by convention, the first server
25
+ # in the deploy files is the primary one).
26
+ menu.default = '1'
27
+ menu.prompt = 'Connect to? [1] '
28
+ end
29
+
30
+ puts
31
+ selected_server
32
+ end
33
+
34
+ def dump(options = {})
35
+ shell(options.merge :remote_command => "dumple #{@config.env} --for_download")
36
+
37
+ destination_directory = File.join(@config.root, 'tmp')
38
+ FileUtils.mkdir_p destination_directory
39
+ destination_path = File.join(destination_directory, "#{@stage}.dump")
40
+ relative_destination = Pathname.new(destination_path).relative_path_from Pathname.new(@config.root)
41
+
42
+ puts
43
+ note "Downloading remote dump to #{relative_destination} ..."
44
+ Util.system! "scp #{@config.user}@#{@config.primary_server}:#{REMOTE_DUMP_PATH} #{destination_path}"
45
+
46
+ success "Dumped the #{@stage} database to #{relative_destination}."
47
+
48
+ destination_path
49
+ end
50
+
51
+ def console(options = {})
52
+ shell(options.merge :remote_command => Util.console_command(@config.env))
53
+ end
54
+
55
+ def shell(options = {})
56
+ server = options[:select_server] ? select_server : @config.primary_server
57
+
58
+ remote_command = "cd #{@config.path} && #{@config.shell}"
59
+ remote_command << " -c '#{options[:remote_command]}'" if options[:remote_command]
60
+
61
+ note 'Connecting to ' + server.to_s
62
+ Util.system! 'ssh', "#{@config.user}@#{server}", '-t', remote_command
63
+ end
64
+
65
+ end
66
+ end
@@ -0,0 +1,60 @@
1
+ require 'geordi/interaction'
2
+
3
+ module Geordi
4
+ class Util
5
+ class << self
6
+ include Geordi::Interaction
7
+
8
+ # Geordi commands sometimes require external gems. However, we don't want
9
+ # all employed gems as runtime dependencies because that would
10
+ # unnecessarily slow down all commands.
11
+ # Thus, we have this handy method here.
12
+ def installing_missing_gems(&block)
13
+ yield
14
+ rescue LoadError => e
15
+ gem_name = e.message.split('--').last.strip
16
+ install_command = 'gem install ' + gem_name
17
+
18
+ # install missing gem
19
+ warn 'Probably missing gem: ' + gem_name
20
+ wait 'Auto-install it?'
21
+ system! install_command, :show_cmd => true
22
+
23
+ # retry
24
+ Gem.clear_paths
25
+ note 'Trying again ...'
26
+ require gem_name
27
+ retry
28
+ end
29
+
30
+ # Run a command with a clean environment.
31
+ # Print an error message and exit if the command fails.
32
+ #
33
+ # Options: show_cmd, fail_message
34
+ def system!(*commands)
35
+ options = commands.last.is_a?(Hash) ? commands.pop : {}
36
+ note_cmd commands.join(' ') if options[:show_cmd]
37
+
38
+ # Remove Geordi's Bundler environment when running commands.
39
+ Bundler.clean_system(*commands) or fail(options[:fail_message] || 'Something went wrong.')
40
+ end
41
+
42
+ def console_command(environment)
43
+ if File.exists?('script/console')
44
+ 'script/console ' + environment # Rails 2
45
+ else
46
+ 'bundle exec rails console ' + environment
47
+ end
48
+ end
49
+
50
+ def server_command
51
+ if File.exists?('script/server')
52
+ 'script/server' # Rails 2
53
+ else
54
+ 'bundle exec rails server' # Rails 3+
55
+ end
56
+ end
57
+
58
+ end
59
+ end
60
+ end
@@ -1,3 +1,3 @@
1
1
  module Geordi
2
- VERSION = '0.18.0'
2
+ VERSION = '1.0.0'
3
3
  end
data/lib/geordi.rb ADDED
@@ -0,0 +1 @@
1
+ require 'geordi/cli'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geordi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Henning Koch
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-04 00:00:00.000000000 Z
11
+ date: 2015-01-23 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Collection of command line tools we use in our daily work with Ruby,
14
14
  Rails and Linux at makandra.
@@ -26,16 +26,13 @@ executables:
26
26
  - deploy-to-production
27
27
  - dump-for
28
28
  - dumple
29
+ - geordi
29
30
  - gitpt
30
- - install-gems-remotely
31
- - install-gems-remotely.sh
32
31
  - launchy_browser
33
32
  - load-dump
34
33
  - migrate-all
35
34
  - optimize-png
36
- - power-deploy
37
35
  - power-rake
38
- - remotify-local-branch
39
36
  - remove-executable-flags
40
37
  - rs
41
38
  - run_tests
@@ -45,7 +42,8 @@ executables:
45
42
  extensions: []
46
43
  extra_rdoc_files: []
47
44
  files:
48
- - ".gitignore"
45
+ - .gitignore
46
+ - .ruby-version
49
47
  - Gemfile
50
48
  - LICENSE
51
49
  - README.md
@@ -61,16 +59,13 @@ files:
61
59
  - bin/deploy-to-production
62
60
  - bin/dump-for
63
61
  - bin/dumple
62
+ - bin/geordi
64
63
  - bin/gitpt
65
- - bin/install-gems-remotely
66
- - bin/install-gems-remotely.sh
67
64
  - bin/launchy_browser
68
65
  - bin/load-dump
69
66
  - bin/migrate-all
70
67
  - bin/optimize-png
71
- - bin/power-deploy
72
68
  - bin/power-rake
73
- - bin/remotify-local-branch
74
69
  - bin/remove-executable-flags
75
70
  - bin/rs
76
71
  - bin/run_tests
@@ -78,29 +73,68 @@ files:
78
73
  - bin/shell-for
79
74
  - bin/tests
80
75
  - geordi.gemspec
76
+ - lib/geordi.rb
77
+ - lib/geordi/COMMAND_TEMPLATE
81
78
  - lib/geordi/capistrano.rb
82
- - lib/geordi/cuc.rb
79
+ - lib/geordi/capistrano_config.rb
80
+ - lib/geordi/cli.rb
81
+ - lib/geordi/commands/all_targets.rb
82
+ - lib/geordi/commands/apache_site.rb
83
+ - lib/geordi/commands/bundle_install.rb
84
+ - lib/geordi/commands/cleanup_directory.rb
85
+ - lib/geordi/commands/commit.rb
86
+ - lib/geordi/commands/console.rb
87
+ - lib/geordi/commands/create_database_yml.rb
88
+ - lib/geordi/commands/create_databases.rb
89
+ - lib/geordi/commands/cucumber.rb
90
+ - lib/geordi/commands/deploy.rb
91
+ - lib/geordi/commands/devserver.rb
92
+ - lib/geordi/commands/dump.rb
93
+ - lib/geordi/commands/migrate.rb
94
+ - lib/geordi/commands/png_optimize.rb
95
+ - lib/geordi/commands/rake.rb
96
+ - lib/geordi/commands/remove_executable_flags.rb
97
+ - lib/geordi/commands/rspec.rb
98
+ - lib/geordi/commands/security_update.rb
99
+ - lib/geordi/commands/setup.rb
100
+ - lib/geordi/commands/setup_firefox_for_selenium.rb
101
+ - lib/geordi/commands/setup_vnc.rb
102
+ - lib/geordi/commands/shell.rb
103
+ - lib/geordi/commands/test.rb
104
+ - lib/geordi/commands/unit.rb
105
+ - lib/geordi/commands/update.rb
106
+ - lib/geordi/commands/version.rb
107
+ - lib/geordi/commands/vnc_show.rb
108
+ - lib/geordi/commands/with_firefox_for_selenium.rb
109
+ - lib/geordi/commands/with_rake.rb
110
+ - lib/geordi/cucumber.rb
83
111
  - lib/geordi/dump_loader.rb
84
112
  - lib/geordi/firefox_for_selenium.rb
85
- - lib/geordi/gitpt.rb
113
+ - lib/geordi/interaction.rb
114
+ - lib/geordi/remote.rb
86
115
  - lib/geordi/run_tests.rb
116
+ - lib/geordi/util.rb
87
117
  - lib/geordi/version.rb
88
118
  homepage: http://makandra.com
89
119
  licenses:
90
120
  - MIT
91
121
  metadata: {}
92
- post_install_message:
122
+ post_install_message: ! "\n ********************************************\n\n geordi
123
+ 1.0.0 moves most of the scripts to\n the `geordi` binary. Run `geordi` and\n
124
+ \ `geordi help <cmd>` for further information.\n\n Tip: Create an alias for
125
+ geordi for quick \n access. Add this to your ~/.bashrc:\n\n alias g=\"geordi\"\n\n
126
+ \ ********************************************\n\n"
93
127
  rdoc_options: []
94
128
  require_paths:
95
129
  - lib
96
130
  required_ruby_version: !ruby/object:Gem::Requirement
97
131
  requirements:
98
- - - ">="
132
+ - - ! '>='
99
133
  - !ruby/object:Gem::Version
100
134
  version: '0'
101
135
  required_rubygems_version: !ruby/object:Gem::Requirement
102
136
  requirements:
103
- - - ">="
137
+ - - ! '>='
104
138
  - !ruby/object:Gem::Version
105
139
  version: '0'
106
140
  requirements: []
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
-
4
- warn <<EOWARNING
5
-
6
- ********************************************************
7
- install-gems-remotely is deprecated
8
- -----------------------------------
9
-
10
- Gems should be automatically installed when deploying.
11
- If they aren't: See http://gembundler.com/deploying.html
12
- ********************************************************
13
-
14
- EOWARNING
15
-
16
- # sorry
17
- path = Gem.bin_path('geordi', 'install-gems-remotely.sh')
18
- exec path, *ARGV
@@ -1,16 +0,0 @@
1
- #!/bin/sh
2
- if [ -z "$1" ]; then
3
- echo "Please specify the remote server name"
4
- exit 1
5
- fi
6
- mkdir -p tmp
7
- if ls vendor/gems/*/*.gemspec > /dev/null 2>&1; then
8
- tar cf tmp/gemfiles_for_remote_install Gemfile Gemfile.lock vendor/gems
9
- else
10
- tar cf tmp/gemfiles_for_remote_install Gemfile Gemfile.lock
11
- fi
12
- scp tmp/gemfiles_for_remote_install $1:~
13
- stty_orig=`stty -g`
14
- stty -echo
15
- ssh -t $1 "mkdir /tmp/install_gems; mv gemfiles_for_remote_install /tmp/install_gems; cd /tmp/install_gems; tar xf gemfiles_for_remote_install; bundle install; rm -rf /tmp/install_gems"
16
- stty $stty_orig
data/bin/power-deploy DELETED
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- warn <<EOWARNING
4
-
5
- **********************************************************************
6
- power-deploy is deprecated
7
- --------------------------
8
-
9
- You should simply use "cap deploy:migrations"
10
-
11
- If that does not do what you want, you should fix your deploy scripts.
12
- See http://makandracards.com/makandra/1176
13
- **********************************************************************
14
-
15
- EOWARNING
16
-
17
- stage = ARGV[0]
18
- exec "cap #{stage} deploy && cap #{stage} deploy:migrate && cap #{stage} deploy:restart"
@@ -1,12 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- puts
4
- puts " Deprecation Notification: This script does nothing."
5
- puts
6
- puts " Pushing a new branch and tracking it immediately with plain git is so easy now."
7
- puts " https://makandracards.com/makandra/7895-git-push-a-new-branch-and-track-it-immediately"
8
- puts
9
- puts " Simple use the git command"
10
- puts
11
- puts " git push -u"
12
- puts