lathiat / athena-core

core for athena services

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

athena-monitor docker image athena-processor docker image Build workflows

Athena

Athena is a file processor service, that consumes files stored in the files.com API and runs a series of reports over the downloaded artifacts and subsequently it talks with the Salesforce API for performing actions (currently, only comments are supported)

Basics

There are 3 software components in athena:

  1. Athena-monitor: Monitor changes in several directories across a file.com account and if new files are found those are sent to the processor for background processing.

  2. Nats: Nats is a light messaging daemon that allows a pubsub system to be implemented on top, its used to dispatch messages from athena-monitor to a athena-processor

  3. Athena-processor: Subscribes to messages from monitor and routes the reports that have to be run over a given detected file, subsequently it will perform an action on salesforce (such as posting a comment, etc)

The basic flowchart of interaction is as follows

Hacking

Everything needed to stand up a development environment is contained under a makefile, docker, docker-compose and golang >= 1.14 are required.

Clone this repository and run the following command to build:

make common-build

For running a docker based installation locally

make devel

About

core for athena services

License:Other


Languages

Language:Go 83.9%Language:Dockerfile 13.1%Language:Makefile 1.8%Language:Shell 1.1%