vfm stands for virtual file manager. vfm doesn't manage the actual file storage, the actual files are stored by mini-fstore.
- event-pump
- user-vault
- mini-fstore
- hammer
- MySQL
- Consul
- Redis
- RabbitMQ
Check miso and gocommon for more about configuration.
Property | Description | Default Value |
---|---|---|
- Since v0.0.4,
vfm
relies onevnet-pump
to listen to the binlog events. Whenever a newfile_info
record is inserted, theevent-pump
sends MQ tovfm
, which triggers the image compression workflow if the file is an image. - Since v0.0.8
- Users can only share files using
vfolder
, fieldfile_info.user_group
and tablefile_sharing
are deprecated.
- Users can only share files using
- Since v0.1.3, fantahsea has been merged into vfm codebase, see Fantahsea Migration.
- Since v0.1.17, file tag functionality is removed.
Calculate size of all directories recursively, bubbling up to the root:
curl -X POST "http://localhost:8086/compensate/dir/calculate-size"
Compensate thumbnail generations, those that are images/videos (guessed by names) are processed to generate thumbnails:
curl -X POST "http://localhost:8086/compensate/thumbnail"
Everytime the schema is changed, a new SQL script for that specific version is maintained at internal/schema/scripts
. The migration is automatically handled by github.com/curtisnewbie/svc.
- Since v0.1.19, vfm will migrate schema automatically using github.com/curtisnewbie/svc.