tomo 1.19.0 → 1.20.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 (137) hide show
  1. checksums.yaml +4 -4
  2. data/exe/tomo +1 -0
  3. data/lib/tomo/cli/command.rb +2 -0
  4. data/lib/tomo/cli/common_options.rb +2 -0
  5. data/lib/tomo/cli/completions.rb +2 -0
  6. data/lib/tomo/cli/deploy_options.rb +2 -0
  7. data/lib/tomo/cli/error.rb +2 -0
  8. data/lib/tomo/cli/interrupted_error.rb +2 -0
  9. data/lib/tomo/cli/options.rb +2 -0
  10. data/lib/tomo/cli/parser.rb +2 -0
  11. data/lib/tomo/cli/project_options.rb +2 -0
  12. data/lib/tomo/cli/rules/argument.rb +2 -0
  13. data/lib/tomo/cli/rules/switch.rb +2 -0
  14. data/lib/tomo/cli/rules/value_switch.rb +2 -0
  15. data/lib/tomo/cli/rules.rb +2 -0
  16. data/lib/tomo/cli/rules_evaluator.rb +2 -0
  17. data/lib/tomo/cli/state.rb +2 -0
  18. data/lib/tomo/cli/usage.rb +2 -0
  19. data/lib/tomo/cli.rb +2 -0
  20. data/lib/tomo/colors.rb +2 -0
  21. data/lib/tomo/commands/completion_script.rb +2 -0
  22. data/lib/tomo/commands/default.rb +2 -0
  23. data/lib/tomo/commands/deploy.rb +2 -0
  24. data/lib/tomo/commands/help.rb +2 -0
  25. data/lib/tomo/commands/init.rb +2 -0
  26. data/lib/tomo/commands/run.rb +2 -0
  27. data/lib/tomo/commands/setup.rb +2 -0
  28. data/lib/tomo/commands/tasks.rb +2 -0
  29. data/lib/tomo/commands/version.rb +2 -0
  30. data/lib/tomo/commands.rb +2 -0
  31. data/lib/tomo/configuration/dsl/batch_block.rb +2 -0
  32. data/lib/tomo/configuration/dsl/config_file.rb +2 -0
  33. data/lib/tomo/configuration/dsl/environment_block.rb +2 -0
  34. data/lib/tomo/configuration/dsl/error_formatter.rb +3 -1
  35. data/lib/tomo/configuration/dsl/hosts_and_settings.rb +2 -0
  36. data/lib/tomo/configuration/dsl/tasks_block.rb +2 -0
  37. data/lib/tomo/configuration/dsl.rb +2 -0
  38. data/lib/tomo/configuration/environment.rb +2 -0
  39. data/lib/tomo/configuration/glob.rb +2 -0
  40. data/lib/tomo/configuration/plugin_file_not_found_error.rb +2 -0
  41. data/lib/tomo/configuration/plugins_registry/file_resolver.rb +2 -0
  42. data/lib/tomo/configuration/plugins_registry/gem_resolver.rb +3 -1
  43. data/lib/tomo/configuration/plugins_registry.rb +2 -0
  44. data/lib/tomo/configuration/project_not_found_error.rb +2 -0
  45. data/lib/tomo/configuration/role_based_task_filter.rb +2 -0
  46. data/lib/tomo/configuration/unknown_environment_error.rb +4 -2
  47. data/lib/tomo/configuration/unknown_plugin_error.rb +4 -2
  48. data/lib/tomo/configuration/unspecified_environment_error.rb +2 -0
  49. data/lib/tomo/configuration.rb +2 -0
  50. data/lib/tomo/console/key_reader.rb +4 -2
  51. data/lib/tomo/console/menu.rb +6 -4
  52. data/lib/tomo/console/non_interactive_error.rb +4 -2
  53. data/lib/tomo/console.rb +2 -0
  54. data/lib/tomo/error/suggestions.rb +2 -0
  55. data/lib/tomo/error.rb +2 -0
  56. data/lib/tomo/host.rb +2 -0
  57. data/lib/tomo/logger/tagged_io.rb +2 -0
  58. data/lib/tomo/logger.rb +2 -0
  59. data/lib/tomo/path.rb +2 -0
  60. data/lib/tomo/paths.rb +2 -0
  61. data/lib/tomo/plugin/bundler/helpers.rb +2 -0
  62. data/lib/tomo/plugin/bundler/tasks.rb +2 -0
  63. data/lib/tomo/plugin/bundler.rb +2 -0
  64. data/lib/tomo/plugin/core/helpers.rb +2 -0
  65. data/lib/tomo/plugin/core/tasks.rb +2 -0
  66. data/lib/tomo/plugin/core.rb +2 -0
  67. data/lib/tomo/plugin/env/tasks.rb +2 -0
  68. data/lib/tomo/plugin/env.rb +2 -0
  69. data/lib/tomo/plugin/git/helpers.rb +2 -0
  70. data/lib/tomo/plugin/git/tasks.rb +2 -0
  71. data/lib/tomo/plugin/git.rb +2 -0
  72. data/lib/tomo/plugin/nodenv/tasks.rb +2 -0
  73. data/lib/tomo/plugin/nodenv.rb +2 -0
  74. data/lib/tomo/plugin/puma/tasks.rb +2 -0
  75. data/lib/tomo/plugin/puma.rb +2 -0
  76. data/lib/tomo/plugin/rails/helpers.rb +2 -0
  77. data/lib/tomo/plugin/rails/tasks.rb +2 -0
  78. data/lib/tomo/plugin/rails.rb +2 -0
  79. data/lib/tomo/plugin/rbenv/tasks.rb +2 -0
  80. data/lib/tomo/plugin/rbenv.rb +2 -0
  81. data/lib/tomo/plugin/testing.rb +2 -0
  82. data/lib/tomo/plugin.rb +2 -0
  83. data/lib/tomo/plugin_dsl.rb +2 -0
  84. data/lib/tomo/remote.rb +2 -0
  85. data/lib/tomo/result.rb +3 -1
  86. data/lib/tomo/runtime/concurrent_ruby_load_error.rb +2 -0
  87. data/lib/tomo/runtime/concurrent_ruby_thread_pool.rb +2 -0
  88. data/lib/tomo/runtime/context.rb +2 -0
  89. data/lib/tomo/runtime/current.rb +2 -0
  90. data/lib/tomo/runtime/execution_plan.rb +2 -0
  91. data/lib/tomo/runtime/explanation.rb +3 -1
  92. data/lib/tomo/runtime/host_execution_step.rb +2 -0
  93. data/lib/tomo/runtime/inline_thread_pool.rb +2 -0
  94. data/lib/tomo/runtime/no_tasks_error.rb +2 -0
  95. data/lib/tomo/runtime/privileged_task.rb +2 -0
  96. data/lib/tomo/runtime/settings_interpolation.rb +3 -1
  97. data/lib/tomo/runtime/settings_required_error.rb +3 -1
  98. data/lib/tomo/runtime/task_aborted_error.rb +2 -0
  99. data/lib/tomo/runtime/task_runner.rb +2 -0
  100. data/lib/tomo/runtime/template_not_found_error.rb +2 -0
  101. data/lib/tomo/runtime/unknown_task_error.rb +3 -1
  102. data/lib/tomo/runtime.rb +2 -0
  103. data/lib/tomo/script.rb +2 -0
  104. data/lib/tomo/shell_builder.rb +2 -0
  105. data/lib/tomo/ssh/child_process.rb +2 -0
  106. data/lib/tomo/ssh/connection.rb +2 -0
  107. data/lib/tomo/ssh/connection_error.rb +2 -0
  108. data/lib/tomo/ssh/connection_validator.rb +2 -0
  109. data/lib/tomo/ssh/error.rb +2 -0
  110. data/lib/tomo/ssh/executable_error.rb +2 -0
  111. data/lib/tomo/ssh/options.rb +4 -2
  112. data/lib/tomo/ssh/permission_error.rb +2 -0
  113. data/lib/tomo/ssh/script_error.rb +2 -0
  114. data/lib/tomo/ssh/unknown_error.rb +2 -0
  115. data/lib/tomo/ssh/unsupported_version_error.rb +2 -0
  116. data/lib/tomo/ssh.rb +2 -0
  117. data/lib/tomo/task_api.rb +2 -0
  118. data/lib/tomo/task_library.rb +2 -0
  119. data/lib/tomo/testing/Dockerfile +1 -1
  120. data/lib/tomo/testing/cli_extensions.rb +2 -0
  121. data/lib/tomo/testing/cli_tester.rb +2 -0
  122. data/lib/tomo/testing/connection.rb +2 -0
  123. data/lib/tomo/testing/docker_image.rb +4 -2
  124. data/lib/tomo/testing/host_extensions.rb +3 -1
  125. data/lib/tomo/testing/local.rb +2 -0
  126. data/lib/tomo/testing/log_capturing.rb +2 -0
  127. data/lib/tomo/testing/mock_plugin_tester.rb +2 -0
  128. data/lib/tomo/testing/mocked_exec_error.rb +2 -0
  129. data/lib/tomo/testing/mocked_exit_error.rb +2 -0
  130. data/lib/tomo/testing/remote_extensions.rb +2 -0
  131. data/lib/tomo/testing/ssh_extensions.rb +2 -0
  132. data/lib/tomo/testing/systemctl.rb +1 -0
  133. data/lib/tomo/testing/ubuntu_setup.sh +3 -1
  134. data/lib/tomo/testing.rb +2 -0
  135. data/lib/tomo/version.rb +3 -1
  136. data/lib/tomo.rb +3 -1
  137. metadata +3 -3
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "shellwords"
2
4
 
