Files
iris-context/commands/sys/ddev.go
T
VERSE ebde9ba68f refactor(commands): separate commands and its core into two folders (#32)
- I think it would be better if one for commands only, one for the spec
handling core logic so people won't be confused by the core logic inside
the commands folder (cleaner I guess)
- Regen docs
2026-07-05 11:27:30 +07:00

101 lines
7.5 KiB
Go

package sys
import (
"github.com/versenilvis/iris/spec"
)
func init() {
spec.Register(&spec.Spec{
Name: "ddev",
Description: "DDEV-Local local development environment",
Subcommands: []spec.Subcommand{
{Name: "auth", Description: "A collection of authentication commands"},
{Name: "ssh", Description: "Add ssh key authentication to the ddev-ssh-auth container"},
{Name: "clean", Description: "Removes items ddev has created"},
{Name: "composer", Description: "Executes a composer command within the web container"},
{Name: "config", Description: "Create or modify a ddev project configuration in the current directory"},
{Name: "global", Description: "Change global configuration"},
{Name: "d", Description: "A collection of debugging commands"},
{Name: "capabilities", Description: "Show capabilities of this version of ddev"},
{Name: "compose-config", Description: "Prints the docker-compose configuration of the current project"},
{Name: "configyaml", Description: "Prints the project config.*.yaml usage"},
{Name: "dockercheck", Description: "Diagnose DDEV docker/colima setup"},
{Name: "download-images", Description: "Download all images required by ddev"},
{Name: "fix-commands", Description: "Fix up custom/shell commands without running ddev start"},
{Name: "mutagen", Description: "Allows access to any mutagen command"},
{Name: "nfsmount", Description: "Checks to see if nfs mounting works for current project"},
{Name: "refresh", Description: "Refreshes docker cache for project"},
{Name: "router-nginx-config", Description: "Prints the nginx config of the router"},
{Name: "test", Description: "Run diagnostics on ddev using the embedded test_ddev.sh script"},
{Name: "delete", Description: "Remove all project information (including database) for an existing project"},
{Name: "images", Description: "Deletes drud/ddev-* docker images not in use by current ddev version"},
{Name: "desc", Description: "Get a detailed description of a running ddev project"},
{Name: "export-db", Description: "Dump a database to a file or to stdout"},
{Name: "get", Description: "Get/Download a 3rd party add-on (service, provider, etc.)"},
{Name: "hostname", Description: "Manage your hostfile entries"},
{Name: "import-db", Description: "Import a sql file into the project"},
{Name: "l", Description: "List projects"},
{Name: "logs", Description: "Get the logs from your running services"},
{Name: "monitor", Description: "Monitor mutagen status"},
{Name: "reset", Description: "Reset mutagen for project"},
{Name: "st", Description: "Shows mutagen sync status"},
{Name: "sync", Description: "Explicit sync for mutagen"},
{Name: "sc", Description: "Uses 'docker stop' to pause/stop the containers belonging to a project"},
{Name: "powerdown", Description: "Completely stop all projects and containers"},
{Name: "pull", Description: "Pull files and database using a configured provider plugin"},
{Name: "push", Description: "Push files and database using a configured provider plugin"},
{Name: "restart", Description: "Restart a project or several projects"},
{Name: "service", Description: "Add or remove, enable or disable extra services"},
{Name: "disable", Description: "Disable a 3rd party service"},
{Name: "enable", Description: "Enable a 3rd party service"},
{Name: "share", Description: "Share project on the internet via ngrok"},
{Name: "snapshot", Description: "Create a database snapshot for one or more projects"},
{Name: "add", Description: "Start a ddev project"},
{Name: "version", Description: "Print ddev version and component versions"},
{Name: "help", Description: "Help about any command"},
},
Options: []spec.Option{
{Name: "--ssh-key-path", Description: "Full path to ssh key directory"},
{Name: "--all", Description: "Clean all ddev projects"},
{Name: "--dry-run", Description: "Run the clean command without deleting"},
{Name: "--yes", Description: "Yes - skip confirmation prompt"},
{Name: "--auto-restart-containers", Description: "If true, automatically restart containers after a reboot or docker restart"},
{Name: "--disable-http2", Description: "If true, 'ddev start' will fail when a hook fails"},
{Name: "--instrumentation-opt-in", Description: "Instrumentation-opt-in=true"},
{Name: "--letsencrypt-email", Description: "If true, web container will use mutagen caching/asynchronous updates"},
{Name: "--nfs-mount-enabled", Description: "Enable NFS mounting on all projects globally"},
{Name: "--no-bind-mounts", Description: "For example, --omit-containers=dba,ddev-ssh-agent"},
{Name: "--router-bind-all-interfaces", Description: "Router-bind-all-interfaces=true"},
{Name: "--simple-formatting", Description: "If true, use simple formatting and no color for tables"},
{Name: "--table-style", Description: "Table style for list and describe, see ~/.ddev/global_config.yaml for values"},
{Name: "--use-letsencrypt", Description: "A comma-delimited list of FQDNs for the project"},
{Name: "--additional-hostnames", Description: "A comma-delimited list of hostnames for the project"},
{Name: "--apptype", Description: "Automatically run config without prompting"},
{Name: "--bind-all-interfaces", Description: "Bind host ports on all interfaces, not just on localhost network interface"},
{Name: "--composer-root", Description: "Overrides the default composer root directory for the web service"},
{Name: "--composer-root-default", Description: "Unsets a web service composer root directory override"},
{Name: "--composer-version", Description: "Prompts ddev to create the docroot if it doesn't exist"},
{Name: "--database", Description: "Specify the database type:version to use. Defaults to mariadb:10.4"},
{Name: "--db-image", Description: "Sets the db container image"},
{Name: "--db-image-default", Description: "Sets the default db container image for this ddev version"},
{Name: "--db-working-dir", Description: "Overrides the default working directory for the db service"},
{Name: "--db-working-dir-default", Description: "Unsets a db service working directory override"},
{Name: "--dba-image", Description: "Sets the dba container image"},
{Name: "--dba-image-default", Description: "Sets the default dba container image for this ddev version"},
{Name: "--dba-working-dir", Description: "Overrides the default working directory for the dba service"},
{Name: "--dba-working-dir-default", Description: "Unsets a dba service working directory override"},
{Name: "--dbimage-extra-packages", Description: "Prevent ddev from creating or updating CMS settings files"},
{Name: "--docroot", Description: "Decide whether 'ddev start' should be interrupted by a failing hook"},
{Name: "--host-db-port", Description: "The db container's localhost-bound port"},
{Name: "--host-dba-port", Description: "The web container's localhost-bound https port"},
{Name: "--host-webserver-port", Description: "The web container's localhost-bound port"},
{Name: "--http-port", Description: "The router HTTP port for this project"},
{Name: "--https-port", Description: "The router HTTPS port for this project"},
{Name: "--image-defaults", Description: "Sets the default web, db, and dba container images"},
{Name: "--mailhog-https-port", Description: "Router port to be used for mailhog access (https)"},
{Name: "--mailhog-port", Description: "Router port to be used for mailhog access"},
{Name: "--mutagen-enabled", Description: "Enable mutagen asynchronous update of project in web container"},
},
})
}