build_rpm.sh uses "mock" to build an entire Scylla build environment, which easily spans more than 15 gigabytes. mock, by defaults, puts this build directory in a subdirectory of /var/lib/mock. There is no reason why temporary build products need to be in the root directory: Some machines (like mine) don't have that much free space in the root directory making it impossible to use this script on such machines. and it's too easy to leave temporary files there without noticing. With this patch, the mock directories are put in build/mock/ instead of /var/lib/mock. Signed-off-by: Nadav Har'El <nyh@scylladb.com> Message-Id: <20181217195952.15154-1-nyh@scylladb.com>
1.4 KiB
1.4 KiB
Scylla
Quick-start
$ git submodule update --init --recursive
$ sudo ./install-dependencies.sh
$ ./configure.py --mode=release
$ ninja-build -j4 # Assuming 4 system threads.
$ ./build/release/scylla
$ # Rejoice!
Please see HACKING.md for detailed information on building and developing Scylla.
Running Scylla
- Run Scylla
./build/release/scylla
- run Scylla with one CPU and ./tmp as data directory
./build/release/scylla --datadir tmp --commitlog-directory tmp --smp 1
- For more run options:
./build/release/scylla --help
Building Fedora RPM
As a pre-requisite, you need to install Mock on your machine:
# Install mock:
sudo yum install mock
# Add user to the "mock" group:
usermod -a -G mock $USER && newgrp mock
Then, to build an RPM, run:
./dist/redhat/build_rpm.sh
The built RPM is stored in the build/mock/<configuration>/result directory.
For example, on Fedora 21 mock reports the following:
INFO: Done(scylla-server-0.00-1.fc21.src.rpm) Config(default) 20 minutes 7 seconds
INFO: Results and/or logs in: build/mock/fedora-21-x86_64/result
Building Fedora-based Docker image
Build a Docker image with:
cd dist/docker
docker build -t <image-name> .
Run the image with:
docker run -p $(hostname -i):9042:9042 -i -t <image name>