Sistema de Archivos

Las entradas de sistema de archivos exponen almacenamiento respaldado por directorios o almacenamiento embebido de solo lectura a los módulos en tiempo de ejecución. Esta página es una referencia de configuración; sus bloques YAML son fragmentos de entradas individuales, no proyectos completos.

Tipos de Entrada

Tipo Descripción
fs.directory Sistema de archivos basado en directorio
fs.embed Sistema de archivos embebido de solo lectura

Sistema de Archivos de Directorio

- name: uploads
  kind: fs.directory
  directory: "/var/data/uploads"
  auto_init: true
  mode: "0755"
Campo Tipo Por Defecto Descripción
directory string requerido Ruta raíz
auto_init bool false Crear directorio si no existe
mode string 0755 Modo de permisos Unix (octal)
base string - Base de rutas relativas: project (directorio de trabajo del proceso) o module (raíz de carga del módulo propietario)

Las rutas absolutas se usan tal cual, sea cual sea el valor de base.

Para una ruta relativa, base: project la mantiene relativa al directorio de trabajo del proceso. Tanto base: module como un base sin definir la resuelven contra la raíz de carga del módulo propietario de la entrada, localizada a través del propietario de la entrada en el registro. Cuando la entrada no tiene módulo propietario, o ese módulo no tiene una raíz de recursos resoluble, la ruta permanece relativa al directorio de trabajo del proceso.

Cualquier otro valor se rechaza con invalid directory base.

El modo restringe todas las operaciones de archivo. Los bits de ejecución se agregan automáticamente cuando todos los bits de lectura están establecidos y ningún bit de ejecución lo está.

Las rutas se normalizan y validan. No es posible acceder a archivos fuera del directorio raíz configurado.

Sistema de Archivos Embebido

- name: static
  kind: fs.embed

Los sistemas de archivos embebidos cargan desde recursos del pack usando el ID de entrada. Son de solo lectura.

Los sistemas de archivos embebidos son un mecanismo interno. La configuración manual típicamente no es requerida.

Operaciones

Ambos tipos de sistema de archivos implementan:

Operación Directorio Embebido
Open/Read Sí Sí
Stat Sí Sí
Lstat Sí Sí
ReadDir Sí Sí
OpenFile (escribir) Sí No
Remove Sí No
Mkdir Sí No
Rename Sí No

Las operaciones de escritura en sistemas de archivos embebidos retornan un error.

API Lua

Consulte el módulo Filesystem para las operaciones de archivos.

Ver También