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) Piprequirements.txtfile 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