Skip to content

Anomaly detection for streaming time series, featuring automated model selection.

License

Notifications You must be signed in to change notification settings

ExpediaGroup/adaptive-alerting

Repository files navigation

Build Status codecov License

Adaptive Alerting (AA)

Streaming anomaly detection with automated model selection and fitting.

Wiki documentation

Build

To build the Maven project:

$ ./mvnw clean verify

To build the Docker images:

$ make docker_build

How the Travis CI build works

We use Travis CI to build AA Docker images and push them to Docker Hub. Here's how it works:

  • A developer pushes a branch (master or otherwise) to GitHub.
  • GitHub kicks off a Travis CI build.
  • Travis CI reads .travis.yml, which drives the build.
  • .travis.yml invokes the top-level Makefile.
  • The top-level Makefile
    • runs a Maven build for the whole project
    • invokes module-specific Makefiles to handle building and releasing Docker images
  • Each module-specific Makefile runs one or more module-specific build scripts to
    • build the Docker images
    • release the Docker images
  • For the release (docker push), the module-specific build script delegates to the shared scripts/publish-to-docker-hub.sh script. This script has logic to push the image to Docker Hub if and only if the current branch is the master.