Skip to content

Latest commit

 

History

History
91 lines (69 loc) · 1.98 KB

README.md

File metadata and controls

91 lines (69 loc) · 1.98 KB

dbfs

Absolutely sane project. A working fuse adapter for DB-based filesystem.

Database structure

Table relations

Enums

  1. file_types
id description
- Regular file
b Block device
c Character device
d Directory
l Symbolic link
p Named pipe
s Socket
  1. special_bits (column description omitted)
id setuid setgid sticky
0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1
  1. permissions
id can_read can_write can_execute
0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1

Building

Build/test recipes can be viewed with just -l.

Running

To start a clean production containerized DB - type:

just prepare mysql

When done - type:

just stop

Integration testing

To run integration tests:

  1. Install dependencies: podman, perl, perl-dbd-mysql, just
sudo pacman -Syu podman perl perl-dbd-mysql just
  1. Setup integration testing environment with
just prepare_int mysql
  1. Run integration tests
just test mysql
  1. Stop and clean integration testing environment
just stop

Booting Arch Linux

Installing Arch Linux in dbfs and booting from it is a relatively long process. Full instructions are available in a separate document.