4.0 KiB
Installing Manually (Mac OS)
Common Steps
double: installing; common_steps
Note
The below operations should take place underneath your <project>/etc folder.
- Install Homebrew
Please, follow the steps described here
Install system package dependencies:
$ brew install python --framework $ brew install rabbitmq
Note
- To have launchd start rabbitmq at login:
ln -sfv /usr/local/opt/rabbitmq/*.plist ~/Library/LaunchAgents
- Then to load rabbitmq now:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.rabbitmq.plist
- Or, if you don't want/need launchctl, you can just run:
rabbitmq-server
Start RabbitMQ:
$ rabbitmq-server RabbitMQ 3.1.1. Copyright (C) 2007-2013 VMware, Inc. ## ## Licensed under the MPL. See http://www.rabbitmq.com/ ## ## ########## Logs: /usr/local/var/log/rabbitmq/rabbit@localhost.log ###### ## /usr/local/var/log/rabbitmq/rabbit@localhost-sasl.log ########## Starting broker... completed with 7 plugins.
Clone the BillingStack repo off of Github:
$ git clone https://github.com/billingstack/billingstack.git $ cd billingstack
Setup virtualenv and Install BillingStack and it's dependencies
Note
This is to not interfere with system packages etc.
$ pip install virtualenv $ python tools/install_venv.py $ . .venv/bin/activate $ python setup.py develop
Warning
ValueError: unknown locale: UTF-8.
To fix it you will have to set these environment variables in your ~/.profile or ~/.bashrc manually:
export LANG=en_US.UTF-8 export LC_ALL=en_US.UTF-8
Copy sample configs to usable ones, inside the etc folder do
$ sudo cp -r etc/billingstack /etc $ cd /etc/billingstack $ sudo ls *.sample | while read f; do cp $f $(echo $f | sed "s/.sample$//g"); done
Note
Change the wanted configuration settings to match your environment, the file is in the /etc/billingstack folder:
$ vi /etc/billingstack/billingstack.conf
Installing Central
double: installing; central
Note
This is needed because it is the service that the API and others uses to communicate with to do stuff in the Database.
- See Common Steps before proceeding.
- Create the DB for
central
$ python tools/resync_billingstack.py
- Now you might want to load sample data for the time being
$ python tools/load_samples.py
- Start the central service
$ billingstack-central ... 2013-06-09 03:51:22 DEBUG [amqp] Open OK! 2013-06-09 03:51:22 DEBUG [amqp] using channel_id: 1 2013-06-09 03:51:22 DEBUG [amqp] Channel open 2013-06-09 03:51:22 INFO [...] Connected to AMQP server on localhost:5672 2013-06-09 03:51:22 DEBUG [...] Creating Consumer connection for Service central
Installing the API
double: installing; api
Note
The API Server needs to able to talk via MQ to other services.
- See Common Steps before proceeding.
- Start the API service
$ billingstack-api ... 2013-06-09 03:52:31 INFO [eventlet.wsgi] (2223) wsgi starting up on http://0.0.0.0:9091/