bbc/matterhorn

Name: matterhorn

Owner: BBC

Description: A device identification service

Created: 2017-02-08 10:26:59.0

Updated: 2018-05-03 08:57:00.0

Pushed: 2018-05-04 09:13:39.0

Homepage: null

Size: 90

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Project Matterhorn

Overview | Running | Testing | Releasing | Useful Links

Overview

Matterhorn is a device identification service for the TV Application Platform (TAP)

Architecture

Matterhorn Architecture Diagram


Development
Prerequisites
Running
install
ripts/sandbox/devSetup.sh
Testing
er-compose exec matterhorn npm test

We test our code using Jasmine & ESlint. Running npm test will run eslint on your source code, followed by the jasmine tests.

The Jasmine tests are separated into two categories;

Running Separate Tests

You can run the different test categories separately by running any of the following commands.

er-compose exec matterhorn npm run test:spec
er-compose exec matterhorn npm run test:integration
Updating the Pipeline Submodule

Changes to the pipeline project (private) which configures hosting for Matterhorn are linked via a submodule. To update the reference to the submodule, run:

submodule foreach git pull origin master
Releasing

Currently the tests are run against each commit. If you want to build to an environment you must first make a tag, before building to TEST and then LIVE in Jenkins.

Links

A table of useful links for the project.

Type | Location ————————– | ——– Status Endpoint | https://connected-tv-service-matterhorn.api.bbci.co.uk/status User Agent Endpoint | https://connected-tv-service-matterhorn.api.bbci.co.uk/identify/ua/:ua/json WhoAmI Endpoint | https://connected-tv-service-matterhorn.api.bbci.co.uk/identify/whoami/:whoami/json Build Job | https://jenkins.connected-tv.tools.bbc.co.uk/job/matterhorn-pipeline/ Deploy Job | https://jenkins.connected-tv.tools.bbc.co.uk/job/matterhorn-deploy/ Cosmos Service | https://cosmos.tools.bbc.co.uk/services/matterhorn Melanite Library | https://github.com/bbc/melanite Device Identification Data | https://github.com/bbc/device-identification-data TAL | https://github.com/bbc/tal

License

Matterhorn is available to everyone under the terms of the Apache 2.0 open source licence. Take a look at the LICENSE file in the code, and read our faq and documentation to learn how to contribute.

© BBC 2017


? back to top


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.