Skip to content
This repository was archived by the owner on Apr 2, 2024. It is now read-only.

Conversation

@amrc-benmorrow
Copy link
Contributor

Publish our current branch list and the revision of each branch over MQTT.

This object will also track the current status of each repo.
Docker is doing evil things with the permissions when it COPYs.
These will not actually be removed from deployed ACS installations under
the current system, of course.

There are additional permissions required but those are ACS-specific and
must be granted in the Helm chart.
Otherwise Node throws an automatic exception and the MQTT library can't
retry the connection. This seems to leave the process in some sort of
limbo where the exception stops JS running but doesn't actually exit the
process.
I thought the MQTT library handled it and queued the packets for later
delivery, but apparently not, or maybe this just doesn't apply when we
haven't connected at all yet. We only care about publishing the current
state, so just skip updates when we're offline; we'll birth when we go
online in any case.
The sparkplug-app library is causing an unhandled rejection, which for
some reason is not causing Node to exit but to hang. Catch the attempt
to handle and force process exit with SIGTERM. (We have to expect to get
SIGTERM from time to time anyway under k8s.)
This has cleaned up the start-stops API.
@amrc-benmorrow amrc-benmorrow self-assigned this Mar 6, 2024
@amrc-benmorrow amrc-benmorrow merged commit 7612819 into main Mar 6, 2024
@amrc-benmorrow amrc-benmorrow deleted the feature/bm-mqtt branch March 6, 2024 15:41
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants