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
This commit is contained in:
VERSE
2026-07-04 22:08:36 +07:00
committed by GitHub
parent ffa336196a
commit 2ef3c90819
482 changed files with 22971 additions and 5 deletions
+40
View File
@@ -0,0 +1,40 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "ant",
Description: "Apache Ant - Java library and command-line build tool",
Options: []core.Option{
{Name: "--help", Description: "Show help for ant"},
{Name: "--noconfig", Description: "Enable use of jikes by default, unless set explicitly in configuration files"},
{Name: "--execdebug", Description: "Print ant exec line generated by this launch script"},
{Name: "-projecthelp", Description: "Print project help information and exit"},
{Name: "-version", Description: "Print the version information and exit"},
{Name: "-diagnostics", Description: "Print information that might be helpful to diagnose or report problems and exit"},
{Name: "-quiet", Description: "Be extra quiet"},
{Name: "-silent", Description: "Print nothing but task outputs and build failures"},
{Name: "-verbose", Description: "Be extra verbose"},
{Name: "-debug", Description: "Print debugging information"},
{Name: "-emacs", Description: "Produce logging information without adornments"},
{Name: "-lib", Description: "Specifies a path to search for jars and classes"},
{Name: "-logfile", Description: "Use given file for log"},
{Name: "-logger", Description: "The class which is to perform logging"},
{Name: "-listener", Description: "Add an instance of class as a project listener"},
{Name: "-noinput", Description: "Do not allow interactive input"},
{Name: "-buildfile", Description: "Use given buildfile"},
{Name: "-keep-going", Description: "Execute all targets that do not depend on failed target(s)"},
{Name: "-propertyfile", Description: "Load all properties from file with -D properties taking precedence"},
{Name: "-inputhandler", Description: "The class which will handle input requests"},
{Name: "-find", Description: "Search for buildfile towards the root of the filesystem and use it"},
{Name: "-nice", Description: "A niceness value for the main thread"},
{Name: "-nouserlib", Description: "Run ant without using the jar files from user home directory/.ant/lib"},
{Name: "-noclasspath", Description: "Run ant without using CLASSPATH"},
{Name: "-autoproxy", Description: "Java1.5+: use the OS proxy settings"},
{Name: "-main", Description: "Override Ant's normal entry point"},
},
})
}
+29
View File
@@ -0,0 +1,29 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "composer",
Description: "Composer Command",
Options: []core.Option{
{Name: "-h", Description: "Display this help message"},
{Name: "-q", Description: "Do not output any message"},
{Name: "-V", Description: "Display this application version"},
{Name: "--ansi", Description: "Force ANSI output"},
{Name: "--no-ansi", Description: "Disable ANSI output"},
{Name: "-n", Description: "Do not ask any interactive question"},
{Name: "--profile", Description: "Display timing and memory usage information"},
{Name: "--no-plugins", Description: "Whether to disable plugins"},
{Name: "-d", Description: "If specified, use the given directory as working directory"},
{Name: "--no-cache", Description: "Prevent use of the cache"},
{Name: "-v", Description: "Verbosity of messages: 1 for normal output"},
{Name: "-vv", Description: "Verbosity of messages: 2 for more verbose output"},
{Name: "-vvv", Description: "Verbosity of messages: 3 for debug"},
{Name: "-o", Description: "Show only recipes that are outdated"},
{Name: "--force", Description: "Overwrite existing files when a new version of a recipe is available"},
},
})
}
+82
View File
@@ -0,0 +1,82 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "dbt",
Description: "CLI for dbt - Data Build Tool",
Subcommands: []core.Subcommand{
{Name: "build", Description: "Run models, test tests, snapshot snapshots, and seed seeds"},
{Name: "directory", Description: "Directory containing profiles.yml"},
{Name: "name", Description: "Name of profile to use when running dbt project"},
{Name: "profile", Description: "Target profile configuration (dev/prod)"},
{Name: "variables", Description: "A short YAML string eg. '{my_variable: my_value}'"},
{Name: "subset", Description: "Select subset of models"},
{Name: "run", Description: "Runs the models in a project"},
{Name: "Target profile", Description: "Target profile configuration (dev/prod)"},
{Name: "debug", Description: "Debugs dbt connections and projects"},
{Name: "init", Description: "Initializes a new dbt project"},
{Name: "adapter", Description: "E.g. big query"},
{Name: "compile", Description: "Compiles (but does not run) the models in a project"},
{Name: "Variable values", Description: "A short YAML string eg. '{my_variable: my_value}'"},
{Name: "Select subset", Description: "Select subset of models"},
{Name: "Exclude subset", Description: "Exclude subset of models"},
{Name: "test", Description: "Executes tests defined in a project"},
{Name: "deps", Description: "Downloads dependencies for a project"},
{Name: "snapshot", Description: "Executes 'snapshot' jobs defined in a project"},
{Name: "profiles directory", Description: "Directory containing profiles.yml"},
{Name: "Profile name", Description: "Name of profile to use when running dbt project"},
{Name: "clean", Description: "Deletes artifacts present in the dbt project"},
{Name: "seed", Description: "Loads CSV files into the database"},
{Name: "docs", Description: "Generates documentation for a project"},
{Name: "generate", Description: "Generate your project's documentation website"},
{Name: "serve", Description: "Serve your documentation on a local webserver (default prot 8000)"},
{Name: "PROFILES_DIR", Description: "Path to profiles directory"},
{Name: "port number", Description: "Default is 8000"},
{Name: "run-operation", Description: "Runs arbitrary maintenance SQL against the database"},
{Name: "MACRO", Description: "Dbt will call this macro with the supplied arguments and then exit"},
{Name: "ARGS", Description: "A short YAML string eg. '{my_variable: my_value}'"},
{Name: "rpc", Description: "Runs an RPC server that clients can submit queries to"},
{Name: "HOST", Description: "Default: 0.0.0.0"},
{Name: "PORT", Description: "Default: 8580"},
{Name: "ls", Description: "Lists resources defined in a dbt project"},
{Name: "parse", Description: "Parse dbt project and write detailed timing information"},
},
Options: []core.Option{
{Name: "--full-refresh", Description: "Treat incremental models as table models"},
{Name: "-x", Description: "Exit immediately if a single model fails to build"},
{Name: "--profiles-dir", Description: "Set the profiles directory"},
{Name: "--profile", Description: "Use the selected profile"},
{Name: "--target", Description: "Target profile configuration i.e. prod/dev"},
{Name: "--vars", Description: "Variable values to override dbt_project.yml"},
{Name: "--threads", Description: "Number of concurrent database jobs"},
{Name: "-s", Description: "Select subset of models"},
{Name: "--exclude", Description: "Exclude subset of models"},
{Name: "--bypass-cache", Description: "Bypass the cache"},
{Name: "--use-colors", Description: "Default value -- colorize run logs"},
{Name: "--no-use-colors", Description: "Disable log colorizing"},
{Name: "--adapter", Description: "Add an adapter"},
{Name: "--select", Description: "Select subset of models"},
{Name: "--selector", Description: "Defer"},
{Name: "--data", Description: "Run only custom data tests"},
{Name: "--schema", Description: "Run only schema tests"},
{Name: "--no-compile", Description: "Skip re-compilation"},
{Name: "--port", Description: "Choose a port"},
{Name: "-o", Description: "Override the destination for sources.json"},
{Name: "--args", Description: "Supply arguments to the macro"},
{Name: "--host", Description: "Specify the host to listen on"},
{Name: "--resource-type", Description: "Specify selectors that should be excluded from the list of returned nodes"},
{Name: "--version", Description: "Currently installed version"},
{Name: "-r", Description: "Create a new file to record timing info"},
{Name: "-d", Description: "Redirect debug logs to standard out"},
{Name: "--log-format", Description: "Specify how dbt's logs should be formatted"},
{Name: "--no-write-json", Description: "Prevent dbt from writing JSOn artifacts to the 'target/' directory"},
{Name: "-S", Description: "Convert dbt warnings into errors"},
{Name: "--partial-parse", Description: "Configure partial parsing for your project"},
{Name: "--no-partial-parse", Description: "Turn off partial parsing for your project"},
},
})
}
+12
View File
@@ -0,0 +1,12 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "drush",
Description: "Drush is a command line shell and Unix scripting interface for Drupal",
})
}
+38
View File
@@ -0,0 +1,38 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "elixir",
Description: "Elixir Language",
Options: []core.Option{
{Name: "-e", Description: "Evaluates the given command"},
{Name: "-h", Description: "Prints this message and exits"},
{Name: "-r", Description: "Requires the given files/patterns"},
{Name: "-S", Description: "Finds and executes the given script in $PATH"},
{Name: "-pr", Description: "Requires the given files/patterns in parallel"},
{Name: "-pa", Description: "Prepends the given path to Erlang code path"},
{Name: "-pz", Description: "Appends the given path to Erlang code path"},
{Name: "-v", Description: "Prints Elixir version and exits"},
{Name: "--app", Description: "Starts the given app and its dependencies"},
{Name: "--erl", Description: "Switches to be passed down to Erlang"},
{Name: "--logger-otp-reports", Description: "Enables or disables OTP reporting"},
{Name: "--logger-sasl-reports", Description: "Enables or disables SASL reporting"},
{Name: "--no-halt", Description: "Does not halt the Erlang VM after execution"},
{Name: "--werl", Description: "Uses Erlang's Windows shell GUI (Windows only)"},
{Name: "--cookie", Description: "Sets a cookie for this distributed node"},
{Name: "--hidden", Description: "Makes a hidden node"},
{Name: "--name", Description: "Makes and assigns a name to the distributed node"},
{Name: "--rpc-eval", Description: "Evaluates the given command on the given remote node"},
{Name: "--sname", Description: "Makes and assigns a short name to the distributed node"},
{Name: "--boot", Description: "Uses the given FILE.boot to start the system"},
{Name: "--boot-var", Description: "Makes $VAR available as VALUE to FILE.boot"},
{Name: "--erl-config", Description: "Loads configuration in FILE.config written in Erlang"},
{Name: "--pipe-to", Description: "Starts the Erlang VM as a named PIPEDIR and LOGDIR"},
{Name: "--vm-args", Description: "Passes the contents in file as arguments to the VM"},
},
})
}
+106
View File
@@ -0,0 +1,106 @@
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"},
},
})
}
+63
View File
@@ -0,0 +1,63 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "hexo",
Description: "Draft for",
Subcommands: []core.Subcommand{
{Name: "config", Description: "Get or set configurations"},
{Name: "help", Description: "Displays a help for each command"},
{Name: "command", Description: "The command to display help for"},
{Name: "init", Description: "Create a new Hexo folder"},
{Name: "destination", Description: "Folder path. Initialize in current folder if not specified"},
{Name: "new", Description: "Create a new article"},
{Name: "path", Description: "The path of the post"},
{Name: "slug", Description: "The slug of the post"},
{Name: "layout", Description: "The layout to use"},
{Name: "title", Description: "The title of the post"},
{Name: "generate", Description: "Generate static files"},
{Name: "concurrency", Description: "The number of files to generate in parallel"},
{Name: "publish", Description: "Publish a draft"},
{Name: "filename", Description: "The name of the post"},
{Name: "server", Description: "Start a local server. By default, this is at http://localhost:4000/"},
{Name: "ip", Description: "The IP address to bind to"},
{Name: "port", Description: "Only serve static files"},
{Name: "deploy", Description: "Deploy your website"},
{Name: "output directory", Description: "The path to output directory"},
{Name: "file", Description: "The file to render"},
{Name: "migrate", Description: "Migrate content from other blog systems"},
{Name: "type", Description: "The type of migration. check https://hexo.io/docs/migration for more details"},
{Name: "clean", Description: "Clean the cache file (`db.json`) and generated files (`public`)"},
{Name: "list", Description: "List all routes"},
{Name: "version", Description: "Display version information"},
},
Options: []core.Option{
{Name: "--no-clone", Description: "Copy files instead of cloning from GitHub"},
{Name: "--no-install", Description: "Skip npm install"},
{Name: "-p", Description: "Post path. Customize the path of the post"},
{Name: "-r", Description: "Replace the current post if it existed"},
{Name: "-s", Description: "Post slug. Customize the URL of the post"},
{Name: "-d", Description: "Deploy after generation finishes"},
{Name: "-f", Description: "Force regenerate"},
{Name: "-w", Description: "Watch file changes"},
{Name: "-b", Description: "Raise an error if any unhandled exception is thrown during generation"},
{Name: "-c", Description: "Maximum number of files to be generated in parallel. Default is infinity"},
{Name: "-i", Description: "Override the default server IP. Bind to all IP address by default"},
{Name: "-l", Description: "Enable logger. Override logger format"},
{Name: "-o", Description: "Immediately open the server url in your default web browser"},
{Name: "--setup", Description: "Setup without deployment"},
{Name: "-g", Description: "Generate static files before deploying"},
{Name: "--engine", Description: "Specify render engine"},
{Name: "--pretty", Description: "Prettify JSON output"},
{Name: "--config", Description: "Disable loading plugins and scripts"},
{Name: "--debug", Description: "Log verbose messages to the terminal and to `debug.log`"},
{Name: "--silent", Description: "Silence output to the terminal"},
{Name: "--draft", Description: "Display draft posts (stored in the `source/_drafts` folder)"},
{Name: "--cwd", Description: "Customize the path of current working directory"},
},
})
}
+33
View File
@@ -0,0 +1,33 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "laravel",
Description: "The output format (txt, xml, json, or md)",
Subcommands: []core.Subcommand{
{Name: "new", Description: "Create a new Laravel application"},
},
Options: []core.Option{
{Name: "--format", Description: "The output format (txt, xml, json, or md)"},
{Name: "--raw", Description: "To output raw command list"},
{Name: "--dev", Description: "Initialize a Git repository"},
{Name: "--branch", Description: "The branch that should be created for a new repository"},
{Name: "--github", Description: "Create a new repository on GitHub"},
{Name: "--jet", Description: "Installs the Laravel Jetstream scaffolding"},
{Name: "--stack", Description: "The Jetstream stack that should be installed"},
{Name: "--teams", Description: "Indicates whether Jetstream should be scaffolded with team support"},
{Name: "--prompt-jetstream", Description: "Issues a prompt to determine if Jetstream should be installed"},
{Name: "-f", Description: "Forces install even if the directory already exists"},
{Name: "-h", Description: "Display the help message"},
{Name: "-q", Description: "Do not output any message"},
{Name: "-V", Description: "Display this application version"},
{Name: "--ansi", Description: "Force ANSI output"},
{Name: "--no-ansi", Description: "Disable ANSI output"},
{Name: "-n", Description: "Do not ask any interactive question"},
},
})
}
+12
View File
@@ -0,0 +1,12 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "magento",
Description: "Open-source E-commerce",
})
}
+39
View File
@@ -0,0 +1,39 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "mix",
Description: "Build tool for Elixir",
Subcommands: []core.Subcommand{
{Name: "new", Description: "Creates a new Elixir project at the given path"},
{Name: "run", Description: "Starts the current application and runs code"},
{Name: "code", Description: "String containing code to execute"},
{Name: "file|pattern", Description: "The file|pattern to execute"},
},
Options: []core.Option{
{Name: "-h", Description: "Output usage information"},
{Name: "--app", Description: "Name the OTP application for the project"},
{Name: "--modules", Description: "Name the modules in the generated code skeleton"},
{Name: "--sup", Description: "Generate an umbrella project"},
{Name: "--config", Description: "Loads the given configuration files"},
{Name: "-e", Description: "Evaluates the given code"},
{Name: "-r", Description: "Executes the given pattern/file"},
{Name: "-p", Description: "Executes the given pattern/file"},
{Name: "--preload-modules", Description: "Preloads all modules defined in applications"},
{Name: "--no-compile", Description: "Does not compile even if files require compilation"},
{Name: "--no-deps-check", Description: "Does not check dependencies"},
{Name: "--no-archives-check", Description: "Does not check archives"},
{Name: "--no-halt", Description: "Does not halt the system after running the command"},
{Name: "--no-mix-exs", Description: "Allows the command to run even if there is no mix.exs"},
{Name: "--no-start", Description: "Does not start applications after compilation"},
{Name: "--no-elixir-version-check", Description: "Does not check the Elixir version from mix.exs"},
{Name: "--search", Description: "Prints all tasks and aliases that contain 'pattern' in the name"},
{Name: "--names", Description: "Prints all task names and aliases"},
{Name: "-v", Description: "Shows versioning information"},
},
})
}
+12
View File
@@ -0,0 +1,12 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "php",
Description: "Run the PHP interpreter",
})
}
+52
View File
@@ -0,0 +1,52 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "phpunit",
Description: "Generate code coverage report in Clover XML format,",
Options: []core.Option{
{Name: "--coverage-clover", Description: "Generate code coverage report in Clover XML format,"},
{Name: "--coverage-crap4j", Description: "Generate code coverage report in Crap4J XML format"},
{Name: "--coverage-html", Description: "Generate code coverage report in HTML format"},
{Name: "--coverage-php", Description: "Export PHP_CodeCoverage object to file"},
{Name: "--coverage-text", Description: "Generate code coverage report in text format [default: standard output]"},
{Name: "--coverage-xml", Description: "Generate code coverage report in PHPUnit XML format"},
{Name: "--coverage-cache", Description: "Cache static analysis results"},
{Name: "--warm-coverage-cache", Description: "Warm static analysis cache"},
{Name: "--coverage-filter", Description: "Include <dir> in code coverage analysis"},
{Name: "--path-coverage", Description: "Perform path coverage analysis"},
{Name: "--disable-coverage-ignore", Description: "Disable annotations for ignoring code coverage"},
{Name: "--no-coverage", Description: "Ignore code coverage configuration"},
{Name: "--dont-report-useless-tests", Description: "Do not report tests that do not test anything"},
{Name: "--strict-coverage", Description: "Be strict about @covers annotation usage"},
{Name: "--strict-global-state", Description: "Be strict about changes to global state"},
{Name: "--disallow-test-output", Description: "Be strict about output during tests"},
{Name: "--disallow-resource-usage", Description: "Be strict about resource usage during small tests"},
{Name: "--enforce-time-limit", Description: "Enforce time limit based on test size"},
{Name: "--default-time-limit", Description: "Timeout in seconds for tests without @small, @medium or @large"},
{Name: "--disallow-todo-tests", Description: "Disallow @todo-annotated tests"},
{Name: "--log-junit", Description: "Log test execution in JUnit XML format to file"},
{Name: "--log-teamcity", Description: "Log test execution in TeamCity format to file"},
{Name: "--testdox-html", Description: "Write agile documentation in HTML format to file"},
{Name: "--testdox-text", Description: "Write agile documentation in Text format to file"},
{Name: "--testdox-xml", Description: "Write agile documentation in HTML format to file"},
{Name: "--reverse-list", Description: "Print defects in reverse order"},
{Name: "--no-logging", Description: "Ignore logging configuration"},
{Name: "--prepend", Description: "A PHP script that is included as early as possible"},
{Name: "--bootstrap", Description: "A PHP script that is included before the tests run"},
{Name: "-c", Description: "Read configuration from XML file"},
{Name: "--no-configuration", Description: "Ignore default configuration file (phpunit.xml)"},
{Name: "--extensions", Description: "A comma separated list of PHPUnit extensions to load"},
{Name: "--no-extensions", Description: "Do not load PHPUnit extensions"},
{Name: "--include-path", Description: "Prepend PHP's include_path with given path(s)"},
{Name: "-d", Description: "Sets a php.ini value"},
{Name: "--cache-result-file", Description: "Specify result cache path and filename"},
{Name: "--generate-configuration", Description: "Generate configuration file with suggested settings"},
{Name: "--migrate-configuration", Description: "Migrate configuration file to current format"},
},
})
}
+15
View File
@@ -0,0 +1,15 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "phpunit-watcher",
Description: "Automatically rerun PHPUnit tests when source code changes",
Options: []core.Option{
{Name: "--filter", Description: "Watch a specific test"},
},
})
}
+54
View File
@@ -0,0 +1,54 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "rails",
Description: "Create a new rails application",
Options: []core.Option{
{Name: "-skip-namespace", Description: "Skip namespace (affects only isolated applications)"},
{Name: "-r", Description: "Path to the Ruby binary of your choice"},
{Name: "-m", Description: "Path to some application template (can be a filesystem path or URL)"},
{Name: "-d", Description: "Preconfigure for selected database - defaults to sqlite3"},
{Name: "--skip-gemfile", Description: "Don't create a Gemfile"},
{Name: "-G", Description: "Skip .gitignore file"},
{Name: "--skip-keeps", Description: "Skip source control .keep files"},
{Name: "-M", Description: "Skip Action Mailer files"},
{Name: "--skip-action-mailbox", Description: "Skip Action Mailbox gem"},
{Name: "--skip-action-text", Description: "Skip Action Text gem"},
{Name: "-O", Description: "Skip Active Record files"},
{Name: "--skip-active-storage", Description: "Skip Active Storage files"},
{Name: "-P", Description: "Skip Puma related files"},
{Name: "-C", Description: "Skip Action Cable files"},
{Name: "-S", Description: "Skip Sprockets files"},
{Name: "--skip-spring", Description: "Don't install Spring application preloader"},
{Name: "--skip-listen", Description: "Don't generate configuration that depends on the listen gem"},
{Name: "-J", Description: "Skip JavaScript files"},
{Name: "--skip-turbolinks", Description: "Skip turbolinks gem"},
{Name: "-T", Description: "Skip test files"},
{Name: "--skip-system-test", Description: "Skip system test files"},
{Name: "--skip-bootsnap", Description: "Skip bootsnap gem"},
{Name: "--dev", Description: "Setup the application with Gemfile pointing to your Rails checkout"},
{Name: "--edge", Description: "Setup the application with Gemfile pointing to Rails repository"},
{Name: "--rc", Description: "Path to file containing extra configuration options for rails command"},
{Name: "--no-rc", Description: "Skip loading of extra configuration options from .railsrc file"},
{Name: "--api", Description: "Preconfigure smaller stack for API only apps"},
{Name: "-B", Description: "Don't run bundle install"},
{Name: "--webpacker", Description: "Preconfigure Webpack with a particular framework"},
{Name: "--f", Description: "Overwrite files that already exist"},
{Name: "--p", Description: "Run but do not make any changes"},
{Name: "--q", Description: "Suppress status output"},
{Name: "--s", Description: "Skip files that already exist"},
{Name: "--h", Description: "Show this help message and quit"},
{Name: "--v", Description: "Show Rails version number and quit"},
{Name: "--backtrace", Description: "Enable full backtrace. OUT can be stderr (default) or stdout"},
{Name: "--comments", Description: "Show commented tasks only"},
{Name: "--job-stats", Description: "Display job statistics. LEVEL=history displays a complete job list"},
{Name: "--rules", Description: "Trace the rules resolution"},
{Name: "--suppress-backtrace", Description: "Suppress backtrace lines matching regexp PATTERN. Ignored if --trace is on"},
},
})
}
+26
View File
@@ -0,0 +1,26 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "rake",
Description: "A ruby build program with capabilities similar to make",
Options: []core.Option{
{Name: "-n", Description: "Do a dry run without executing actions"},
{Name: "-h", Description: "Display this help message"},
{Name: "-I", Description: "Include LIBDIR in the search path for required modules"},
{Name: "-P", Description: "Display the tasks and dependencies, then exit"},
{Name: "-q", Description: "Do not log messages to standard output"},
{Name: "-f", Description: "Use FILE as the rakefile"},
{Name: "-r", Description: "Require MODULE before executing rakefile"},
{Name: "-s", Description: "Like --quiet, but also suppresses the 'in directory' announcement"},
{Name: "-T", Description: "Display the tasks and dependencies, then exit"},
{Name: "-t", Description: "Turn on invoke/execute tracing, enable full backtrace"},
{Name: "-v", Description: "Log message to standard output (default)"},
{Name: "-V", Description: "Display the program version"},
},
})
}
+52
View File
@@ -0,0 +1,52 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "rubocop",
Description: "Run only lint cops",
Options: []core.Option{
{Name: "-l", Description: "Run only lint cops"},
{Name: "-x", Description: "Run only layout cops, with autocorrect on"},
{Name: "--safe", Description: "Run only safe cops"},
{Name: "--except", Description: "Exclude the given cop(s)"},
{Name: "--only", Description: "Run only the given cop(s)"},
{Name: "--only-guide-cops", Description: "Run only cops for rules that link to a style guide"},
{Name: "-F", Description: "Run without pending cops"},
{Name: "--enable-pending-cops", Description: "Run with pending cops"},
{Name: "--ignore-disable-comments", Description: "Run cops even when they are disabled locally by a `rubocop:disable` directive"},
{Name: "--force-exclusion", Description: "Prevent from inheriting `AllCops/Exclude` from parent folders"},
{Name: "--ignore-unrecognized-cops", Description: "Ignore unrecognized cops or departments in the config"},
{Name: "--force-default-config", Description: "Use available CPUs to execute inspection in parallel default true"},
{Name: "--no-parallel", Description: "Disable parallel inspection (default: false)"},
{Name: "--fail-level", Description: "Minimum severity for exit with error code"},
{Name: "-C", Description: "Do not use server even if it's available"},
{Name: "--server", Description: "Restart server process"},
{Name: "--start-server", Description: "Start server process"},
{Name: "--stop-server", Description: "Stop server process"},
{Name: "--server-status", Description: "Show server status"},
{Name: "-f", Description: "Display cop names in offense messages. Default is true"},
{Name: "--no-display-cop-names", Description: "Disable displaying cop names in offense messages. Default false"},
{Name: "-E", Description: "Display extra details in offense messages"},
{Name: "-S", Description: "Display style guide URLs in offense messages"},
{Name: "-o", Description: "Display elapsed time in seconds"},
{Name: "--display-only-failed", Description: "Only output offense messages. Omit passing cops. Only valid for --format junit"},
{Name: "--display-only-correctable", Description: "Only output correctable offense messages"},
{Name: "-A", Description: "Autocorrect offenses (safe and unsafe)"},
{Name: "--disable-uncorrectable", Description: "Generate a configuration file acting as a TODO list"},
{Name: "--regenerate-todo", Description: "List all files RuboCop will inspect"},
{Name: "--show-cops", Description: "Display url to documentation for the given cops, or base url by default"},
{Name: "--init", Description: "Generate a .rubocop.yml file in the current directory"},
{Name: "-c", Description: "Specify configuration file"},
{Name: "-d", Description: "Display debug info"},
{Name: "-r", Description: "Require Ruby file"},
{Name: "--no-color", Description: "Disable color output"},
{Name: "--color", Description: "Force color output"},
{Name: "-v", Description: "Display version"},
{Name: "-V", Description: "Display verbose version"},
},
})
}
+27
View File
@@ -0,0 +1,27 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "ruby",
Description: "Interpreted object-oriented scripting language",
Options: []core.Option{
{Name: "--copyright", Description: "Prints the copyright notice"},
{Name: "--version", Description: "Prints the version of Ruby interpreter"},
{Name: "-0", Description: "Specifies the input record separator ($/) as an octal number"},
{Name: "-C", Description: "Causes Ruby to switch to the directory"},
{Name: "-F", Description: "Specifies input field separator ($;)"},
{Name: "-I", Description: "Specifies KANJI (Japanese) encoding"},
{Name: "-S", Description: "Turns on taint checks at the specified level (default 1)"},
{Name: "-a", Description: "Turns on auto-split mode when used with -n or -p"},
{Name: "-c", Description: "Turns on debug mode. $DEBUG will be set to true"},
{Name: "-e", Description: "Prints a summary of the options"},
{Name: "-i", Description: "Causes Ruby to assume the following loop around your script"},
{Name: "-p", Description: "Causes Ruby to load the library using require"},
{Name: "-s", Description: "Enables verbose mode"},
},
})
}
+37
View File
@@ -0,0 +1,37 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "rvm",
Description: "Show version of rvm",
Subcommands: []core.Subcommand{
{Name: "use", Description: "Setup current shell to use a specific ruby version"},
{Name: "reset", Description: "Remove default and current settings, exit the shell"},
{Name: "info", Description: "Show information about the current ruby environment"},
{Name: "list", Description: "List currently installed version"},
{Name: "reload", Description: "Reload RVM source itself (useful after changing RVM source)"},
{Name: "implode", Description: "Remove all ruby installations it manages"},
{Name: "get", Description: "Upgrades RVM to the stable or git head branches"},
{Name: "do", Description: "Runs a named ruby file against specified and/or all rubies"},
{Name: "install", Description: "Install one or many ruby versions"},
{Name: "upgrade", Description: "Install new ruby, copy gemsets, make gems pristine, remove old rubies"},
{Name: "reinstall", Description: "Remove ruby, install it, make gems pristine"},
{Name: "uninstall", Description: "Uninstall one or many ruby versions, leaves their sources"},
{Name: "remove", Description: "Remove one or many ruby versions, including their sources"},
},
Options: []core.Option{
{Name: "--version", Description: "Show version of rvm"},
{Name: "--default", Description: "When used with ruby selection, sets a default ruby for new shells"},
{Name: "--debug", Description: "Enable debug mode"},
{Name: "--force", Description: "Force install, removes old install & source before install"},
{Name: "--all", Description: "Used with 'rvm list' to display 'most' available versions"},
{Name: "--summary", Description: "Used with 'do' to print out a summary of the commands run"},
{Name: "-C", Description: "Rubinius"},
{Name: "--help", Description: "Show help for rvm"},
},
})
}
+24
View File
@@ -0,0 +1,24 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "sidekiq",
Description: "Background job framework for Ruby",
Options: []core.Option{
{Name: "--concurrency", Description: "Processor threads to use"},
{Name: "--environment", Description: "Application environment"},
{Name: "--tag", Description: "Process tag for procline"},
{Name: "--queue", Description: "Queues to process with optional weights"},
{Name: "--require", Description: "Location of Rails application with jobs or file to require"},
{Name: "--timeout", Description: "Shutdown timeout"},
{Name: "--verbose", Description: "Print more verbose output"},
{Name: "--config", Description: "Path to YAML config file"},
{Name: "--help", Description: "Show help for sidekiq run"},
{Name: "--version", Description: "Print version and exit"},
},
})
}
+72
View File
@@ -0,0 +1,72 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "symfony",
Description: "Symfony Binary",
Subcommands: []core.Subcommand{
{Name: "cloud:clear-cache", Description: "Clear the CLI cache"},
{Name: "cloud:docs", Description: "Open the online documentation"},
{Name: "cloud:multi", Description: "Execute a command on multiple projects"},
{Name: "cloud:web", Description: "Open the Web UI"},
{Name: "cloud:activity:cancel", Description: "Cancel an activity"},
{Name: "cloud:activity:get", Description: "View detailed information on a single activity"},
{Name: "cloud:activity:list", Description: "Get a list of activities for an environment or project"},
{Name: "cloud:activity:log", Description: "Display the log for an activity"},
{Name: "cloud:app:config-get", Description: "View the configuration of an app"},
{Name: "cloud:app:list", Description: "List apps in the project"},
{Name: "cloud:auth:api-token-login", Description: "Log in to Platform.sh using an API token"},
{Name: "cloud:auth:browser-login", Description: "Log in to Platform.sh via a browse"},
{Name: "cloud:auth:info", Description: "Display your account information"},
{Name: "cloud:auth:logout", Description: "Log out of Platform.sh"},
{Name: "cloud:backup:create", Description: "Make a backup of an environment"},
{Name: "cloud:backup:list", Description: "List available backups of an environment"},
{Name: "cloud:backup:restore", Description: "Restore an environment backup"},
{Name: "cloud:certificate:add", Description: "Add an SSL certificate to the project"},
{Name: "cloud:certificate:delete", Description: "Delete a certificate from the project"},
{Name: "cloud:certificate:get", Description: "View a certificate"},
{Name: "cloud:certificate:list", Description: "List project certificates"},
{Name: "cloud:commit:get", Description: "Show commit details"},
{Name: "cloud:commit:list", Description: "List commits"},
{Name: "cloud:db:dump", Description: "Create a local dump of the remote database"},
{Name: "cloud:db:size", Description: "Estimate the disk usage of a database"},
{Name: "cloud:db:sql", Description: "Run SQL on the remote database"},
{Name: "cloud:domain:add", Description: "Add a new domain to the project"},
{Name: "cloud:domain:delete", Description: "Delete a domain from the project"},
{Name: "cloud:domain:get", Description: "Show detailed information for a domain"},
{Name: "cloud:domain:list", Description: "Get a list of all domains"},
{Name: "cloud:domain:update", Description: "Update a domain"},
{Name: "cloud:environment:activate", Description: "Activate an environment"},
{Name: "cloud:environment:branch", Description: "Branch an environment"},
{Name: "cloud:environment:checkout", Description: "Check out an environment"},
{Name: "cloud:environment:debug", Description: "Debug an environment by switching Symfony to the debug mode temporarily"},
{Name: "cloud:environment:delete", Description: "Delete one or more environments"},
{Name: "cloud:environment:http-access", Description: "Update HTTP access settings for an environment"},
{Name: "cloud:environment:info", Description: "Read or set properties for an environment"},
{Name: "cloud:environment:init", Description: "Initialize an environment from a public Git repository"},
{Name: "cloud:environment:list", Description: "Get a list of environments"},
{Name: "cloud:environment:logs", Description: "Read an environment's logs"},
{Name: "cloud:environment:merge", Description: "Merge an environment"},
{Name: "cloud:environment:push", Description: "Push code to an environment"},
{Name: "cloud:environment:redeploy", Description: "Redeploy an environment"},
{Name: "cloud:environment:relationships", Description: "Show an environment's relationships"},
{Name: "cloud:environment:scp", Description: "Copy files to and from current environment using scp"},
{Name: "cloud:environment:ssh", Description: "SSH to the current environment"},
{Name: "cloud:environment:synchronize", Description: "Synchronize an environment's code and/or data from its parent"},
{Name: "cloud:environment:url", Description: "Get the public URLs of an environment"},
{Name: "cloud:environment:xdebug", Description: "Open a tunnel to Xdebug on the environment"},
},
Options: []core.Option{
{Name: "-h", Description: "Show help"},
{Name: "-q", Description: "Do not output any message"},
{Name: "--no-ansi", Description: "Disable ANSI output"},
{Name: "--ansi", Description: "Force ANSI output"},
{Name: "--no-interaction", Description: "Do not ask any interactive question"},
{Name: "-v", Description: "Print the version"},
},
})
}
+82
View File
@@ -0,0 +1,82 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "valet",
Description: "Do not output any message",
Subcommands: []core.Subcommand{
{Name: "diagnose", Description: "Output diagnostics to aid in debugging Valet"},
{Name: "fetch-share-url", Description: "Get the URL to the current share tunnel (for Expose or ngrok)"},
{Name: "forget", Description: "Remove the current working (or specified) directory from Valet's list of paths"},
{Name: "help", Description: "Display help for a command"},
{Name: "install", Description: "Install the Valet services"},
{Name: "link", Description: "Link the current working directory to Valet"},
{Name: "links", Description: "Display all of the registered Valet links"},
{Name: "list", Description: "List commands"},
{Name: "log", Description: "Tail log file"},
{Name: "loopback", Description: "Get or set the loopback address used for Valet sites"},
{Name: "on-latest-version", Description: "Determine if this is the latest version of Valet"},
{Name: "open", Description: "Open the site for the current (or specified) directory in your browser"},
{Name: "park", Description: "Register the current working (or specified) directory with Valet"},
{Name: "parked", Description: "Display all the current sites within parked paths"},
{Name: "paths", Description: "Get all of the paths registered with Valet"},
{Name: "proxies", Description: "Display all of the proxy sites"},
{Name: "restart", Description: "Restart the Valet services"},
{Name: "secure", Description: "Secure the given domain with a trusted TLS certificate"},
{Name: "share", Description: "Generate a publicly accessible URL for your project"},
{Name: "start", Description: "Start the Valet services"},
{Name: "stop", Description: "Stop the Valet services"},
{Name: "tld", Description: "Get or set the TLD used for Valet sites"},
{Name: "uninstall", Description: "Uninstall the Valet services"},
{Name: "unlink", Description: "Remove the specified Valet link"},
{Name: "unproxy", Description: "Delete an Nginx proxy config"},
{Name: "unsecure", Description: "Stop serving the given domain over HTTPS and remove the trusted TLS certificate"},
{Name: "use", Description: "Change the version of PHP used by valet"},
{Name: "which", Description: "Determine which Valet driver serves the current working directory"},
{Name: "isolate", Description: "Change the version of PHP used by Valet to serve the current working directory"},
{Name: "isolated", Description: "List all sites using isolated versions of PHP"},
{Name: "which-php", Description: "Get the PHP executable path for a site"},
{Name: "completion", Description: "Dump the shell completion script"},
{Name: "secured", Description: "Display all of the currently secured sites"},
{Name: "set-ngrok-token", Description: "Set the Ngrok auth token"},
{Name: "share-tool", Description: "Get the name of the current share tool (Expose or ngrok)"},
{Name: "status", Description: "Output the status of Valet and its installed services and config"},
},
Options: []core.Option{
{Name: "-h", Description: "Do not output any message"},
{Name: "-V", Description: "Display this application version"},
{Name: "--ansi", Description: "Force (or disable --no-ansi) ANSI output"},
{Name: "--no-ansi", Description: "Force (or disable --no-ansi) ANSI output"},
{Name: "-n", Description: "Do not ask any interactive question"},
{Name: "-v", Description: "Normal output"},
{Name: "--secure", Description: "Valet is a Laravel development environment for macOS minimalists"},
{Name: "-p", Description: "Print diagnostics output while running"},
{Name: "--plain", Description: "Format clipboard output as plain text"},
{Name: "--format", Description: "The output format (txt, xml, json, or md) [default: 'txt']"},
{Name: "--raw", Description: "To output raw command help"},
{Name: "--isolate", Description: "Display all of the registered Valet links"},
{Name: "--short", Description: "To skip describing commands' arguments"},
{Name: "-l", Description: "Get or set the loopback address used for Valet sites"},
{Name: "--auth", Description: "Enforce basic auth on tunnel endpoint, 'user:password'"},
{Name: "--authtoken", Description: "Ngrok.com authtoken identifying a user"},
{Name: "--bind-tls", Description: "Listen for http, https or both: true/false/both"},
{Name: "--config", Description: "Path to config files; they are merged if multiple"},
{Name: "--host-header", Description: "Set Host header; if 'rewrite' use local address hostname"},
{Name: "--hostname", Description: "Host tunnel on custom hostname (requires DNS CNAME)"},
{Name: "--inspect", Description: "Enable/disable http introspection"},
{Name: "--log", Description: "Path to log file, 'stdout', 'stderr' or 'false'"},
{Name: "--log-format", Description: "Log record format: 'term', 'logfmt', 'json'"},
{Name: "--log-level", Description: "Logging level"},
{Name: "--region", Description: "Ngrok server region [us, eu, au, ap, sa, jp, in] (default: us)"},
{Name: "--subdomain", Description: "Host tunnel on a custom subdomain"},
{Name: "--off", Description: "Remove the sudoers files so normal sudo password prompts are required"},
{Name: "--force", Description: "Do a forceful uninstall of Valet and related Homebrew pkgs"},
{Name: "--site", Description: "Name of the website you want to isolate"},
{Name: "--debug", Description: "Tail the completion debug log"},
},
})
}
+35
View File
@@ -0,0 +1,35 @@
package runner
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "vapor",
Description: "Vapor Toolbox (Server-side Swift web framework)",
Subcommands: []core.Subcommand{
{Name: "build", Description: "Builds an app in the console"},
{Name: "new", Description: "Generates a new app"},
{Name: "name", Description: "Name of project and folder"},
{Name: "clean", Description: "Cleans temporary files"},
{Name: "heroku", Description: "Commands for working with Heroku"},
{Name: "init", Description: "Configures app for deployment to Heroku"},
{Name: "push", Description: "Deploys app to Heroku"},
{Name: "supervisor", Description: "Commands for working with Supervisord"},
{Name: "restart", Description: "Restarts current project in Supervisor"},
{Name: "update", Description: "Updates Supervisor entry for current project"},
{Name: "xcode", Description: "Opens an app in Xcode"},
},
Options: []core.Option{
{Name: "--template", Description: "The URL of a Git repository to use as a template"},
{Name: "--branch", Description: "Template repository branch to use"},
{Name: "--output", Description: "The directory to place the new project in"},
{Name: "--no-commit", Description: "Skips adding a first commit to the newly created repo"},
{Name: "--update", Description: "Delete Package.resolved file if it exists"},
{Name: "--global", Description: "Clean Xcode's global DerivedData cache"},
{Name: "--swiftpm", Description: "Delete .swiftpm folder"},
{Name: "--help", Description: "Show help for vapor"},
},
})
}