3
5
  module Tomo::Plugin::Rbenv
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require_relative "rbenv/tasks"
2
4
 
3
5
  module Tomo::Plugin
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  raise "The testing plugin cannot be used outside of unit tests" unless defined?(Tomo::Testing)
2
4
 
3
5
  module Tomo::Plugin
data/lib/tomo/plugin.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Plugin
3
5
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module PluginDSL
3
5
  def self.extended(mod)
data/lib/tomo/remote.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "forwardable"
2
4
 
3
5
  module Tomo
data/lib/tomo/result.rb CHANGED
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Result
3
5
  def self.empty_success
4
- new(stdout: "", stderr: "", exit_status: 0)
6
+ new(stdout: +"", stderr: +"", exit_status: 0)
5
7
  end
6
8
 
7
9
  attr_reader :stdout, :stderr, :exit_status
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class ConcurrentRubyLoadError < Tomo::Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  concurrent_ver = "~> 1.1"
2
4
 
3
5
  begin
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class Context
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  module Current
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "forwardable"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class Explanation
@@ -22,7 +24,7 @@ module Tomo
22
24
  indent = threads > 1 ? " = " : ""
23
25
  if threads > 1 && step.applicable_tasks.length > 1
24
26
  desc << "#{indent}IN SEQUENCE:"
