gorails 0.1.1 → 0.1.4

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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -1
  3. data/Gemfile.lock +1 -6
  4. data/README.md +41 -12
  5. data/bin/update-deps +95 -0
  6. data/exe/gorails +2 -1
  7. data/gorails.gemspec +0 -2
  8. data/lib/gorails/commands/railsbytes.rb +45 -4
  9. data/lib/gorails/commands/version.rb +15 -0
  10. data/lib/gorails/commands.rb +2 -5
  11. data/lib/gorails/version.rb +1 -1
  12. data/lib/gorails.rb +11 -20
  13. data/vendor/deps/cli-kit/REVISION +1 -0
  14. data/vendor/deps/cli-kit/lib/cli/kit/args/definition.rb +301 -0
  15. data/vendor/deps/cli-kit/lib/cli/kit/args/evaluation.rb +237 -0
  16. data/vendor/deps/cli-kit/lib/cli/kit/args/parser/node.rb +131 -0
  17. data/vendor/deps/cli-kit/lib/cli/kit/args/parser.rb +128 -0
  18. data/vendor/deps/cli-kit/lib/cli/kit/args/tokenizer.rb +132 -0
  19. data/vendor/deps/cli-kit/lib/cli/kit/args.rb +15 -0
  20. data/vendor/deps/cli-kit/lib/cli/kit/base_command.rb +29 -0
  21. data/vendor/deps/cli-kit/lib/cli/kit/command_help.rb +256 -0
  22. data/vendor/deps/cli-kit/lib/cli/kit/command_registry.rb +141 -0
  23. data/vendor/deps/cli-kit/lib/cli/kit/config.rb +137 -0
  24. data/vendor/deps/cli-kit/lib/cli/kit/core_ext.rb +30 -0
  25. data/vendor/deps/cli-kit/lib/cli/kit/error_handler.rb +165 -0
  26. data/vendor/deps/cli-kit/lib/cli/kit/executor.rb +99 -0
  27. data/vendor/deps/cli-kit/lib/cli/kit/ini.rb +94 -0
  28. data/vendor/deps/cli-kit/lib/cli/kit/levenshtein.rb +89 -0
  29. data/vendor/deps/cli-kit/lib/cli/kit/logger.rb +95 -0
  30. data/vendor/deps/cli-kit/lib/cli/kit/opts.rb +284 -0
  31. data/vendor/deps/cli-kit/lib/cli/kit/resolver.rb +67 -0
  32. data/vendor/deps/cli-kit/lib/cli/kit/sorbet_runtime_stub.rb +142 -0
  33. data/vendor/deps/cli-kit/lib/cli/kit/support/test_helper.rb +253 -0
  34. data/vendor/deps/cli-kit/lib/cli/kit/support.rb +10 -0
  35. data/vendor/deps/cli-kit/lib/cli/kit/system.rb +350 -0
  36. data/vendor/deps/cli-kit/lib/cli/kit/util.rb +133 -0
  37. data/vendor/deps/cli-kit/lib/cli/kit/version.rb +7 -0
  38. data/vendor/deps/cli-kit/lib/cli/kit.rb +151 -0
  39. data/vendor/deps/cli-ui/REVISION +1 -0
  40. data/vendor/deps/cli-ui/lib/cli/ui/ansi.rb +180 -0
  41. data/vendor/deps/cli-ui/lib/cli/ui/color.rb +98 -0
  42. data/vendor/deps/cli-ui/lib/cli/ui/formatter.rb +216 -0
  43. data/vendor/deps/cli-ui/lib/cli/ui/frame/frame_stack.rb +116 -0
  44. data/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style/box.rb +176 -0
  45. data/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style/bracket.rb +149 -0
  46. data/vendor/deps/cli-ui/lib/cli/ui/frame/frame_style.rb +112 -0
  47. data/vendor/deps/cli-ui/lib/cli/ui/frame.rb +300 -0
  48. data/vendor/deps/cli-ui/lib/cli/ui/glyph.rb +92 -0
  49. data/vendor/deps/cli-ui/lib/cli/ui/os.rb +58 -0
  50. data/vendor/deps/cli-ui/lib/cli/ui/printer.rb +72 -0
  51. data/vendor/deps/cli-ui/lib/cli/ui/progress.rb +102 -0
  52. data/vendor/deps/cli-ui/lib/cli/ui/prompt/interactive_options.rb +534 -0
  53. data/vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb +36 -0
  54. data/vendor/deps/cli-ui/lib/cli/ui/prompt.rb +354 -0
  55. data/vendor/deps/cli-ui/lib/cli/ui/sorbet_runtime_stub.rb +143 -0
  56. data/vendor/deps/cli-ui/lib/cli/ui/spinner/async.rb +46 -0
  57. data/vendor/deps/cli-ui/lib/cli/ui/spinner/spin_group.rb +292 -0
  58. data/vendor/deps/cli-ui/lib/cli/ui/spinner.rb +82 -0
  59. data/vendor/deps/cli-ui/lib/cli/ui/stdout_router.rb +264 -0
  60. data/vendor/deps/cli-ui/lib/cli/ui/terminal.rb +53 -0
  61. data/vendor/deps/cli-ui/lib/cli/ui/truncater.rb +107 -0
  62. data/vendor/deps/cli-ui/lib/cli/ui/version.rb +6 -0
  63. data/vendor/deps/cli-ui/lib/cli/ui/widgets/base.rb +37 -0
  64. data/vendor/deps/cli-ui/lib/cli/ui/widgets/status.rb +75 -0
  65. data/vendor/deps/cli-ui/lib/cli/ui/widgets.rb +91 -0
  66. data/vendor/deps/cli-ui/lib/cli/ui/wrap.rb +63 -0
  67. data/vendor/deps/cli-ui/lib/cli/ui.rb +356 -0
  68. metadata +59 -30
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7405b120eabf5b2ace5c2e122ab57b456567e1c985471f45582ad538e5a48345
4
- data.tar.gz: a08c99241ad71f5dcd87af57867c9e6644dd8bf02fed5a5a9909941f9870f673
3
+ metadata.gz: fb6ed89fea9fbe57b0f3e0ad9e43b86bcc01d554018610c20ec88ca62a7e3eb4
4
+ data.tar.gz: 289342d7b991ffd71da958d904163e6aed5bdb38e673fa3a0aa7da4627c8591f
5
5
  SHA512:
