Files
iris-context/commands/runner/gem.go
T
VERSE 2ef3c90819 feat(commands): more commands (#30)
- I wrote a scripts to copy and generate all commands missing in iris
from fig repo: https://github.com/withfig/autocomplete
- Add a new script to generate commands docs about which commands
currently are inside commands folder
377d4aac663590e504fe39a92eb4dac4cbd333b2
- Add more icons e64d4e70a1db61e62053460a882e093bd6373ab1
2026-07-04 22:08:36 +07:00

107 lines
6.9 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "gem",
Description: "Use HTTP proxy for remote operations",
Subcommands: []core.Subcommand{
{Name: "help", Description: "Help about any command"},
{Name: "install", Description: "Install a gem into the local repository"},
{Name: "PLATFORM", Description: "The platform of gem"},
{Name: "cert", Description: "Manage RubyGems certificates and signing settings"},
{Name: "CERT", Description: "The trusted certificate"},
{Name: "FILTER", Description: "The filter"},
{Name: "EMAIL_ADDR", Description: "The email address"},
{Name: "KEY", Description: "The key"},
{Name: "ALGORITHM", Description: "The algorithm"},
{Name: "NUMBER_OF_DAYS", Description: "The number of days"},
{Name: "check", Description: "Check a gem repository for added or missing files"},
{Name: "VERSION", Description: "The version of the gem"},
{Name: "cleanup", Description: "Clean up old versions of installed gems"},
{Name: "GEMNAME", Description: "Name of gem to cleanup"},
{Name: "contents", Description: "Display the contents of the installed gems"},
{Name: "dependency", Description: "Show the dependencies of an installed gem"},
{Name: "REGEXP", Description: "Show dependencies for gems whose names start with REGEXP"},
{Name: "environment", Description: "Display information about the RubyGems environment"},
{Name: "home", Description: "Display the path where gems are installed. Aliases: gemhome, gemdir, GEM_HOME"},
{Name: "path", Description: "Display path used to search for gems. Aliases: gempath, GEM_PATH"},
{Name: "version", Description: "Display the gem format version"},
{Name: "remotesources", Description: "Display the remote gem servers"},
{Name: "platform", Description: "Display the supported gem platforms"},
{Name: "fetch", Description: "Download a gem and place it in the current directory"},
{Name: "COUNT", Description: "The threshold"},
{Name: "URL", Description: "The URL"},
{Name: "generate_index", Description: "Generates the index files for a gem server directory"},
{Name: "info", Description: "Show information for the given gem"},
{Name: "lock", Description: "Generate a lockdown list of gems"},
{Name: "GEMNAME-VERSION", Description: "Name and the version of gem to lock, ex: rails-1.0.0"},
{Name: "mirror", Description: "Mirror all gem files (requires rubygems-mirror)"},
{Name: "open", Description: "Open gem sources in editor"},
{Name: "COMMAND", Description: "The prepends command to gem path"},
{Name: "query", Description: "Query gem information in local or remote repositories"},
{Name: "rdoc", Description: "Generates RDoc for pre-installed gems"},
{Name: "search", Description: "Display remote gems whose name matches REGEXP"},
{Name: "signin", Description: "Sign in to any gemcutter-compatible host. It defaults to https://rubygems.org"},
{Name: "HOST", Description: "The host"},
{Name: "CODE", Description: "The GEM host otp code"},
{Name: "signout", Description: "Sign out from all the current sessions"},
{Name: "sources", Description: "Manage the sources and cache file RubyGems uses to search for gems"},
{Name: "SOURCE_URI", Description: "The source URI"},
{Name: "specification", Description: "Display gem specification (in yaml)"},
{Name: "GEMFILE", Description: "Name of gem to show the gemspec for"},
{Name: "FIELD", Description: "Name of gemspec field to show"},
{Name: "stale", Description: "List gems along with access times"},
{Name: "unpack", Description: "Unpack an installed gem to the current directory"},
{Name: "yank", Description: "Remove a pushed gem from the index"},
{Name: "GEM", Description: "Name of gem"},
{Name: "uninstall", Description: "Uninstall gems from the local repository"},
},
Options: []core.Option{
{Name: "-p", Description: "Use HTTP proxy for remote operations"},
{Name: "--no-http-proxy", Description: "Do not use HTTP proxy for remote operations"},
{Name: "-l", Description: "Restrict operations to the LOCAL domain"},
{Name: "-r", Description: "Restrict operations to the REMOTE domain"},
{Name: "-b", Description: "Allow LOCAL and REMOTE operations"},
{Name: "-B", Description: "Threshold for switching to bulk synchronization (default 1000)"},
{Name: "--clear-sources", Description: "Clear the gem sources"},
{Name: "-s", Description: "Append URL to list of remote gem sources"},
{Name: "-i", Description: "Check for installed gem"},
{Name: "-I", Description: "Check for not installed gem"},
{Name: "-v", Description: "Specify version of gem to list for use with --installed"},
{Name: "-a", Description: "Display all gem versions"},
{Name: "-e", Description: "Name of gem(s) to query on matches the provided STRING"},
{Name: "--prerelease", Description: "Allow prerelease versions of a gem"},
{Name: "--no-prerelease", Description: "Do not allow prerelease versions of a gem"},
{Name: "--versions", Description: "Display only gem names"},
{Name: "--no-versions", Description: "Display not only gem names"},
{Name: "--host", Description: "Use another gemcutter-compatible host (e.g. https://rubygems.org)"},
{Name: "-k", Description: "Use the given API key"},
{Name: "--otp", Description: "The GEM host otp code"},
{Name: "--platform", Description: "Specify the platform of gem to install"},
{Name: "-C", Description: "Signing certificate for --sign"},
{Name: "-K", Description: "Key for --sign or --build"},
{Name: "-A", Description: "Select which key algorithm to use for --build"},
{Name: "-d", Description: "Days before the certificate expires"},
{Name: "-R", Description: "Re-signs the certificate from -C with the key from -K"},
{Name: "--no-alien", Description: "Report 'managed' or rogue files in the gem repository"},
{Name: "--doctor", Description: "Clean up uninstalled gems and broken specifications"},
{Name: "--no-doctor", Description: "Do not clean up uninstalled gems and broken specifications"},
{Name: "--dry-run", Description: "Do not remove files, only report what would be removed"},
{Name: "--no-dry-run", Description: "Remove files"},
{Name: "--gems", Description: "Check installed gems for problems"},
{Name: "--no-gems", Description: "Check not installed gems for problems"},
{Name: "-n", Description: "Do not uninstall gems"},
{Name: "-D", Description: "Check development dependencies while uninstalling (default: true)"},
{Name: "--no-check-development", Description: "Do not check development dependencies while uninstalling"},
{Name: "--user-install", Description: "Cleanup in user’s home directory instead of GEM_HOME"},
{Name: "--no-user-install", Description: "Cleanup in GEM_HOME instead of user’s home directory"},
{Name: "--all", Description: "Contents for all gems"},
{Name: "--no-lib-only", Description: "Not only return files in the Gem’s lib_dirs"},
},
})
}