id = "gcloud" name = "Google Cloud CLI" homepage = "https://cloud.google.com/sdk/docs/configurations" description = "The Google Cloud CLI: projects, clusters and resources from the terminal." icon = "theSVG:googlecloud" executables = ["gcloud", "gsutil", "bq"] [dotfiles] # `gcloud info` prints the config directory: $CLOUDSDK_CONFIG, defaulting to # ~/.config/gcloud on Unix and %APPDATA%/gcloud on Windows. Named # configurations are the part worth mirroring. paths = ["~/.config/gcloud/configurations/", "%APPDATA%/gcloud/configurations/"] # None of these sit under configurations/, so nothing would collect them # anyway. They are here as a floor: an exclude is checked before a path is # read, and it costs nothing to say so for both config directories. exclude = [ "~/.config/gcloud/logs/", "~/.config/gcloud/cache/", "~/.config/gcloud/surface_data/", "~/.config/gcloud/config_sentinel", "~/.config/gcloud/gce", "%APPDATA%/gcloud/logs/", "%APPDATA%/gcloud/cache/", "%APPDATA%/gcloud/surface_data/", "%APPDATA%/gcloud/config_sentinel", "%APPDATA%/gcloud/gce", ] # Four separate credential stores, all of them whole-file secrets. The two # .db files are SQLite holding OAuth refresh tokens. # # Listed under both config directories. A consumer asks "is this file a # declared secret" without consulting paths, so the Windows spellings are the # second lock on a door paths already keeps shut. secret = [ "~/.config/gcloud/credentials.db", "~/.config/gcloud/access_tokens.db", "~/.config/gcloud/application_default_credentials.json", "~/.config/gcloud/legacy_credentials/", "%APPDATA%/gcloud/credentials.db", "%APPDATA%/gcloud/access_tokens.db", "%APPDATA%/gcloud/application_default_credentials.json", "%APPDATA%/gcloud/legacy_credentials/", ] # No machine_lines: a named configuration holds account, project and region, # which are the same wherever you sign in. The machine-specific parts of # gcloud all live in the credential stores above.