{"id":14069686,"url":"https://github.com/jthegedus/asdf-gcloud","last_synced_at":"2025-03-16T13:31:02.301Z","repository":{"id":41310769,"uuid":"243940610","full_name":"jthegedus/asdf-gcloud","owner":"jthegedus","description":"☁️ GCloud CLI (Google Cloud SDK) plugin for asdf version manager. Pin gcloud versions for each project!","archived":false,"fork":false,"pushed_at":"2024-03-14T11:51:28.000Z","size":266,"stargazers_count":55,"open_issues_count":10,"forks_count":26,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-27T09:35:00.890Z","etag":null,"topics":["asdf","asdf-gcloud","asdf-plugin","asdf-vm","cloud-sdk-components","gcloud","gcloud-cli","gcloud-sdk","google","google-cloud"],"latest_commit_sha":null,"homepage":"https://asdf-vm.com","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jthegedus.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-29T09:31:56.000Z","updated_at":"2024-10-05T13:43:29.000Z","dependencies_parsed_at":"2023-01-22T10:30:45.145Z","dependency_job_id":"79ee58b3-e962-4e5d-89bd-0121adbc4f03","html_url":"https://github.com/jthegedus/asdf-gcloud","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jthegedus%2Fasdf-gcloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jthegedus%2Fasdf-gcloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jthegedus%2Fasdf-gcloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jthegedus%2Fasdf-gcloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jthegedus","download_url":"https://codeload.github.com/jthegedus/asdf-gcloud/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243815588,"owners_count":20352194,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asdf","asdf-gcloud","asdf-plugin","asdf-vm","cloud-sdk-components","gcloud","gcloud-cli","gcloud-sdk","google","google-cloud"],"created_at":"2024-08-13T07:07:08.510Z","updated_at":"2025-03-16T13:31:01.869Z","avatar_url":"https://github.com/jthegedus.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# asdf-gcloud ![Test](https://github.com/jthegedus/asdf-gcloud/workflows/Test/badge.svg) ![Lint](https://github.com/jthegedus/asdf-gcloud/workflows/Lint/badge.svg)\n\n\u003ca href=\"https://cloud.google.com/sdk/gcloud/reference\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n  \u003cimg src=\"assets/logo_lockup_cloud_rgb.png\" height=\"42\" align=\"middle\" /\u003e\n\u003c/a\u003e\n\n[GCloud CLI](https://cloud.google.com/sdk/gcloud/reference) plugin for [asdf version manager](https://asdf-vm.com) allowing you to pin `gcloud` versions for each GCP project.\n\n![asdf-gcloud](./assets/asdf-gcloud.png)\n\n\u003c/div\u003e\n\n# Contents\n\n- [Dependencies](#dependencies)\n- [Install](#install)\n- [Why?](#why)\n- [Supported Versions](#supported-versions)\n- [Default Cloud SDK Components](#default-cloud-sdk-components)\n- [Contributing](#contributing)\n- [License](#license)\n\n# Dependencies\n\nAre tracked in [lib/dependencies.txt](lib/dependencies.txt) and checked on installation of plugin and `asdf install gcloud *`. The core dependencies are: `bash`, `curl`, `python`, `sort`, `tar`.\n\n# Install\n\nPlugin:\n\n```shell\nasdf plugin add gcloud https://github.com/jthegedus/asdf-gcloud\n```\n\nGCloud:\n\n```shell\nasdf install gcloud latest\n```\n\nSet global version:\n\n```shell\nasdf global gcloud latest\n```\n\nThese commands also apply to `asdf local gcloud \u003cversion\u003e`.\n\n# Why?\n\nThe asdf config file, `.tool-versions`, allows pinning each tool in your project to a specific version. This ensures that ALL developers are using the same version of each tool. Same `python`, same `gcloud`, same `terraform` etc.\n\nWhen you update a version in `.tool-versions`, `asdf` will prompt all users who do not have the correct versions to upgrade. This enables whole teams to update their tools in unison.\n\n# Supported Versions\n\ngcloud releases from 352.0.0 and higher can be installed.\n\n# Default Cloud SDK Components\n\n`asdf-gcloud` can automatically install a set of Cloud SDK Components after each `asdf install gcloud \u003cversion\u003e`. To enable this feature you must have a file that lists one COMPONENT_ID per line. For example:\n\n```\nalpha\nbeta\ncloud-build-local\ncloud-firestore-emulator\n```\n\nThis file must be named `.default-cloud-sdk-components` and be at one of the following locations:\n\n- `$CLOUDSDK_CONFIG/.default-cloud-sdk-components`: next to gcloud auth configurations\n- `$HOME/.config/gcloud/.default-cloud-sdk-components`: next to gcloud auth configurations\n- `$(dirname ASDF_CONFIG_FILE)/.default-cloud-sdk-components`: relative to `.asdfrc` if configured\n- `$HOME/.default-cloud-sdk-components`: Home dir\n\n\u003e NOTE: by default `CLOUDSDK_CONFIG=$HOME/.config/gcloud`\n\nBelow is the list of available components (as of version `342.0.0`):\n\n```\n┌────────────────────────────────────────────────────────────────────────────────────────────────────────────┐\n│                                                 Components                                                 │\n├───────────────┬──────────────────────────────────────────────────────┬──────────────────────────┬──────────┤\n│     Status    │                         Name                         │            ID            │   Size   │\n├───────────────┼──────────────────────────────────────────────────────┼──────────────────────────┼──────────┤\n│ Not Installed │ App Engine Go Extensions                             │ app-engine-go            │  4.9 MiB │\n│ Not Installed │ Appctl                                               │ appctl                   │ 21.0 MiB │\n│ Not Installed │ Cloud Bigtable Command Line Tool                     │ cbt                      │  7.7 MiB │\n│ Not Installed │ Cloud Bigtable Emulator                              │ bigtable                 │  6.6 MiB │\n│ Not Installed │ Cloud Datalab Command Line Tool                      │ datalab                  │  \u003c 1 MiB │\n│ Not Installed │ Cloud Datastore Emulator                             │ cloud-datastore-emulator │ 18.4 MiB │\n│ Not Installed │ Cloud Firestore Emulator                             │ cloud-firestore-emulator │ 40.5 MiB │\n│ Not Installed │ Cloud Pub/Sub Emulator                               │ pubsub-emulator          │ 60.4 MiB │\n│ Not Installed │ Cloud SQL Proxy                                      │ cloud_sql_proxy          │  7.6 MiB │\n│ Not Installed │ Cloud Spanner Emulator                               │ cloud-spanner-emulator   │ 21.8 MiB │\n│ Not Installed │ Emulator Reverse Proxy                               │ emulator-reverse-proxy   │ 14.5 MiB │\n│ Not Installed │ Google Cloud Build Local Builder                     │ cloud-build-local        │  6.3 MiB │\n│ Not Installed │ Google Container Registry's Docker credential helper │ docker-credential-gcr    │  1.8 MiB │\n│ Not Installed │ Kustomize                                            │ kustomize                │ 25.9 MiB │\n│ Not Installed │ Minikube                                             │ minikube                 │ 50.4 MiB │\n│ Not Installed │ Nomos CLI                                            │ nomos                    │ 22.9 MiB │\n│ Not Installed │ On-Demand Scanning API extraction helper             │ local-extract            │ 13.6 MiB │\n│ Not Installed │ Skaffold                                             │ skaffold                 │ 16.8 MiB │\n│ Not Installed │ anthos-auth                                          │ anthos-auth              │ 16.8 MiB │\n│ Not Installed │ config-connector                                     │ config-connector         │ 44.6 MiB │\n│ Not Installed │ gcloud Alpha Commands                                │ alpha                    │  \u003c 1 MiB │\n│ Not Installed │ gcloud Beta Commands                                 │ beta                     │  \u003c 1 MiB │\n│ Not Installed │ gcloud app Java Extensions                           │ app-engine-java          │ 52.4 MiB │\n│ Not Installed │ gcloud app Python Extensions                         │ app-engine-python        │  6.1 MiB │\n│ Not Installed │ gcloud app Python Extensions (Extra Libraries)       │ app-engine-python-extras │ 27.1 MiB │\n│ Not Installed │ kpt                                                  │ kpt                      │ 11.7 MiB │\n│ Not Installed │ kubectl                                              │ kubectl                  │  \u003c 1 MiB │\n│ Not Installed │ kubectl-oidc                                         │ kubectl-oidc             │ 16.8 MiB │\n│ Not Installed │ pkg                                                  │ pkg                      │          │\n│ Installed     │ BigQuery Command Line Tool                           │ bq                       │  \u003c 1 MiB │\n│ Installed     │ Cloud SDK Core Libraries                             │ core                     │ 18.6 MiB │\n│ Installed     │ Cloud Storage Command Line Tool                      │ gsutil                   │  3.9 MiB │\n└───────────────┴──────────────────────────────────────────────────────┴──────────────────────────┴──────────┘\n```\n\n# Contributing\n\nContributions of any kind welcome! See the [contributing guide](CONTRIBUTING.md).\n\n[Thanks goes to these contributors](https://github.com/jthegedus/asdf-gcloud/graphs/contributors)!\n\n## Why are there Node deps here?\n\nI decided the value of [commitlint](https://commitlint.js.org/#/) \u0026 sharing Git Hooks with [husky](https://typicode.github.io/husky/#/) were greater than the cost of including these deps. Not only this, but dogfooding `asdf` for dev deps makes this less of an issue.\n\n# License\n\n[MIT License](LICENSE) © [James Hegedus](https://github.com/jthegedus/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjthegedus%2Fasdf-gcloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjthegedus%2Fasdf-gcloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjthegedus%2Fasdf-gcloud/lists"}