6
- metadata.gz: 624969edaed32a320bfeec953e44e291dc1620b83f15fed11d5a45dd9d31362be1b6a4679198c55e8c2ea6b3fc52243c71dcdad51172a1fa89d65e45909405eb
7
- data.tar.gz: 5d31c6e7e0be210a8b6f4bf81f62f7dd0f8e1899233cfaac86376b2d2d0dd3f6c72576100faaa5176253d13507b63080b6ee26f1d0d28d518677f848b50d5652
6
+ metadata.gz: cb384482e0a5992b671d681839e7a335c32c9290ad2d5f93016e5f3d5d283d8de754501346a390278c478d9c783c9dd94773a192fd7ea189192160e5025bf13f
7
+ data.tar.gz: ba828e4f25ccb1d01d30caf3f58ec08deeff4669b785effe8aefcd296508b6c6b4cc28777359d6849c5ccda3c037ee5f5de89a85024f4708a52c612b4e27c58e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  ## [Unreleased]
2
2
 
3
- ## [0.1.0] - 2021-12-16
3
+ ## [0.1.4] - 2022-03-13
4
+
5
+ - Add `version` command
6
+
7
+ ## [0.1.3] - 2022-03-13
8
+
9
+ - Vendor cli-kit and cli-ui for speed
10
+ This also skips loading bundler/setup which looks for a Gemfile
11
+
12
+ ## [0.1.2] - 2022-03-13
13
+
14
+ - Add ability to view and apply individual Railsbytes
15
+
16
+ ## [0.1.1] - 2022-03-13
4
17
 
