Skip to content

globocom/globomap-core-loader

Repository files navigation

GloboMap Core Loader

Application responsible for reading connected applications events and apply them to the Globo Map API. This application makes use of decoupled drivers for reading and transforming sources' information and make them available for updating the Globo Map API.

Drivers:

Network API driver

Cloudstack driver

Starting Project:

make dynamic_ports
make containers_build (Build images.)
make containers_start (Up containers)

Running local with docker:

make dynamic_ports
make containers_build (When project not started yet.)
make containers_start (When project not started yet.)

Running Tests:

make containers_build (When project not started yet.)
make containers_start (When project not started yet.)
make tests

Deploy in Tsuru:

API

make deploy_api project=<name of project>

Loader

make deploy_loader project=<name of project>

Environment variables configuration

All of the environment variables below must be set for the application to work properly.

Loader

Variable Description Example
DRIVER_FETCH_INTERVAL Interval in seconds on which the updates are fetched from a driver 60 (default)
GLOBOMAP_API_URL GloboMap API address http://globomap.domain.com
GLOBOMAP_API_USERNAME GloboMap API username username
GLOBOMAP_API_PASSWORD GloboMap API password xyz
GLOBOMAP_RMQ_HOST RabbitMQ host rabbitmq.yourdomain.com
GLOBOMAP_RMQ_PORT RabbitMQ port 5672 (default)
GLOBOMAP_RMQ_USER RabbitMQ user user-name
GLOBOMAP_RMQ_PASSWORD RabbitMQ password password
GLOBOMAP_RMQ_VIRTUAL_HOST RabbitMQ virtual host /globomap
GLOBOMAP_RMQ_QUEUE_NAME RabbitMQ queue name globomap-updates
GLOBOMAP_RMQ_EXCHANGE RabbitMQ updates exchange name globomap-updates-exchange
GLOBOMAP_RMQ_ERROR_EXCHANGE RabbitMQ error exchange name globomap-errors-exchange
GLOBOMAP_RMQ_BINDING_KEY RabbitMQ generic driver API binding key globomap.updates (default)
DATABASE_POOL_SIZE Relational database connection pool size 20 (default)
DATABASE_POOL_OVERFLOW Relational database connection pool overflow 10 (default)
DATABASE_POOL_RECYCLE Number of seconds in which an idle connection is refreshed 120 (default)
SQLALCHEMY_DATABASE_URI The database URI that should be used for the connection mysql://username:password@server/db
VARIABLES of globomap-auth-manager globomap-auth-manager --
VARIABLES of globomap-driver-napi globomap-driver-napi --
VARIABLES of globomap-driver-acs globomap-driver-acs --

API

Variable Description Example
GLOBOMAP_RMQ_HOST RabbitMQ host rabbitmq.yourdomain.com
GLOBOMAP_RMQ_PORT RabbitMQ port 5672 (default)
GLOBOMAP_RMQ_USER RabbitMQ user user-name
GLOBOMAP_RMQ_PASSWORD RabbitMQ password password
GLOBOMAP_RMQ_VIRTUAL_HOST RabbitMQ virtual host /globomap
GLOBOMAP_RMQ_QUEUE_NAME RabbitMQ queue name globomap-updates
GLOBOMAP_RMQ_EXCHANGE RabbitMQ updates exchange name globomap-updates-exchange
GLOBOMAP_RMQ_ERROR_EXCHANGE RabbitMQ error exchange name globomap-errors-exchange
GLOBOMAP_RMQ_BINDING_KEY RabbitMQ generic driver API binding key globomap.updates (default)
DATABASE_POOL_SIZE Relational database connection pool size 20 (default)
DATABASE_POOL_OVERFLOW Relational database connection pool overflow 10 (default)
DATABASE_POOL_RECYCLE Number of seconds in which an idle connection is refreshed 120 (default)
SQLALCHEMY_DATABASE_URI The database URI that should be used for the connection mysql://username:password@server/db
VARIABLES of globomap-auth-manager globomap-auth-manager --

Environment variables configuration from external libs

All of the environment variables below must be set for the application to work properly.

globomap-auth-manager globomap-driver-napi globomap-driver-acs

API

Documentation

Licensing

GloboMap Core Loader is under Apache 2 License