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
+106
View File
@@ -0,0 +1,106 @@
package ops
import (
"github.com/versenilvis/iris/commands/core"
)
func init() {
core.Register(&core.Spec{
Name: "firebase",
Description: "ProjectAlias",
Subcommands: []core.Subcommand{
{Name: "appdistribution:distribute", Description: "Upload a distribution"},
{Name: "apps:android:sha:create", Description: "Add a SHA certificate hash for a given app id"},
{Name: "apps:android:sha:delete", Description: "Delete a SHA certificate hash for a given app id"},
{Name: "apps:create", Description: "Create a new Firebase app"},
{Name: "auth:export", Description: "Export accounts from your Firebase project into a data file"},
{Name: "auth:import", Description: "Import users into your Firebase project from a data file(.csv or .json)"},
{Name: "database:get", Description: "Fetch and print JSON data at the specified path"},
{Name: "database:instances:create", Description: "Create a realtime database instance"},
{Name: "database:instances:list", Description: "List realtime database instances, optionally filtered by a specified location"},
{Name: "database:profile", Description: "Profile the Realtime Database and generate a usage report"},
{Name: "database:push", Description: "Add a new JSON object to a list of data in your Firebase"},
{Name: "database:remove", Description: "Remove data from your Firebase at the specified path"},
{Name: "database:set", Description: "Store JSON data at the specified path via STDIN, arg, or file"},
{Name: "database:settings:get", Description: "Store JSON data at the specified path via STDIN, arg, or file"},
{Name: "database:settings:set", Description: "Set the realtime database setting at path"},
{Name: "database:update", Description: "Update some of the keys for the defined path in your Firebase"},
{Name: "deploy", Description: "Deploy code and assets to your Firebase project"},
{Name: "emulators:export", Description: "Export data from running emulators"},
{Name: "emulators:start", Description: "Start the local Firebase emulators"},
{Name: "experimental:functions:shell", Description: "Launch full Node shell with emulated functions"},
{Name: "ext:configure", Description: "Configure an existing extension instance"},
{Name: "ext:info", Description: "List all the extensions that are installed in your Firebase project"},
{Name: "ext:uninstall", Description: "Uninstall an extension that is installed in your Firebase project by instance ID"},
{Name: "ext:update", Description: "Update an existing extension instance to the latest version"},
{Name: "firestore:delete", Description: "Delete data from Cloud Firestore"},
{Name: "firestore:indexes", Description: "List indexes in your project's Cloud Firestore database"},
{Name: "functions:config:clone", Description: "Clone environment config from another project"},
{Name: "functions:config:get", Description: "Fetch environment config stored at the given path"},
{Name: "functions:config:set", Description: "Set environment config with key=value syntax"},
{Name: "functions:log", Description: "Read logs from deployed functions"},
{Name: "functions:shell", Description: "Launch full Node shell with emulated functions"},
{Name: "help", Description: "Display help information"},
{Name: "hosting:channel:create", Description: "Create a Firebase Hosting channel"},
{Name: "hosting:channel:delete", Description: "Delete a Firebase Hosting channel"},
{Name: "hosting:channel:deploy", Description: "Deploy to a specific Firebase Hosting channel"},
{Name: "hosting:channel:list", Description: "List all Firebase Hosting channels for your project"},
{Name: "hosting:channel:open", Description: "Opens the URL for a Firebase Hosting channel"},
{Name: "hosting:clone", Description: "Clone a version from one site to another"},
{Name: "hosting:disable", Description: "Stop serving web traffic to your Firebase Hosting site"},
{Name: "hosting:sites:create", Description: "Create a Firebase Hosting site"},
{Name: "hosting:sites:delete", Description: "Delete a Firebase Hosting site"},
{Name: "hosting:sites:get", Description: "Print info about a Firebase Hosting site"},
{Name: "hosting:sites:list", Description: "List Firebase Hosting sites"},
{Name: "init", Description: "Setup a Firebase project in the current directory"},
{Name: "login", Description: "Log the CLI into Firebase"},
{Name: "login:add", Description: "Authorize the CLI for an additional account"},
{Name: "login:ci", Description: "Generate an access token for use in non-interactive environments"},
{Name: "login:list", Description: "List authorized CLI accounts"},
{Name: "login:use", Description: "Set the default account to use for this project directory"},
{Name: "logout", Description: "Log the CLI out of Firebase"},
},
Options: []core.Option{
{Name: "--app", Description: "The app id of your Firebase app"},
{Name: "--release-notes", Description: "Release notes to include with this distribution"},
{Name: "--release-notes-file", Description: "Path to file with release notes to include with this distribution"},
{Name: "--testers", Description: "A comma separated list of tester emails to distribute to"},
{Name: "--testers-file", Description: "Path to file with a comma separated list of tester emails to distribute to"},
{Name: "--groups", Description: "A comma separated list of group aliases to distribute to"},
{Name: "--groups-file", Description: "Path to file with a comma separated list of group aliases to distribute to"},
{Name: "-h", Description: "Output usage information"},
{Name: "-a", Description: "Required package name for the Android app"},
{Name: "-b", Description: "Required bundle id for the iOS app"},
{Name: "-s", Description: "(optional) app store id for the iOS app"},
{Name: "--format", Description: "Format of exported data (csv, json). Ignored if [dataFile] has format extension"},
{Name: "--hash-algo", Description: "Specify the hash algorithm used in password for these accounts"},
{Name: "--hash-key", Description: "Specify the key used in hash algorithm"},
{Name: "--salt-separator", Description: "Specify how many rounds for hash calculation"},
{Name: "--mem-cost", Description: "Specify the parallelization for standard scrypt"},
{Name: "--block-size", Description: "Specify the block size (normally is 8) for standard scrypt"},
{Name: "--dk-len", Description: "Specify derived key length for standard scrypt"},
{Name: "--hash-input-order", Description: "Output usage information"},
{Name: "-l", Description: "(optional) location for the database instance, defaults to us-central1"},
{Name: "-o", Description: "Save the output to the specified file"},
{Name: "-d", Description: "Collect database usage information for the specified number of seconds"},
{Name: "--raw", Description: "Output the raw stats collected as newline delimited json"},
{Name: "--no-collapse", Description: "Prevent collapsing similar paths into $wildcard locations"},
{Name: "-i", Description: "Output usage information"},
{Name: "--instance", Description: "Output usage information"},
{Name: "-y", Description: "Pass this option to bypass confirmation prompt"},
{Name: "-p", Description: "Override the Hosting public directory specified in firebase.json"},
{Name: "-m", Description: "An optional message describing this deploy"},
{Name: "-f", Description: "Output usage information"},
{Name: "--only", Description: "Import emulator data from a previous export (see emulators:export)"},
{Name: "--export-on-exit", Description: "Run the Emulator UI"},
{Name: "--params", Description: "Path of params file with .env format"},
{Name: "--markdown", Description: "Output info in Markdown suitable for constructing a README file"},
{Name: "-r", Description: "No confirmation. Otherwise, a confirmation prompt will appear"},
{Name: "--pretty", Description: "Output usage information"},
{Name: "--from", Description: "The project from which to clone configuration"},
{Name: "--except", Description: "A comma-separated list of keys to not clone"},
{Name: "--open", Description: "Open logs page in web browser"},
{Name: "--inspect-functions", Description: "Output usage information"},
},
})
}