25
- indent.sub!("=", " ")
27
+ indent = indent.sub("=", " ")
26
28
  end
27
29
  desc << step.explain.gsub(/^/, indent)
28
30
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class HostExecutionStep
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class InlineThreadPool
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class NoTasksError < Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  module PrivilegedTask
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class SettingsInterpolation
@@ -40,7 +42,7 @@ module Tomo
40
42
 
41
43
  def dump_settings(hash)
42
44
  key_len = hash.keys.map { |k| k.to_s.length }.max
43
- dump = "Settings: {\n"
45
+ dump = +"Settings: {\n"
44
46
  hash.to_a.sort_by(&:first).each do |key, value|
45
47
  justified_key = "#{key}:".ljust(key_len + 1)
46
48
  dump << " #{justified_key} #{value.inspect},\n"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class SettingsRequiredError < Tomo::Error
@@ -24,7 +26,7 @@ module Tomo
24
26
  return "a value for the #{yellow(settings.first.to_s)} setting." if settings.length == 1
25
27
 
26
28
  sentence = "values for these settings:\n\n "
27
- sentence << settings.map { |s| yellow(s.to_s) }.join("\n ")
29
+ sentence + settings.map { |s| yellow(s.to_s) }.join("\n ")
28
30
  end
29
31
  end
30
32
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class TaskAbortedError < Tomo::Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class TaskRunner
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class TemplateNotFoundError < Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Runtime
3
5
  class UnknownTaskError < Error
@@ -10,7 +12,7 @@ module Tomo
10
12
  ERROR
11
13
 
12
14
  sugg = spelling_suggestion || missing_plugin_suggestion
13
- error << sugg if sugg
15
+ error += sugg if sugg
14
16
  error
15
17
  end
16
18
 
data/lib/tomo/runtime.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "time"
2
4
 
3
5
  module Tomo
data/lib/tomo/script.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class Script
3
5
  attr_reader :script
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "shellwords"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "open3"
2
4
  require "shellwords"
3
5
  require "stringio"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "fileutils"
2
4
  require "securerandom"
3
5
  require "tmpdir"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class ConnectionError < Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "forwardable"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class Error < Tomo::Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class ExecutableError < Error
@@ -1,13 +1,15 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class Options
4
6
  DEFAULTS = {
5
7
  ssh_connect_timeout: 5,
6
- ssh_executable: "ssh".freeze,
8
+ ssh_executable: "ssh",
7
9
  ssh_extra_opts: %w[-o PasswordAuthentication=no].map(&:freeze),
8
10
  ssh_forward_agent: true,
9
11
  ssh_reuse_connections: true,
10
- ssh_strict_host_key_checking: "accept-new".freeze
12
+ ssh_strict_host_key_checking: "accept-new"
11
13
  }.freeze
12
14
 
