The core collection is expected to be owned and managed entirely by the Ignition gateway instance.
If you want to "pre load" configuration, you should do so via the external resource collection, which is treated as immutable by the gateway and loaded before other sources as a base.
Some general background on how Ignition resources are encoded:
I thought we had some kind of reference page for this in the manual, but all I found was this, which is not quite the full story:
This old post of mine goes into more detail, though is a bit out of date:
Basically:
projects/ has an ignorable .resources/ folder.
All other folders in projects/ will be scanned - if they contain a valid project.json manifest, then they make up an Ignition project. The name of the project will be the literal name of the folder on disk.
Below each project direc…
Concrete advice on what you're trying to do:
You'll probably have to wait a while for complete guides to become available.
For now, I'll mention that files created in the external "resource collection" (also known as mode or just collection; roughly analogous to a "project") are guaranteed to go untouched by Ignition and will be treated as immutable. If you want to preconfigure/deploy gateways from source control, that's going to be your preferred avenue - essentially, duplicate the nested folder structure from
data/config/resources/core…
And some diagrams showing the single inheritance tree used for gateway configuration:
Deployment modes can change anything (though it's not necessarily recommended).
If it helps, think of it as a single project inheritance tree. If you're in the dev mode, you're consuming external -> system -> core, then whatever dev defines, and then potentially overridden by anything local:
Tree
External
External
System
System
External->System
Core
Core
System->Core
Dev
Dev
Core->Dev
Test
Test
Core->Test
Prod
Prod
Core->Prod
Local
Local
…
2 Likes