Timoni · Schema

Timoni Module

Schema for a Timoni Kubernetes module definition distributed as an OCI artifact

ContainersKubernetesPackage ManagerCUE

Properties

Name Type Description
name string Module name in kebab-case
version string Semantic version of the module
repository string OCI registry repository URL for the module
digest string OCI artifact digest for reproducible deployments
tags array Version tags available for this module
description string Human-readable description of the module
license string SPDX license identifier
source string Source code repository URL
annotations object OCI annotations for the module artifact
values object CUE-validated configuration values accepted by the module
View JSON Schema on GitHub

JSON Schema

timoni-module-schema.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/timoni/main/json-schema/timoni-module-schema.json",
  "title": "Timoni Module",
  "description": "Schema for a Timoni Kubernetes module definition distributed as an OCI artifact",
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Module name in kebab-case"
    },
    "version": {
      "type": "string",
      "pattern": "^v?[0-9]+\\.[0-9]+\\.[0-9]+",
      "description": "Semantic version of the module"
    },
    "repository": {
      "type": "string",
      "description": "OCI registry repository URL for the module"
    },
    "digest": {
      "type": "string",
      "pattern": "^sha256:[a-f0-9]{64}$",
      "description": "OCI artifact digest for reproducible deployments"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Version tags available for this module"
    },
    "description": {
      "type": "string",
      "description": "Human-readable description of the module"
    },
    "license": {
      "type": "string",
      "description": "SPDX license identifier"
    },
    "source": {
      "type": "string",
      "format": "uri",
      "description": "Source code repository URL"
    },
    "annotations": {
      "type": "object",
      "description": "OCI annotations for the module artifact",
      "properties": {
        "org.opencontainers.image.created": {
          "type": "string",
          "format": "date-time"
        },
        "org.opencontainers.image.source": {
          "type": "string"
        },
        "org.opencontainers.image.version": {
          "type": "string"
        },
        "org.opencontainers.image.revision": {
          "type": "string"
        }
      }
    },
    "values": {
      "type": "object",
      "description": "CUE-validated configuration values accepted by the module"
    }
  },
  "required": ["name", "version", "repository"]
}