Pipeline Components and Applications

  1. Home
  2. Docs
  3. Pipeline Components and Applications
  4. Iglu
  5. Setup Iglu
  6. Step 2: Setup an Iglu repository
  7. 2.2: A JVM-embedded repo

2.2: A JVM-embedded repo

Setting up a JVM-embedded repository is simple:

  1. Prepare your files
  2. Embed your files into your Java or Scala application
  3. Update your Iglu client configuration

1. Prepare your files

You need to create a file structure for your JSON Schemas. Please check out the template we provide here:

https://github.com/snowplow/iglu/tree/master/2-repositories/jvm-embedded-repo/template

Make the following changes:

  • Replace com.myvendor with your company domain, reverse-ordered
  • Replace myschema with the name of your first JSON Schema
  • Leave jsonschema as-is (we only support JSON Schemas for now)
  • Replace 1-0-0 with the schema specification of your first JSON Schema

Writing JSON Schemas is out of scope for this setup guide – see Self-describing-JSONs-and-JSON-Schemas for details.

Done? Now you are ready to embed your files.

2. Embed your files

You now need to embed your JSON Schema files into your Java or Scala application.

The Iglu Scala client will expect to find these JSON Schema files included in the application as resources. Therefore, you should store the files in a path something like this:

myapp/src/main/resources/my-repo/schemas

3. Update your Iglu client configuration

Finally, update your Iglu client configuration so that it can resolve your new repository.

For details on how to do this, check out the page on Iglu client configuration. In the case above, the path you would specify for your embedded Iglu repository would be simply /my-repo.