A device monitoring and inventory application for Hive-CI
Hive Mind allows you to administer your hives and devices:
- Specify which devices run which type of tests
- Look up device information
- Spot problems with devices
It also serves as an inventory system for your office devices.
HiveMind is a beta system at the moment. We are just switching to using it internally from our old device management database. You’re welcome to play with it but be aware we’re working on it right at this moment!
You will need to install a recent version of ruby.
To get started, check out the rails application:
git clone email@example.com:bbc/hive_mind.git cd hive_mind
You will need to do some basic configuration to get going. Open up the Gemfile, and add the following:
gem 'hive_mind_mobile', git: 'https://github.com/bbc/hive_mind_mobile'
This will enable the mobile engine. Now run:
bundle install --without integration
This will install the dependencies. Finally run:
bundle exec rake db:migrate
This will set up the database. You’re running in development mode, which means you’re using a sqlite database. If you want to configure a different database. You can modify config/database.yml. We use a mysql database so that is the default for production hivemind.
Finally, start your application by running:
bundle exec rails s
This will start hive_mind on port 3001 on your machine. Visit http://localhost:3001.
There’s not much to see at the moment. You need to start getting devices reporting in!
Connecting up to your hive runners
Make sure your hive runners are up to date. You can add your local HiveMind to the runner config to get your hives reporting into the system. Edit the config/settings.yml file in each of your runner instances, adding in the hive_mind url to your network config:
network: hive_mind: http://localhost:3001
Restart your hives:
hived stop hived start
Your hives should start reporting in within 30 seconds. Visit http://localhost:3001/brands/1 to see your BBC branded hives checking in.
Connecting up to your scheduler
Add the following config to your bash profile:
Restart your scheduler. When your runners report test results to the hive, they will now also report in the device id from HiveMind, giving you more details about your devices.