sct 1.0.4 → 1.0.5

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: 06a1549735471b58e3b71a78c178d20f2b0286ab56aa033ec38939e72e753136
4
- data.tar.gz: 03b53faf4b186f00b8ed7e90472987bf996f1bc0c7dfdfdaa99d2d312fdb1bcb
3
+ metadata.gz: 14d8446d9ad177cfe1423a229687670d9731830389539014fda62491d09ca054
4
+ data.tar.gz: fa3083af252bb67c0b776d270a69b29605e6ce33e06cfe8b6625998ab0cff29a
5
5
  SHA512:
6
- metadata.gz: e3774e0a9a48e460aaa4beaec523337f91b3f2e8c14d25175cb7af2cb74e3779da9daae1546af322afa3871ad3d77445cb63186b30a0dcc444c2b3747e91919c
7
- data.tar.gz: 85b8be2a234f769f590ba26ff80ddff7736603427b54a75abfee25a05e28a524ed3f955a3c64f7446a91d7a9a0ec3acce9dce2cb50d590f8e1de4c4c3bed94d1
6
+ metadata.gz: d62a9c18d78ce4a821d32cb0848c4bbc2dc88e1ca526f7600c1bb8b7945a36522f157e94a365036cc68e7549ae76f90368d2c54a1335b43d2cc2233c4c354d54
7
+ data.tar.gz: 98381741d7493183b420c176843062d005b8f6620d0a67ce0739d53da77ae2bf11c73c60817b2a0965dfd41a338a249446ec482ee27ba465f8b92708cb768db8
@@ -1,6 +1,6 @@
1
1
  module Sct
2
2
  class CLIToolsDistributor
3
- class << self
3
+ class << self
4
4
  def take_off
5
5
  require 'sct'
6
6
 
@@ -8,18 +8,18 @@ module Sct
8
8
 
9
9
  if tool_name && Sct::TOOLS.include?(tool_name.to_sym)
10
10
  # Triggering a specific tool
11
-
11
+
12
12
  require tool_name
13
13
  begin
14
14
  # First, remove the tool's name from the arguments
15
15
  # Since it will be parsed by the `commander` at a later point
16
16
  # and it must not contain the binary name
17
17
  ARGV.shift
18
-
18
+
19
19
  # Import the CommandsGenerator class, which is used to parse
20
20
  # the user input
21
21
  require File.join(tool_name, "commands_generator")
22
-
22
+
23
23
  # Call the tool's CommandsGenerator class and let it do its thing
24
24
  commands_generator = Object.const_get(tool_name.sct_module)::CommandsGenerator
25
25
  rescue LoadError
@@ -28,15 +28,15 @@ module Sct
28
28
  # When we launch this feature, this should never be the case
29
29
  abort("#{tool_name} can't be called via `sct #{tool_name}`, run '#{tool_name}' directly instead".red)
30
30
  end
31
-
31
+
32
32
  # Some of the tools might use other actions so need to load all
33
33
  # actions before we start the tool generator here in the future
34
34
  Sct.load_actions
35
-
35
+
36
36
  # trigger start on tool
37
37
  commands_generator.start
38
38
 
39
- else
39
+ else
40
40
  require "sct/commands_generator"
41
41
  Sct::CommandsGenerator.start
42
42
  end
@@ -47,4 +47,4 @@ module Sct
47
47
 
48
48
  end
49
49
  end
50
- end
50
+ end
@@ -1,15 +1,15 @@
1
1
  require 'yaml'
2
2
 
3
- module Shell
4
- class Runner
3
+ module Sct
4
+ class ShellCommand
5
5
 
6
6
  def error message
7
7
  UI.error message
8
8
  exit 1
9
9
  end
10
10
 
11
- def launch
12
- command = ARGV.empty? ? "sh" : ARGV.join(" ")
11
+ def execute args, options
12
+ command = args.empty? ? "sh" : args.join(" ")
13
13
 
14
14
  file = "docker-compose.dev.yml"
15
15
 
@@ -41,7 +41,9 @@ module Shell
41
41
  end
42
42
  end
43
43
 
44
- system "docker exec -it --user $(id -u):$(id -g) #{container} #{command}"
44
+ user = options.root ? "root:root" : "$(id -u):$(id -g)"
45
+
46
+ system "docker exec -it --user #{user} #{container} #{command}"
45
47
  end
46
48
 
47
49
  end
@@ -35,6 +35,11 @@ module Sct
35
35
  command :'shell' do |c|
36
36
  c.syntax = 'sct shell'
37
37
  c.description = 'run commands from the shell using docker containers'
38
+ c.option '--root', 'run as root user in the container'
39
+
40
+ c.action do |args, options|
41
+ Sct::ShellCommand.new.execute args, options
42
+ end
38
43
  end
39
44
 
40
45
  command :'dev' do |c|
data/sct/lib/sct/tools.rb CHANGED
@@ -1,12 +1,9 @@
1
1
  module Sct
2
2
  TOOLS = [
3
3
  :sct,
4
- :shell,
5
4
  :cluster
6
5
  ]
7
-
6
+
8
7
  # a list of all the config files we currently expect
9
- TOOL_CONFIG_FILES = [
10
-
11
- ]
12
- end
8
+ TOOL_CONFIG_FILES = []
9
+ end
@@ -1,3 +1,3 @@
1
1
  module Sct
2
- VERSION = "1.0.4"
2
+ VERSION = "1.0.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sct
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Reshad Farid
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-01 00:00:00.000000000 Z
11
+ date: 2021-04-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: colored
@@ -208,6 +208,7 @@ files:
208
208
  - sct/lib/sct/command.rb
209
209
  - sct/lib/sct/commands/dev.rb
210
210
  - sct/lib/sct/commands/mysqlproxy.rb
211
+ - sct/lib/sct/commands/shell.rb
211
212
  - sct/lib/sct/commands_generator.rb
212
213
  - sct/lib/sct/tools.rb
213
214
  - sct/lib/sct/version.rb
@@ -223,10 +224,6 @@ files:
223
224
  - sct_core/lib/sct_core/ui/interface.rb
224
225
  - sct_core/lib/sct_core/ui/ui.rb
225
226
  - sct_core/lib/sct_core/update_checker/update_checker.rb
226
- - shell/lib/shell.rb
227
- - shell/lib/shell/commands_generator.rb
228
- - shell/lib/shell/module.rb
229
- - shell/lib/shell/runner.rb
230
227
  homepage: https://gitlab.com/proactive-software/packages/sct
231
228
  licenses:
232
229
  - MIT
@@ -238,7 +235,6 @@ post_install_message:
238
235
  rdoc_options: []
239
236
  require_paths:
240
237
  - cluster/lib
241
- - shell/lib
242
238
  - sct/lib
243
239
  - sct_core/lib
244
240
  required_ruby_version: !ruby/object:Gem::Requirement
data/shell/lib/shell.rb DELETED
@@ -1,2 +0,0 @@
1
- require_relative 'shell/runner'
2
- require_relative 'shell/module'
@@ -1,14 +0,0 @@
1
- require_relative 'runner'
2
-
3
- module Shell
4
- class CommandsGenerator
5
-
6
- def self.start
7
- self.new.run
8
- end
9
-
10
- def run
11
- Shell::Runner.new.launch
12
- end
13
- end
14
- end
@@ -1,9 +0,0 @@
1
- require 'sct_core/helper'
2
-
3
- module Shell
4
-
5
- # import the helper functionality from SCT
6
- Helpers = Sct::Helper
7
- UI = Sct::UI
8
-
9
- end