5
18
  - Initial release
19
+
20
+ ## [0.1.0] - 2021-12-16
21
+
22
+ - Empty release
data/Gemfile.lock CHANGED
@@ -1,9 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gorails (0.1.1)
5
- cli-kit (~> 4.0.0)
6
- cli-ui (~> 1.5.1)
4
+ gorails (0.1.4)
7
5
 
8
6
  GEM
9
7
  remote: https://rubygems.org/
@@ -11,9 +9,6 @@ GEM
11
9
  ansi (1.5.0)
12
10
  ast (2.4.2)
13
11
  builder (3.2.4)
14
- cli-kit (4.0.0)
15
- cli-ui (>= 1.1.4)
16
- cli-ui (1.5.1)
17
12
  metaclass (0.0.4)
18
13
  minitest (5.15.0)
19
14
  minitest-reporters (1.5.0)
data/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # Gorails
1
+ # GoRails CLI
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/gorails`. To experiment with that code, run `bin/console` for an interactive prompt.
3
+ [![Gem Version](https://badge.fury.io/rb/gorails.svg)](https://badge.fury.io/rb/gorails)
4
4
 
5
- TODO: Delete this and the text above, and describe your gem
5
+ An interactive CLI for [GoRails](https://gorails.com), [Railsbytes](https://railsbytes.com), [Jumpstart](https://github.com/excid3/jumpstart), [Ruby on Rails jobs](https://jobs.gorails.com), and more.
6
6
 
7
7
  ## Installation
8
8
 
@@ -12,27 +12,56 @@ Add this line to your application's Gemfile:
12
12
  gem 'gorails'
13
13
  ```
14
14
 
15
- And then execute:
15
+ And then run
16
16
 
17
- $ bundle install
17
+ ```bash
18
+ gorails
19
+ ```
20
+
21
+ ## Usage
18
22
 
19
- Or install it yourself as:
23
+ #### GoRails episodes
20
24
 
21
- $ gem install gorails
25
+ To see a list of the recent GoRails screencasts, you can run:
22
26
 
23
- ## Usage
27
+ ```sh
28
+ gorails episodes
29
+ ```
30
+
31
+ #### Ruby on Rails Jobs
32
+
33
+ To see a list of Ruby on Rails job posts, you can run:
34
+
35
+ ```sh
36
+ gorails jobs
37
+ ```
38
+
39
+ #### Railsbytes
40
+
41
+ To see a list of Railsbytes.com templates, you can run:
42
+
43
+ ```sh
44
+ gorails railsbytes
45
+ gorails railsbytes x7msKX
46
+ ```
47
+
48
+ #### Jumpstart
24
49
 
25
- TODO: Write usage instructions here
50
+ To create a Ruby on Rails app using the [Jumpstart template](https://github.com/excid3/jumpstart), you can run:
51
+
52
+ ```sh
53
+ gorails jumpstart myapp
54
+ ```
26
55
 
27
56
  ## Development
28
57
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
58
+ After checking out the repo, run `bundle` to install dependencies. Then, run `rake test` to run the tests. You can also run `exe/gorails` to test the gem.
30
59
 
31
60
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
61
 
33
62
  ## Contributing
34
63
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/gorails. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/gorails/blob/main/CODE_OF_CONDUCT.md).
64
+ Bug reports and pull requests are welcome on GitHub at https://github.com/excid3/gorails-ruby. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/excid3/gorails-ruby/blob/master/CODE_OF_CONDUCT.md).
36
65
 
37
66
  ## License
38
67
 
@@ -40,4 +69,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
40
69
 
41
70
  ## Code of Conduct
42
71
 
