we’re working in a distributed environment with multiple gateways. the common project is managed in SVN for version control and in some occurences we have other (unrelated) projects running on the same gateway.
To update the project to a specific branch/version we currently stop the gateway, fetch the code from the SVN branch we need into the ignition projects folder, and restart the gateway.
The problem with that approach is that it also restarts unrelated projects.
Is there any way to programmatically perform a project import without restarting other projects or PLC communication ?
I looked at EAM which would allow me to push a project simultaneously to multiple gateways but it wouldn’t allow me to fetch the code from SVN nor pick and choose versions, would it ? (i.e push project version 3.1.1 onto gateway 1 and project 3.1.2 onto gateway 2)
I saw a webinar from Ignition folks where they would just overwrite content in the project folder and at some point ignition would pick up that there’s been a change but it doesn’t seem very deterministic.
Anyone has an idea of how to pull content directly from the versioning system ?
It's not totally deterministic, Ignition only looks for changes every 5 minutes, but you can increase this time. In the future there will be a way to explicitly trigger this but it seems this has been grouped with other project system changes and may not be delivered until 8.2.
Avoiding a gateway restart will avoid the break in communication, but if you make changes to a parent project all dependent projects must necessarily be restarted. There's no way around that.
and specifically this answer from you and PGriffith about how to change the scan frequency:
We currently don’t have any way to “demand poll” for changes (though it is on our ‘to do’ list).
The best option at present is providing a system property in ignition.conf to increase the scan frequency from the default 5 minutes to something more aggressive. The downside is basically just increased CPU load as we scan more frequently.