Our great sponsors
-
spring-security-dynamic-roles-inheritance-model-example
An example of dynamic roles inheritance model and Spring Security
-
PostgreSQL
Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
pages-gem
A simple Ruby Gem to bootstrap dependencies for setting up and maintaining a local Jekyll environment in sync with GitHub Pages
-
Testcontainers
Testcontainers is a Java library that supports JUnit tests, providing lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
debezium
Change data capture for a variety of databases. Please log issues at https://issues.redhat.com/browse/DBZ.
You can find the entire repository with code examples by this link. The test that generates the SchemaSpy docs is available by this link.
PostgreSQL
SchemaSpy is a standalone application that connects to the database, scans its tables and schemas, and generated nicely composed HTML documentation. You can check out an example sample by this link but I'm showing you just one screenshot to clarify my point.
How to host the generated database documentation on GitHub Pages?
Finally, we put the directory with generated contents (HTML, CSS, JS) into a tarball. Testcontainers library allows to copy files from a container to the OS but not directories. That’s why we need an archive inside the SchemaSpy container.
Define the buildFolderPath that points to the build/classes/java/test directory (I use Gradle in this project).
And finally, I unpack the archive contents to the same directory (I use jararchivelib library here).
Data engineers have to be aware of tables structure to deal with Change Data Capture events correctly.