Sha256: cb6b5e3fcaa0bfcb2c9c720456ec441dc85720b7970a0441aef0cab775087653
Contents?: true
Size: 1.62 KB
Versions: 1
Compression:
Stored size: 1.62 KB
Contents
# frozen_string_literal: true # description: Setup application commands. require "optparse" require "discorb/utils/colored_puts" options = { guilds: nil, script: true } opt = OptionParser.new <<~BANNER This command will setup application commands. Usage: discorb setup [options] [script] script The script to setup. BANNER opt.on( "-g", "--guild ID", Array, "The guild ID to setup, use comma for setup commands in multiple guilds, " \ "or `global` for setup global commands." ) { |v| options[:guilds] = v } opt.on( "-c", "--clear-guild ID", Array, "The guild ID to clear command, use comma for clear commands in multiple guilds, " \ "or `global` for clear global commands." ) { |v| options[:clear_guilds] = v } opt.on( "-s", "--[no-]script", "Whether to run `:setup` event. " \ "This may be useful if setup script includes operation that shouldn't run twice. Default to true." ) { |v| options[:script] = v } opt.parse!(ARGV) script = ARGV[0] script ||= "main.rb" ENV["DISCORB_CLI_FLAG"] = "setup" ENV["DISCORB_SETUP_GUILDS"] = if options[:guilds] == ["global"] "global" elsif options[:guilds] options[:guilds].join(",") end ENV["DISCORB_SETUP_CLEAR_GUILDS"] = options[:clear_guilds]&.join(",") ENV["DISCORB_SETUP_SCRIPT"] = options[:script].to_s if options[:script] if File.exist? script load script sputs "Successfully set up commands for \e[32m#{script}\e[m." else eputs "Could not load script: \e[31m#{script}\e[m" end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
discorb-0.20.0 | lib/discorb/exe/setup.rb |