To get the artifact, run
git clone --recursive https://github.com/theosotr/fsmove-eval ~/fsmove-eval
The artifact contains the instructions and scripts
to re-run the evaluation of our paper.
Furthermore, it also provides (as a git submodule)
the tool used in our paper,
which we call FSMoVe
(File System Model Verifier).
Note that FSMoVe
is available as
open-source software under
the GNU General Public License v3.0.
Repository URL: https://github.com/AUEB-BALab/fsmove
The source code of FSMoVe
is located inside
the fsmove
directory. Enter this directory
by running
cd fsmove
To facilitate the use of FSMoVe
,
we provide a Dockerfile
that builds an image
with the necessary environment for
applying and analyzing Puppet modules.
This image consists of the following elements:
- An installation of
FSMoVe
. The image installs the OCaml compiler (version 4.0.5) and all the packages required for buildingFSMoVe
from source. - An installation of Puppet.
- An installation of strace.
- A user named
fsmove
withsudo
privileges.
To build a Docker image named fsmove
, run a command of
the form
docker build -t fsmove --build-arg IMAGE_NAME=<base-image> .
where <base-image>
refers to the base image
from which we set up the environment.
In our evaluation, we ran Puppet manifests on Debian Stretch,
so we used debian:stretch
as the base image.
So please run the following command:
docker build -t fsmove --build-arg IMAGE_NAME=debian:stretch .
This will take roughly 10-15 minutes. After building the Docker image successfully, please go to the root directory of the artifact
cd ~/fsmove-eval
See README.md