Skip to main content

A CLI utility to manage Google Cloud Platform resource hierarchy paths.

Project description

gcpath

gcpath is a CLI utility to manage Google Cloud Platform resource hierarchy paths. It helps you translate between GCP resource names (e.g., folders/12345) and human-readable paths (e.g., //example.com/department/team).

Features

  • Recursive Listing: List all folders in your organization as paths.
  • Path Resolution: Get the resource name (ID) for a given path.
  • Reverse Lookup: Get the path for a given resource name (ID).
  • Tree Visualization: View your hierarchy as a tree with depth limits.
  • Dual Mode:
    • Cloud Asset API (Default): Fast, bulk loading using GCP Cloud Asset Inventory.
    • Resource Manager API: Iterative loading using standard Resource Manager API (slower, but different permissions).

Quick Start

After installation, ensure you are authenticated with Google Cloud and have the necessary permissions.

# List all resources
gcpath ls

# List children of a specific folder
gcpath ls folders/123456789

# Find ID of a specific path
gcpath name //example.com/engineering

# Find path of a specific resource ID
gcpath path folders/123456789

# View tree rooted at organization
gcpath tree

# View tree rooted at folder
gcpath tree folders/123456789

Usage

List Resources (ls)

List folders and projects. Defaults to the organization root.

gcpath ls [RESOURCE_NAME]

Options:

  • -l, --long: Show resource IDs and numbers (for projects).
  • -R, --recursive: List resources recursively.

Examples:

# List all organizations and their top-level children
gcpath ls

# List all contents of an organization recursively
gcpath ls -R

# List children of a specific folder
gcpath ls folders/123456789

Tree View (tree)

Visualize the resource hierarchy in a tree format.

gcpath tree [RESOURCE_NAME]

Options:

  • -L, --level N: Limit depth of the tree (max 3).
  • -i, --ids: Include resource IDs in the output.

Get Resource Name (name)

Get the GCP resource name (e.g., folders/123) from a path:

gcpath name //example.com/engineering/backend

To get just the ID:

gcpath name --id //example.com/engineering/backend

Get Path (path)

Get the path from a resource name:

gcpath path folders/987654321

Authentication

gcpath uses Google Cloud Application Default Credentials (ADC).

  1. Install gcloud CLI.
  2. Authenticate:
    gcloud auth application-default login
    

Permissions

  • Cloud Asset API: cloudasset.assets.searchAllResources on the Organization.
  • Resource Manager API: resourcemanager.folders.list and resourcemanager.projects.get.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gcpath-0.2.1.tar.gz (54.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gcpath-0.2.1-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file gcpath-0.2.1.tar.gz.

File metadata

  • Download URL: gcpath-0.2.1.tar.gz
  • Upload date:
  • Size: 54.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gcpath-0.2.1.tar.gz
Algorithm Hash digest
SHA256 ab0e208fbe5b69884c962b9b4ffdcb49ecd20beb3f252249e1087974d22a0177
MD5 59f31efec93e57f9e795c31ed0f5ed6f
BLAKE2b-256 05e31868112b758542fa075258cd4a94b3b4f0cd8d01e5baa55b069e58cd0e73

See more details on using hashes here.

Provenance

The following attestation bundles were made for gcpath-0.2.1.tar.gz:

Publisher: release.yml on tardigrde/gcpath

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gcpath-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: gcpath-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 14.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gcpath-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a6a44895384ad21108dc5dbefe91893a274c1fd01683488e12f1dfc59970f003
MD5 258a84a97fc87748968c804a032fddea
BLAKE2b-256 ca3ad8e25fcada95a226925483fe40c52c5519a57d62ced6a5e140325fefc5b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for gcpath-0.2.1-py3-none-any.whl:

Publisher: release.yml on tardigrde/gcpath

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page