Skip to main content

Overview

Metadata namespaces define structured, validated property schemas for images. When a namespace is defined, the Dashboard displays a guided property editor instead of a raw key-value form — ensuring consistent metadata across your image catalog. Namespaces can be public (visible to all projects) or private (visible only to the creating project).
Administrator Access Required — This operation requires the admin role. Contact your Xloud administrator if you do not have sufficient permissions.

Concepts

ConceptDescription
NamespaceA named collection of property definitions for a resource type
PropertyA typed key-value field with validation rules (enum, string, boolean, integer)
ObjectA named group of properties within a namespace
TagA simple string label associated with images — for filtering and grouping
Resource typeThe Xloud resource the namespace applies to — OS::Image::Image for images

Image Tags

Tags are the simplest form of image metadata — plain strings with no key, attached directly to an image. Use them for fast catalog filtering, grouping by OS family, compliance designation, or release milestone.
Navigate to Project → Compute → Images → click image name → Edit Image.In the Tags field, type a tag and press Enter to add it. Add as many as needed, then click Update Image.
Use a consistent tagging convention across your image catalog:
CategoryExample Tags
OS familyubuntu, rhel, debian, windows, centos
Support tierlts, standard, eol, preview
Statusproduction-ready, deprecated, testing, golden
Compliancepci-dss, hipaa, iso27001, fips
Architecturex86_64, aarch64
Special configno-cloud-init, virtio, uefi, gpu-compatible

Create a Metadata Namespace

Define the namespace schema

Create a JSON file defining the namespace properties:
namespace-schema.json
{
  "namespace": "org.xloud.images",
  "display_name": "Xloud Image Properties",
  "description": "Standardized OS and hardware metadata for Xloud images",
  "visibility": "public",
  "protected": true,
  "resource_type_associations": [
    {
      "name": "OS::Image::Image",
      "prefix": ""
    }
  ],
  "properties": {
    "os_lifecycle": {
      "title": "OS Lifecycle",
      "description": "Support lifecycle status of the OS",
      "type": "string",
      "enum": ["lts", "standard", "eol"],
      "operators": ["<or>"]
    },
    "xloud_base_image": {
      "title": "Xloud Base Image",
      "description": "Whether this is an Xloud-maintained base image",
      "type": "boolean"
    },
    "os_security_patch_date": {
      "title": "Last Security Patch Date",
      "description": "Date of the most recent OS security patch applied",
      "type": "string",
      "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$"
    }
  }
}

Register the namespace

Create metadata namespace
openstack metric namespace create \
  --schema namespace-schema.json \
  --resource-type OS::Image::Image \
  org.xloud.images

Verify namespace is active

List registered namespaces
openstack metric namespace list
The org.xloud.images namespace appears in the list.

Use Namespace Properties

Once a namespace is registered, its properties appear in the Dashboard image editor as a structured form. Set them via CLI:
Set namespace-defined properties on an image
openstack image set \
  --property os_lifecycle=lts \
  --property xloud_base_image=true \
  --property os_security_patch_date=2026-03-15 \
  ubuntu-24.04-lts

Manage Namespaces

openstack metric namespace list
Deleting a namespace removes the property schema definitions but does not remove existing property values from images. Images retain their property values even after the namespace is deleted.

Property Type Reference

TypeDescriptionExample
stringFree-text string (with optional enum or pattern)"lts", "standard"
booleanTrue/false valuetrue, false
integerWhole number4, 8096
numberFloating-point number3.14
arrayList of values["tag1", "tag2"]

Next Steps

Image Properties

Set properties on individual images using the defined namespace schemas.

Security

Protect critical metadata properties from unauthorized modification.

Storage Backends

Configure the backend that stores the image data alongside its metadata.

Admin Troubleshooting

Resolve metadata namespace and property validation issues.