jefferies_tube 1.4 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 42afa1c0d3f03fcca7ee352fd0d557c6592c15cc72f575c1f76b059c10a0fbaa
4
- data.tar.gz: 5b16221cfc31659d7dcc2eff9289932f3f1974e401eae42d0b1e172219ad9e4d
3
+ metadata.gz: 98a84da7445ab8dcfa7a80d75bc98b560f2c3dbacf7037d464affde09488c9d3
4
+ data.tar.gz: b5b52b16be524ee723ce3e8cbb6d629f86395dc1533f54729cc09f4b4b5e2ddc
5
5
  SHA512:
6
- metadata.gz: 38be79244ee0c4f08f72cb82d3a82240977f6d8a1aafe99cbe8b4aa0d2393fcd07b962a875b99ca1b064899b64459e7d0d92aeb7c5216d84211680ad9acd54f4
7
- data.tar.gz: f2cfe1e09ca3532bdf755d34fae7aef8a29361254975d9b9f70c7094570d6b05a6690d4b9bb41ac5fb364a49c446807ffb36c972e514595594f8b73018fe01a4
6
+ metadata.gz: 59f3e12508024e6e900f5c553347e01d11d992849a5ae42cceb13c1629be4df39351ba0a0022fd37d10b5ce04a60b5d2debec8801bf9daab28cf63dbf4707937
7
+ data.tar.gz: e07c40dca2d827ef57d21819cf40cc1b31cb6431e8563807cf931946576cae57d5e18c9d4fd1e7f7ccd54be674e0c42217f7e85ae5536a5fc789231316814fbc
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.6.3
1
+ 3.1.0
data/CHANGELOG.md CHANGED
@@ -6,6 +6,13 @@ This project attempts to follow [semantic versioning](https://semver.org/)
6
6
 
7
7
  ## Unreleased
8
8
 
9
+ ## 1.5.3
10
+ * Minor tweaks to the IRB console when sshing. Don't use JT IRB locally
11
+ ## 1.5
12
+
13
+ * enhancements
14
+ * Add rails:allthelogs capistrano command to tail all of the rails logs at once.
15
+
9
16
  ## 1.4
10
17
 
11
18
  * enhancements
data/README.md CHANGED
@@ -51,39 +51,47 @@ require 'jefferies_tube/capistrano'
51
51
 
52
52
  #### Tasks
53
53
 
54
- * `cap beta ssh`
54
+ * `cap dev ssh`
55
55
 
56
56
  Open ssh session in `current` directory.
57
57
 
58
- * `cap beta rails:console`
58
+ * `cap dev rails:console`
59
59
 
60
60
  Open rails console.
61
61
 
62
- * `cap beta rails:dbconsole`
62
+ * `cap dev rails:dbconsole`
63
63
 
64
64
  Open database console.
65
65
 
66
- * `cap beta rails:log`
66
+ * `cap dev rails:log`
67
67
 
68
- Open log file. Can specify log file like so: `LOG=foobar cap beta rails:log`
68
+ Open log file. Can specify log file like so: `LOG=foobar cap dev rails:log`
69
69
 
70
- * `cap beta db:backup`
70
+ * `cap dev rails:allthelogs`
71
+
72
+ Open the logfile for all servers (has the role :app) combined. Can specify log file like so: `LOG=foobar cap dev rails:allthelogs`
73
+
74
+ * `cap dev rails:rake[task:name]`
75
+
76
+ Run the given rake task.
77
+
78
+ * `cap dev db:backup`
71
79
 
72
80
  Make a database backup.
73
81
 
74
- * `cap beta db:fetch`
82
+ * `cap dev db:fetch`
75
83
 
76
84
  Fetches the latest database backup. Useful for getting production data locally.
77
85
 
78
- * `cap beta db:restore FILE=path/to/backup.dump`
86
+ * `cap dev db:restore FILE=path/to/backup.dump`
79
87
 
80
88
  Nuke the server's database with one you give it. Don't do this on production for obvious reasons. Useful for putting a backup fetched from production onto a dev server.
81
89
 
82
- * `cap beta deploy:ensure_tag`
90
+ * `cap dev deploy:ensure_tag`
83
91
 
84
92
  Yells at you if there is not a tag for your code.
85
93
 
86
- * `cap beta deploy:create_tag`
94
+ * `cap dev deploy:create_tag`
87
95
 
88
96
  Creates a tag for your code and pushes it.
89
97
 
@@ -24,6 +24,6 @@ Gem::Specification.new do |spec|
24
24
  spec.add_development_dependency "rake"
25
25
  spec.add_development_dependency "rspec", '~> 3.0'
26
26
 
27
- spec.add_dependency "bundler-audit", '~> 0.7.0'
27
+ spec.add_dependency "bundler-audit", '~> 0.9.0'
28
28
  spec.add_dependency "pry", '~> 0.13'
29
29
  end
@@ -34,9 +34,9 @@ namespace :deploy do
34
34
  scanner.scan(ignore: ignore) do |result|
35
35
  vulnerable = true
36
36
  case result
37
- when Bundler::Audit::Scanner::InsecureSource
37
+ when Bundler::Audit::Results::InsecureSource
38
38
  puts "Insecure Source URI found: #{result.source}"
39
- when Bundler::Audit::Scanner::UnpatchedGem
39
+ when Bundler::Audit::Results::UnpatchedGem
40
40
  puts "#{result.gem} is not secure!"
41
41
  end
42
42
  end
@@ -3,7 +3,7 @@ namespace :rails do
3
3
  task :console do
4
4
  console_roles = [roles(:worker), roles(:app)].find(&:any?)
5
5
  on console_roles, primary: true do |host, user|
6
- run_interactively "RAILS_ENV=#{rails_env} bundle exec rails console"
6
+ run_interactively "RAILS_ENV=#{rails_env} JEFFERIES_TUBE_IRB=1 bundle exec rails console"
7
7
  end
8
8
  end
9
9
 
@@ -22,6 +22,24 @@ namespace :rails do
22
22
  end
23
23
  end
24
24
 
25
+ desc "Open all rails log using multitail"
26
+ task :allthelogs do
27
+ commands = []
28
+ roles(:app).each do |host|
29
+ filename = ENV['LOG'] || rails_env
30
+ port = host.port || 22
31
+ commands << "ssh #{host.user}@#{host} -p #{port} \"tail -f #{deploy_to}/current/log/#{filename}.log\" | grep --line-buffered --invert \"Delayed::Backend::ActiveRecord::Job Load\""
32
+ end
33
+
34
+ command = "multitail"
35
+ commands.each do |c|
36
+ command += " -L '#{c}'"
37
+ end
38
+
39
+ puts command
40
+ exec command
41
+ end
42
+
25
43
  desc "Run a rake task"
26
44
  task :rake, :task_to_run do |_, parameters|
27
45
  task_to_run = parameters[:task_to_run]
@@ -1,26 +1,23 @@
1
1
  class JefferiesTube::Console
2
- def self.prompt
2
+ def self.prompt_base
3
3
  rails_env = JefferiesTube.configuration.environment
4
4
  if rails_env
5
5
  color = "\e[0m" #Default to white text on no background
6
6
  current_app = JefferiesTube.configuration.prompt_name
7
7
 
8
- # shorten some common long environment names
9
8
  if rails_env == "development"
10
9
  elsif rails_env == "dev"
11
- rails_env = "dev"
12
10
  color = "\e[0;37m\e[1;44m" #White on blue
13
11
  elsif ["test", "qa", "staging"].include? rails_env
14
12
  color = "\e[0;37m\e[1;43m" #White on yellow
15
13
  elsif rails_env == "production"
16
- rails_env = "prod"
17
14
  color = "\e[0;37m\e[1;41m" #White on red
18
15
  end
19
16
 
20
17
  base = "#{color}#{current_app}(#{rails_env})\e[0m"
21
- return "#{base}> "
18
+ return "#{base}"
22
19
  else
23
- return "#{current_app}> "
20
+ return "#{current_app}"
24
21
  end
25
22
  end
26
23
  end
@@ -1,11 +1,15 @@
1
- prompt = JefferiesTube::Console.prompt
1
+ prompt = JefferiesTube::Console.prompt_base
2
2
 
3
- IRB.conf[:PROMPT][:RAILS_ENV] = {
4
- :PROMPT_I => prompt,
5
- :PROMPT_N => prompt,
6
- :PROMPT_S => nil,
7
- :PROMPT_C => prompt.sub('> ', '>* '),
8
- :RETURN => "=> %s\n"
3
+ IRB.conf[:PROMPT][:JEFFERIES_TUBE] = {
4
+ :PROMPT_I => "#{prompt} > ",
5
+ :PROMPT_N => "#{prompt}%l> ",
6
+ :PROMPT_S => "#{prompt}%l> ",
7
+ :PROMPT_C => "#{prompt}*> ",
8
+ :RETURN => " => %s\n"
9
9
  }
10
10
 
11
- IRB.conf[:PROMPT_MODE] = :RAILS_ENV
11
+ if ENV["JEFFERIES_TUBE_IRB"]
12
+ IRB.conf[:USE_MULTILINE] = false
13
+ IRB.conf[:USE_AUTOCOMPLETE] = false
14
+ IRB.conf[:PROMPT_MODE] = :JEFFERIES_TUBE
15
+ end
@@ -1,7 +1,7 @@
1
1
  require 'open-uri'
2
2
 
3
3
  module JefferiesTube
4
- VERSION = "1.4"
4
+ VERSION = "1.5.3"
5
5
 
6
6
  def self.latest_rubygems_version
7
7
  JSON.parse(URI.parse("https://rubygems.org/api/v1/versions/jefferies_tube/latest.json").read)["version"]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jefferies_tube
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.4'
4
+ version: 1.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Samson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-19 00:00:00.000000000 Z
11
+ date: 2022-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 0.7.0
89
+ version: 0.9.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 0.7.0
96
+ version: 0.9.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: pry
99
99
  requirement: !ruby/object:Gem::Requirement
@@ -161,7 +161,7 @@ homepage: https://github.com/tenforwardconsulting/jefferies_tube/
161
161
  licenses:
162
162
  - MIT
163
163
  metadata: {}
164
- post_install_message:
164
+ post_install_message:
165
165
  rdoc_options: []
166
166
  require_paths:
167
167
  - lib
@@ -176,8 +176,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
176
176
  - !ruby/object:Gem::Version
177
177
  version: '0'
178
178
  requirements: []
179
- rubygems_version: 3.0.3
180
- signing_key:
179
+ rubygems_version: 3.3.3
180
+ signing_key:
181
181
  specification_version: 4
182
182
  summary: Ten Forward Consulting useful tools.
183
183
  test_files: