# frozen_string_literal: true require_relative '../candados/candados' module ADN class SubcomandoCandados def initialize(args, logger) @args = args @logger = logger end def ejecutar if @args.empty? # Llamamos al help interno de candados.rb system("ruby #{File.join(File.dirname(__FILE__), '../candados/candados.rb')} help") return end # Ejecutamos el script de candados pasando los argumentos # Nota: candados.rb maneja internamente la seguridad y auditoría script_path = File.join(File.dirname(__FILE__), '../candados/candados.rb') system("ruby #{script_path} #{@args.join(' ')}") # Propagamos el exit status si es un comando de ejecución (run/sudo) if ['run', 'sudo'].include?(@args[0]) exit $?.exitstatus || 0 end end end end