Standardized Repository for Ignition Components

One thing I would really like to be able to do in Ignition is to have some sort of external storage system where I can create and keep a standardized library of self-encapsulated components that can be downloaded and used across multiple different projects without having to do any extra configuration. Unfortunately, Ignition is not yet compatible with things like GIT making something like this quite challenging.

What have folks been using to try to achieve this sort of functionality? GIT with no merge conflicts? The ignition exchange? Something else entirely? Looking for ideas to set something like this up.

Ignition is actually increasingly more and more compatible with Git actually!

We currently use GitHub to manage each of our projects, with docker for local development.

Out of curiosity are you possibly using Vision for your projects? Or where are you getting the interpretation you can't use Git?

Here is an inductive written white paper on how to use git with Ignition! Ignition 8 Deployment Best Practices | Inductive Automation

It's technically "compatible" with GIT as you can store everything in a repository. What you can't do is merge conflict resolution in a way that is meaningful which makes source control with multiple developers nearly impossible. Sure, if you are a single developer working on an application it works. But beyond that using GIT adds complexity instead of removing it.

Also, until the next major release when they get rid of the internal database, you do not have any visibility into the gateway configuration via a text file meaning I can't have differences between a production and development gateway resolved during the deployment.

2 Likes