13
15
  attr_reader :executable
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class PermissionError < Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "shellwords"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class UnknownError < Error
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  class UnsupportedVersionError < Error
data/lib/tomo/ssh.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module SSH
3
5
  autoload :ChildProcess, "tomo/ssh/child_process"
data/lib/tomo/task_api.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "erb"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  class TaskLibrary
3
5
  include TaskAPI
@@ -1,4 +1,4 @@
1
- FROM ubuntu:22.04
1
+ FROM ubuntu:24.04
2
2
  WORKDIR /provision
3
3
  COPY ./tomo_test_ed25519.pub /root/.ssh/authorized_keys
4
4
  COPY ./ubuntu_setup.sh ./
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  module CLIExtensions
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "securerandom"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  class Connection < Tomo::SSH::Connection
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "fileutils"
2
4
  require "open3"
3
5
  require "securerandom"
@@ -69,8 +71,8 @@ module Tomo
69
71
  attr_reader :container_id, :image_id, :private_key_path
70
72
 
71
73
  def pull_base_image_if_needed
72
- images = Local.capture('docker images --format "{{.ID}}" ubuntu:22.04')
73
- Local.capture("docker pull ubuntu:22.04") if images.strip.empty?
74
+ images = Local.capture('docker images --format "{{.ID}}" ubuntu:24.04')
75
+ Local.capture("docker pull ubuntu:24.04") if images.strip.empty?
74
76
  end
75
77
 
76
78
  def set_up_private_key
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  module HostExtensions
@@ -14,7 +16,7 @@ module Tomo
14
16
  def mock(script, stdout: "", stderr: "", exit_status: 0)
15
17
  mocks << [
16
18
  script.is_a?(Regexp) ? script : /\A#{Regexp.quote(script)}\z/,
17
- Result.new(stdout:, stderr:, exit_status:)
19
+ Result.new(stdout: String.new(stdout), stderr: String.new(stderr), exit_status:)
18
20
  ]
19
21
  end
20
22
 
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "bundler"
2
4
  require "fileutils"
3
5
  require "open3"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "stringio"
2
4
 
3
5
  module Tomo
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  class MockPluginTester
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  class MockedExecError < Exception # rubocop:disable Lint/InheritException
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  class MockedExitError < Exception # rubocop:disable Lint/InheritException
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  module RemoteExtensions
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  module Testing
3
5
  module SSHExtensions
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  # THIS SCRIPT IS FOR TESTING PURPOSES ONLY.
4
5
  #
@@ -4,6 +4,9 @@ set -e
4
4
 
5
5
  export DEBIAN_FRONTEND=noninteractive
6
6
 
7
+ apt-get -y update
8
+ apt-get -y install adduser
9
+
7
10
  # Create `deployer` user
8
11
  adduser --disabled-password deployer < /dev/null
9
12
  mkdir -p /home/deployer/.ssh
@@ -16,7 +19,6 @@ mkdir -p /var/lib/systemd/linger
16
19
  touch /var/lib/systemd/linger/deployer
17
20
 
18
21
  # Packages needed for ruby, etc.
19
- apt-get -y update
20
22
  apt-get -y install autoconf \
21
23
  bison \
22
24
  build-essential \
data/lib/tomo/testing.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "tomo"
2
4
 
3
5
  module Tomo
data/lib/tomo/version.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
- VERSION = "1.19.0".freeze
4
+ VERSION = "1.20.0"
3
5
  end
data/lib/tomo.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Tomo
2
4
  autoload :CLI, "tomo/cli"
3
5
  autoload :Colors, "tomo/colors"
@@ -21,7 +23,7 @@ module Tomo
21
23
  autoload :TaskLibrary, "tomo/task_library"
22
24
  autoload :VERSION, "tomo/version"
23
25
 
24
- DEFAULT_CONFIG_PATH = ".tomo/config.rb".freeze
26
+ DEFAULT_CONFIG_PATH = ".tomo/config.rb"
25
27
 
26
28
  class << self
27
29
  attr_accessor :logger
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tomo
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.19.0
4
+ version: 1.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Brictson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-05-25 00:00:00.000000000 Z
11
+ date: 2024-09-01 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Tomo is a feature-rich deployment tool that contains everything you need
14
14
  to deploy a basic Rails app out of the box. It has an opinionated, production-tested
@@ -190,7 +190,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
190
190
  - !ruby/object:Gem::Version
191
191
  version: '0'
192
192
  requirements: []
193
- rubygems_version: 3.5.10
193
+ rubygems_version: 3.5.18
194
194
  signing_key:
195
195
  specification_version: 4
196
196
  summary: A friendly CLI for deploying Rails apps ✨