43
- Everyone interacting in the Gorails project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/gorails/blob/main/CODE_OF_CONDUCT.md).
72
+ Everyone interacting in the GoRails project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/excid3/gorails-ruby/blob/master/CODE_OF_CONDUCT.md).
data/bin/update-deps ADDED
@@ -0,0 +1,95 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $LOAD_PATH.unshift(File.expand_path("../../vendor/deps/cli-ui/lib", __FILE__))
4
+ require 'open3'
5
+ require 'fileutils'
6
+
7
+ def fmt(tag, msg)
8
+ # Not really CLI::UI.fmt compatible: no nesting support, for example.
9
+ # While we could pull in CLI::UI here, it makes it more difficult to
10
+ # bootstrap a new project and to fix a broken vendor.
11
+ fmt_msg = msg
12
+ .gsub(/{{yellow:(.*?)}}/, "\x1b[33m\\1\x1b[31m")
13
+ .gsub(/{{green:(.*?)}}/, "\x1b[32m\\1\x1b[31m")
14
+ .gsub(/{{blue:(.*?)}}/, "\x1b[34m\\1\x1b[31m")
15
+ .gsub(/{{bold_blue:(.*?)}}/, "\x1b[1;34m\\1\x1b[0;31m")
16
+ .gsub(/{{bold_green:(.*?)}}/, "\x1b[1;32m\\1\x1b[0;31m")
17
+ "\x1b[1;31m[#{tag}] \x1b[0;31m#{fmt_msg}\x1b[0m"
18
+ end
19
+
20
+ def bail(msg)
21
+ STDERR.puts(fmt("ERROR", msg))
22
+ exit 1
23
+ end
24
+
25
+ def warn(msg)
26
+ STDERR.puts(fmt("WARNING", msg))
27
+ end
28
+
29
+ def source_path
30
+ File.expand_path(ENV.fetch('SOURCE_ROOT', File.expand_path('../../..', __FILE__)))
31
+ end
32
+
33
+ deps = %w(cli-ui cli-kit)
34
+
35
+ deps.each do |dep|
36
+ path = File.expand_path(dep, source_path)
37
+
38
+ unless Dir.exist?(path)
39
+ bail(
40
+ "dependency is not checked out: {{yellow:#{dep}}}.\n" \
41
+ " This repo {{bold_blue:(github.com/shopify/#{dep})}} must be cloned at {{bold_blue:#{path}}} for this script to succeed.\n" \
42
+ " Currently, SOURCE_ROOT is set to {{bold_blue:#{source_path}}}.\n" \
43
+ " Alternatively, you can set {{bold_blue:SOURCE_ROOT}} to a directory containing {{yellow:#{dep}}}.\n" \
44
+ " {{bold_blue:SOURCE_ROOT}} defaults to {{bold_blue:../}}."
45
+ )
46
+ end
47
+
48
+ head_sha = nil
49
+ dirty = false
50
+
51
+ Dir.chdir(path) do
52
+ _, _, stat = Open3.capture3('git fetch origin main')
53
+ bail("couldn't git fetch in dependency: {{yellow:#{dep}}}") unless stat.success?
54
+
55
+ head_sha, stat = Open3.capture2('git rev-parse HEAD')
56
+ bail("couldn't determine HEAD: {{yellow:#{dep}}}") unless stat.success?
57
+ head_sha.chomp!
58
+
59
+ fetch_head_sha, stat = Open3.capture2('git rev-parse FETCH_HEAD')
60
+ bail("couldn't determine FETCH_HEAD: {{yellow:#{dep}}}") unless stat.success?
61
+ fetch_head_sha.chomp!
62
+
63
+ git_status, stat = Open3.capture2('git status --porcelain')
64
+ bail("couldn't determine git status: {{yellow:#{dep}}}") unless stat.success?
65
+
66
+ if head_sha != fetch_head_sha
67
+ warn(
68
+ "Copying files from {{yellow:#{path}}} to satisfy dependency {{yellow:#{dep}}}.\n" \
69
+ " However, the repo at {{yellow:#{path}}} isn't up to date.\n" \
70
+ " The checked-out revision is {{yellow:#{head_sha[0..8]}}}, and "\
71
+ "{{yellow:origin/master}} is {{yellow:#{fetch_head_sha[0..8]}}}.\n" \
72
+ " Unless you know what you're doing, you should {{green:cd}} to that repo and {{green:git pull}}, then run this again."
73
+ )
74
+ end
75
+
76
+ unless git_status.chomp.empty?
77
+ dirty = true
78
+ warn("importing uncommitted changes from dependency: {{yellow:#{dep}}}")
79
+ end
80
+ end
81
+
82
+ depdir = File.expand_path("../../vendor/deps/#{dep}", __FILE__)
83
+ FileUtils.rm_rf(depdir)
84
+ FileUtils.mkdir_p(depdir)
85
+ dstlib = File.expand_path('lib', depdir)
86
+ srclib = File.expand_path('lib', path)
87
+
88
+ FileUtils.cp_r(srclib, dstlib)
89
+
90
+ rev = head_sha
91
+ rev << " (dirty)" if dirty
92
+ rev << "\n"
93
+
94
+ File.write("#{depdir}/REVISION", rev)
95
+ end
data/exe/gorails CHANGED
@@ -7,9 +7,10 @@ unshift_path = ->(path) {
7
7
  p = File.expand_path("../../#{path}", __FILE__)
8
8
  $LOAD_PATH.unshift(p) unless $LOAD_PATH.include?(p)
9
9
  }
