CI/CD with Docker, and GitHub Actions for a TigerGraph-backed Gradle application.

Photo by Matt Dean via

Integration testing helps us verify that our applications work as expected when interacting with third-party software as they would in production. When integration testing involves the inclusion of a database, then this brings in its own array of configuration and set up.

Giraffle is a popular Gradle plugin used to deploy schema creation, loading jobs, and queries that have applications in CI/CD. There already exist articles on how to use Giraffle for deployment, but in the following, we cover a simple and free way of running integration testing using localized TigerGraph Docker containers within GitHub Actions.

What will be covered:

How do the graph databases JanusGraph and TigerGraph compare to an industry-standard, PostgreSQL?

Photo by henry perks on Unsplash


The collection of spatio-temporal data is commonplace today — prime examples are user-generated data from mobile devices or social platforms, streams of sensor data from static or moving sensors, satellite or remote sensing data. To make sense of this vast volume of heterogeneous data, a variety of aggregation and fusion steps have to be applied to achieve semantic data enrichment for subsequent use in value-added services. However, enabling these enrichment steps generally relies on stable and highly scalable data handling and storage infrastructures. …

TigerGraph can be combined with Docker to run on nearly any OS. In this article, we tackle the issue of the large TigerGraph image and its unused potential.

Image by author. Logos are from TigerGraph and Docker’s websites respectively.

TigerGraph is my graph database and graph analytics platform of choice as it is fast, scalable, and has an active open-source community. I regularly make use of TigerGraph locally due to my location not having nearby TigerGraph Cloud servers.

At the time of writing, the TigerGraph software requirements specify support for the following operating systems:

For anyone using operating systems beyond this list, a logical solution would be to make use of containerization: Docker, in the case of this article.

In this article we will…

David Baker Effendi

Computer science student at Stellenbosch University focusing on the application of graph-driven analytics

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store