Skip to main content

okustera_layer_version (Resource)

Publishes an immutable snapshot version of a serverless CephFS layer. Dependencies are unpacked to the CephFS shared storage volume (/opt/layers) and backed up to Ceph S3 archive storage.

Example Usage​

Layer Version via Explicit Package Requirements​

resource "okustera_layer_version" "data_v1" {
layer_id = okustera_layer.datascience.id

packages = [
"requests==2.32.3",
"pydantic==2.8.2"
]
}

Layer Version via Requirements.txt​

resource "okustera_layer_version" "reqs_v1" {
layer_id = okustera_layer.datascience.id

requirements_txt = file("${path.module}/requirements.txt")
}

Schema​

Required​

  • layer_id (Number, Forces new resource) Parent layer identifier.

Optional​

  • archive_base64 (String, Sensitive, Forces new resource) Base64-encoded zip archive payload containing pre-built dependencies.
  • packages (List of String) List of explicit package requirements.
  • requirements_txt (String, Forces new resource) Pip requirements.txt file contents for Python runtimes.

Read-Only​

  • cephfs_subpath (String) Subdirectory path within shared CephFS volume.
  • created_at (String) Timestamp when version was published.
  • id (String) Unique layer version identifier in format <layer_id>/<version>.
  • s3_key (String) Ceph S3 archive object storage URI.
  • sha256 (String) SHA256 fingerprint hash of layer version contents.
  • size_bytes (Number) Size of extracted layer dependencies in bytes.
  • status (String) Build status of the layer version (ready, building, error).
  • version (Number) Published sequential version number.

Import​

Layer versions can be imported using composite <layer_id>/<version>:

terraform import okustera_layer_version.example 10/1