10
+ unshift_path.call("vendor/deps/cli-ui/lib")
11
+ unshift_path.call("vendor/deps/cli-kit/lib")
10
12
  unshift_path.call("lib")
11
13
 
12
- require "bundler/setup"
13
14
  require "gorails"
14
15
 
15
16
  exit(Gorails::ErrorHandler.call do
data/gorails.gemspec CHANGED
@@ -29,8 +29,6 @@ Gem::Specification.new do |spec|
29
29
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
30
30
  spec.require_paths = ["lib"]
31
31
 
32
- spec.add_dependency "cli-kit", "~> 4.0.0"
33
- spec.add_dependency "cli-ui", "~> 1.5.1"
34
32
  spec.add_development_dependency "standard"
35
33
 
36
34
  # For more information and examples about making a new gem, checkout our
@@ -1,11 +1,29 @@
1
1
  require "gorails"
2
- require "net/http"
2
+ require "bundler"
3
3
  require "json"
4
+ require "net/http"
4
5
 
5
6
  module Gorails
6
7
  module Commands
7
8
  class Railsbytes < Gorails::Command
8
- def call(_args, _name)
9
+ def call(args, _name)
10
+ if args.none?
11
+ list
12
+ else
13
+ apply(args.first)
14
+ end
15
+ end
16
+
17
+ def self.help
18
+ <<~EOF
19
+ View the latest Railsbytes templates or load a template by ID.
20
+ Usage:
21
+ {{command:#{Gorails::TOOL_NAME} railsbytes}}
22
+ {{command:#{Gorails::TOOL_NAME} railsbytes x7msKX}}
23
+ EOF
24
+ end
25
+
26
+ def list
9
27
  bytes = JSON.parse Net::HTTP.get(URI("https://railsbytes.com/public/templates.json"))
10
28
 
11
29
  CLI::UI::Frame.open("Railsbytes") do
@@ -18,8 +36,31 @@ module Gorails
18
36
  end
19
37
  end
20
38
 
21
- def self.help
22
- "View the latest Railsbytes templates.\nUsage: {{command:#{Gorails::TOOL_NAME} railsbytes}}"
39
+ def apply(id)
40
+ byte = JSON.parse Net::HTTP.get(URI("https://railsbytes.com/public/templates/#{id}.json"))
41
+
42
+ CLI::UI::Frame.open("Railsbyte") do
43
+ puts CLI::UI.fmt "{{green:#{byte["name"]}}} by #{byte["created_by"]}"
44
+ puts byte["short_description"]
45
+ puts
46
+
47
+ CLI::UI::Prompt.ask("What would you like to do?") do |handler|
48
+ handler.option("Apply Railsbyte") do |selection|
49
+ puts
50
+ puts "Running Railsbyte..."
51
+ puts
52
+
53
+ system "rails app:template LOCATION=\"https://railsbytes.com/script/#{id}\""
54
+ end
55
+
56
+ handler.option("View source") do |selection|
57
+ puts
58
+ puts byte["script"]
59
+ end
60
+
61
+ handler.option("Exit") { |selection| exit 0 }
62
+ end
63
+ end
23
64
  end
24
65
  end
25
66
  end
@@ -0,0 +1,15 @@
1
+ require "gorails"
2
+
3
+ module Gorails
4
+ module Commands
5
+ class Example < Gorails::Command
6
+ def call(_args, _name)
7
+ puts VERSION
8
+ end
9
+
10
+ def self.help
11
+ "Prints the version.\nUsage: {{command:#{Gorails::TOOL_NAME} version}}"
12
+ end
13
+ end
14
+ end
15
+ end
@@ -2,10 +2,7 @@ require "gorails"
2
2
 
3
3
  module Gorails
4
4
  module Commands
5
- Registry = CLI::Kit::CommandRegistry.new(
6
- default: "help",
7
- contextual_resolver: nil
8
- )
5
+ Registry = CLI::Kit::CommandRegistry.new(default: "help")
9
6
 
10
7
  def self.register(const, cmd, path)
11
8
  autoload(const, path)
@@ -16,7 +13,7 @@ module Gorails
16
13
  register :Jobs, "jobs", "gorails/commands/jobs"
17
14
  register :Jumpstart, "jumpstart", "gorails/commands/jumpstart"
18
15
  register :Railsbytes, "railsbytes", "gorails/commands/railsbytes"
19
- # register :Example, 'example', 'gorails/commands/example'
16
+ register :Version, "version", "gorails/commands/version"
20
17
  register :Help, "help", "gorails/commands/help"
21
18
  end
22
19
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Gorails
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.4"
5
5
  end
data/lib/gorails.rb CHANGED
@@ -9,30 +9,21 @@ CLI::UI::StdoutRouter.enable
9
9
  module Gorails
10
10
  class Error < StandardError; end
11
11
 
12
- extend CLI::Kit::Autocall
13
-
14
12
  TOOL_NAME = "gorails"
15
13
  ROOT = File.expand_path("../..", __FILE__)
16
- LOG_FILE = "/tmp/myproject.log"
14
+ LOG_FILE = "/tmp/gorails.log"
17
15
 
18
16
  autoload(:EntryPoint, "gorails/entry_point")
19
17
  autoload(:Commands, "gorails/commands")
20
18
 
21
- autocall(:Config) { CLI::Kit::Config.new(tool_name: TOOL_NAME) }
22
- autocall(:Command) { CLI::Kit::BaseCommand }
23
-
24
- autocall(:Executor) { CLI::Kit::Executor.new(log_file: LOG_FILE) }
25
- autocall(:Resolver) do
26
- CLI::Kit::Resolver.new(
27
- tool_name: TOOL_NAME,
28
- command_registry: Gorails::Commands::Registry
29
- )
30
- end
31
-
32
- autocall(:ErrorHandler) do
33
- CLI::Kit::ErrorHandler.new(
34
- log_file: LOG_FILE,
35
- exception_reporter: nil
36
- )
37
- end
19
+ Config = CLI::Kit::Config.new(tool_name: TOOL_NAME)
20
+ Command = CLI::Kit::BaseCommand
21
+
22
+ Executor = CLI::Kit::Executor.new(log_file: LOG_FILE)
23
+ Resolver = CLI::Kit::Resolver.new(
24
+ tool_name: TOOL_NAME,
25
+ command_registry: Gorails::Commands::Registry
26
+ )
27
+
28
+ ErrorHandler = CLI::Kit::ErrorHandler.new(log_file: LOG_FILE)
38
29
  end
@@ -0,0 +1 @@
1
+ 635eab627526f34c7ce15d2c894633246493b1a4