smdev 1.2.3 → 1.2.5

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 (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/smdev/ecs_exec.rb +4 -0
  3. data/lib/smdev.rb +17 -7
  4. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e21d8eb42f80e6005ce00244fe18ce79f8a5fad1b75c83d5d578d1927b9ff867
4
- data.tar.gz: 8772f52b12dacf7f1577f9881107f9bef50f6e9fd91b7aa7a33f6b007414451b
3
+ metadata.gz: ee28d697e2b82486decd42d14faa569d499a0552bde90a916f2f6e0d605183cd
4
+ data.tar.gz: 96a08be708116581fe4debad8f3793fb1258738a184ecc0a5b1fad1caa73d8b9
5
5
  SHA512:
6
- metadata.gz: 502d04e0a73a55d646991c9861babcbe07e3ec46c43af8bef5139ca154aec6004c4e3a995123f0ec828e6834a2920a23cb588b1e588fa909723ed5deeec014ad
7
- data.tar.gz: d7e5d1806307af35536a1d4aa90a56fc12b562331237632cc611bb2a05e15e802a2f7fe6f651b266b65581378ae201e6f9b497d1771d4bac8a8a9c932cc3c606
6
+ metadata.gz: 45b42907d43ffe880a9d54fad804349b30fa6500c88f439438bc24db0e5fd110cec6a4cb60510040f4be192ddd4b60c063adc72aacb2616b5a02e52c8d8a6e1a
7
+ data.tar.gz: 4cd7c23ca2ad6a4fafb24db28df1c31e81bb9ed40445edbc2b07be92e378537964196822051c89f23ab30b972060ad51cccf5cf9425c62ab7bc3a3774ab5957d
@@ -11,11 +11,15 @@ module Smdev
11
11
 
12
12
  task_arn = self.task_arn(cluster_name, service_name)
13
13
  command = options[:command]
14
+
15
+ # Container name defaults to the service name (for multi-container tasks)
16
+ container_name = options[:container] || service_name
14
17
 
15
18
  execute_command_cmd = %W[
16
19
  aws ecs execute-command
17
20
  --cluster #{cluster_name}
18
21
  --task #{task_arn}
22
+ --container #{container_name}
19
23
  --interactive
20
24
  --command \"#{command}\"
21
25
  ].join(' ')
data/lib/smdev.rb CHANGED
@@ -73,6 +73,12 @@ module Smdev
73
73
  parser.on("--service SERVICE", "Specify ECS service for console/ssh commands") do |service|
74
74
  options[:service] = service
75
75
  end
76
+ parser.on("--container CONTAINER", "Specify container name for multi-container tasks (defaults to service name)") do |container|
77
+ options[:container] = container
78
+ end
79
+ parser.on("--writable", "Make Rails console session writable (disable sandbox mode)") do
80
+ options[:writable] = true
81
+ end
76
82
  end.parse!
77
83
  options
78
84
  end
@@ -104,16 +110,20 @@ module Smdev
104
110
  puts "OPTIONS:"
105
111
  puts " -h, --help - Show this help message"
106
112
  puts " -s, --https - Use HTTPS instead of SSH for git operations"
107
- puts " -t, --team TEAM - Specify team name for repository operations"
108
- puts " --cluster CLUSTER - Specify ECS cluster for console/ssh commands"
109
- puts " --service SERVICE - Specify ECS service for console/ssh commands (default: prod-worker)"
113
+ puts " -t, --team TEAM - Specify team name for repository operations"
114
+ puts " --cluster CLUSTER - Specify ECS cluster for console/ssh commands"
115
+ puts " --service SERVICE - Specify ECS service for console/ssh commands (default: prod-worker)"
116
+ puts " --container CONTAINER - Specify container name for multi-container tasks (defaults to service name)"
117
+ puts " --writable - Make Rails console session writable (disable sandbox mode)"
110
118
  puts ""
111
119
  puts "EXAMPLES:"
112
120
  puts " smdev local_app_setup # Set up local development environment"
113
121
  puts " smdev clone_repos --team \"Backend Team\" # Clone repos for specific team"
114
- puts " smdev update_repos --https # Update repos using HTTPS"
115
- puts " smdev console --cluster my-cluster # Open Rails console in specific cluster"
116
- puts " smdev ssh --service worker --cluster prod # SSH into worker service in prod cluster"
122
+ puts " smdev update_repos --https # Update repos using HTTPS"
123
+ puts " smdev console --cluster my-cluster # Open Rails console in specific cluster (sandbox mode)"
124
+ puts " smdev console --cluster central-stage --service central-stage-worker # Open Rails console in central stage worker (sandbox mode)"
125
+ puts " smdev console --cluster my-cluster --writable # Open Rails console in writable mode"
126
+ puts " smdev ssh --service worker --cluster prod # SSH into worker service in prod cluster"
117
127
  puts " smdev pr_critic # Analyze pull requests"
118
128
  puts " smdev update cursor # Update cursor rules"
119
129
  end
@@ -153,7 +163,7 @@ module Smdev
153
163
  end
154
164
 
155
165
  def execute_console(options)
156
- options[:command] = "rails c"
166
+ options[:command] = options[:writable] ? "rails c" : "rails c --sandbox"
157
167
  open_ssh(options)
158
168
  end
159
169
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smdev
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.3
4
+ version: 1.2.5
5
5
  platform: ruby
6
6
  authors:
7
- - Derek Neighbors
7
+ - StrongMind
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-24 00:00:00.000000000 Z
11
+ date: 2025-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colorize
@@ -81,7 +81,7 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0.2'
83
83
  description: Collection of tools for StrongMind development
84
- email: derek.neighbors@strongmind.com
84
+ email: vendor@strongmind.com
85
85
  executables:
86
86
  - smdev
87
87
  extensions: []