{"library":"python-glanceclient","title":"OpenStack Glance Client Library","description":"python-glanceclient is a client library for OpenStack Glance, the Image service, built on the Glance API. It provides a Python API for interacting with Glance and a command-line tool (`glance`). The current stable version is 4.11.0, and it follows the OpenStack release cadence, typically releasing new versions every six months to align with OpenStack's development cycle.","language":"python","status":"active","last_verified":"Sun May 17","install":{"commands":["pip install python-glanceclient"],"cli":{"name":"glance","version":"4.11.0"}},"imports":["from glanceclient import client as glance_client"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import os\nfrom keystoneauth1.identity import v3\nfrom keystoneauth1 import session\nfrom glanceclient import client as glance_client\n\n# --- Authentication --- \n# Ensure OpenStack environment variables are set (e.g., OS_AUTH_URL, OS_USERNAME, OS_PASSWORD, etc.)\n# You can also pass credentials directly, but environment variables are recommended.\nauth = v3.Password(\n    auth_url=os.environ.get('OS_AUTH_URL', 'http://localhost:5000/v3'),\n    username=os.environ.get('OS_USERNAME', 'admin'),\n    password=os.environ.get('OS_PASSWORD', 'password'),\n    project_name=os.environ.get('OS_PROJECT_NAME', 'admin'),\n    user_domain_name=os.environ.get('OS_USER_DOMAIN_NAME', 'Default'),\n    project_domain_name=os.environ.get('OS_PROJECT_DOMAIN_NAME', 'Default')\n)\nsess = session.Session(auth=auth)\n\n# --- Initialize Glance Client (API v2 recommended) ---\nglance = glance_client.Client('2', session=sess)\n\n# --- List Images ---\ntry:\n    print(\"\\nAvailable Glance Images:\")\n    images = glance.images.list()\n    if images:\n        for image in images:\n            print(f\"  ID: {image.id}, Name: {image.name}, Status: {image.status}, Visibility: {getattr(image, 'visibility', 'unknown')}\")\n    else:\n        print(\"  No images found.\")\nexcept Exception as e:\n    print(f\"Error connecting to Glance or listing images: {e}\")","lang":"python","description":"This quickstart demonstrates how to authenticate with OpenStack Keystone using environment variables and then initialize the Glance client to list available images. It uses API version 2, which is the default for recent Glance client versions. Make sure your OpenStack environment variables (e.g., `OS_AUTH_URL`, `OS_USERNAME`, `OS_PASSWORD`, `OS_PROJECT_NAME`) are set.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-17","installed_version":"4.8.0","pypi_latest":"4.11.0","is_stale":true,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":6.3,"avg_import_s":0.56,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.49,"mem_mb":6.9,"disk_size":"66.2M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":6.6,"import_time_s":0.35,"mem_mb":6.9,"disk_size":"67M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.82,"mem_mb":7.6,"disk_size":"72.1M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":6,"import_time_s":0.75,"mem_mb":7.6,"disk_size":"73M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.6,"mem_mb":7.6,"disk_size":"72.0M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":5.7,"import_time_s":0.69,"mem_mb":7.5,"disk_size":"73M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.57,"mem_mb":7.3,"disk_size":"71.8M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":5.8,"import_time_s":0.62,"mem_mb":7.3,"disk_size":"73M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":null,"import_time_s":0.38,"mem_mb":6.7,"disk_size":"69.0M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"python-glanceclient","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":7.6,"import_time_s":0.37,"mem_mb":6.7,"disk_size":"70M"}]}}