Skip to content
Mike Perham edited this page Nov 11, 2017 · 24 revisions

Faktory's main target is 64-bit Linux. There are two Vagrant setups in build/{centos,ubuntu} for building your own Faktory binary. The Ubuntu image is modern 16.04, the CentOS image is old 6.9.

Setup

  1. Clone this repo locally: git clone https://github.com/contribsys/faktory
  2. Install VirtualBox or another platform supported by Vagrant.
  3. Run cd faktory/build/{ubuntu,centos} && vagrant plugin install vagrant-vbguest && vagrant up to install and start the box.
  4. Run vagrant ssh to connect to the box.
  5. Run the following commands to perform one-time setup:
cd /faktory/build
cd ubuntu # or centos
./setup.sh

This command will take about 10 minutes.

Workflow

If all went well, your Faktory source will be mirrored in /faktory. You can make changes in OSX and run make test or make run inside Vagrant to verify them.

Vagrant will forward the API and web ports to 17419 and 17420 on OSX. You can point your web browser to localhost:17420 to see the Web UI running on the Linux container in Vagrant. This makes it easy to make and see modifications to the Web UI. Unfortunately you will need to restart the server for every change you make as everything is compiled into the binary.

OSX

Faktory targets Go 1.9.x. Other versions might work but aren't tested. To build a local Faktory binary on OSX, these are the basic steps:

  1. Clone this repo locally: git clone https://github.com/contribsys/faktory
  2. Install RocksDB brew install rocksdb
  3. Run make prepare to download other Go dependencies
  4. Run make test to execute the test suite to verify compilation.
  5. Run make build to compile binaries.
Clone this wiki locally