Sistema de Arquivos
Entradas de sistema de arquivos expõem armazenamento baseado em diretórios ou armazenamento embutido somente leitura aos módulos do runtime. Esta página é uma referência de configuração; os blocos YAML são fragmentos de entradas individuais, e não projetos completos.
Tipos de Entradas
| Tipo | Descrição |
|---|---|
fs.directory |
Sistema de arquivos baseado em diretório |
fs.embed |
Sistema de arquivos embutido somente leitura |
Sistema de Arquivos de Diretório
- name: uploads
kind: fs.directory
directory: "/var/data/uploads"
auto_init: true
mode: "0755"
| Campo | Tipo | Padrão | Descrição |
|---|---|---|---|
directory |
string | obrigatório | Caminho raiz |
auto_init |
bool | false | Cria diretório se ausente |
mode |
string | 0755 | Modo de permissão Unix (octal) |
base |
string | - | Base para caminhos relativos: project (diretório de trabalho do processo) ou module (raiz de carregamento do módulo proprietário) |
Caminhos absolutos são usados como fornecidos, independentemente do que base indicar.
Para um caminho relativo, base: project o mantém relativo ao diretório de trabalho do processo. Tanto base: module quanto um base não definido o resolvem contra a raiz de carregamento do módulo que é dono da entrada, obtida através do proprietário da entrada no registry. Quando a entrada não tem módulo proprietário, ou esse módulo não tem uma raiz de recursos resolvível, o caminho permanece relativo ao diretório de trabalho do processo.
Qualquer outro valor é rejeitado com invalid directory base.
O modo restringe todas as operações de arquivo. Bits de execução são adicionados automaticamente quando todos os bits de leitura estão definidos e nenhum bit de execução está.
Sistema de Arquivos Embutido
- name: static
kind: fs.embed
Sistemas de arquivos embutidos carregam de recursos de pack usando o ID da entrada. Eles são somente leitura.
Operações
Ambos os tipos de sistema de arquivos implementam:
| Operação | Directory | Embed |
|---|---|---|
| Open/Read | Sim | Sim |
| Stat | Sim | Sim |
| Lstat | Sim | Sim |
| ReadDir | Sim | Sim |
| OpenFile (escrita) | Sim | Não |
| Remove | Sim | Não |
| Mkdir | Sim | Não |
| Rename | Sim | Não |
Operações de escrita em sistemas de arquivos embutidos retornam um erro.
API Lua
Consulte o módulo Filesystem para as operações de arquivo.
Consulte também
- Módulo Filesystem — Referência da API Lua
- Cloud Storage — Armazenamento de objetos compatível com S3
- Template — Templates carregados de sistemas de arquivos