# Distinguish snapshots from images via property \`image\_type\`?

**URL:** <https://discourse.openoperations.org/t/distinguish-snapshots-from-images-via-property-image-type/28>\
**Category:** General\
**Created:** [September 29, 2026, 11:26am UTC](https://discourse.openoperations.org/t/distinguish-snapshots-from-images-via-property-image-type/28 "2026-09-29T11:26:12Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![mbuechse](https://discourse.openoperations.org/letter_avatar_proxy/v4/letter/m/c5a1d2/32.png) [@mbuechse](https://discourse.openoperations.org/u/mbuechse)\
**Post date:** [September 29, 2026, 11:26am UTC](https://discourse.openoperations.org/t/distinguish-snapshots-from-images-via-property-image-type/28/1 "2026-09-29T11:26:12Z")

</div>

We want to be able to select an image programmatically (for instance, in an OpenTofu script) by its properties (such as `os_distro`, `os_version`, and `os_purpose`). SCS already mandates these properties. However, the pool of images can be polluted when people create a snapshot of a VM via Horizon. Then a snapshot of the image will be created with the same properties, so it cannot be distinguished from the original image, and programmatic selection becomes difficult. There is a workaround: one can look for a `block_device_mapping`, which won’t be present for the original image, but this seems quite ‘hacky’, and (as far as I can tell) it’s only possible on the client side.

I heard that it might be possible to have Glance (or whomever) set a property image\_type=“snapshot” for each snapshot that is created. This would help with the programmatic filtering. Can we expect operators to implement such a thing?
