router
router copied to clipboard
Development is not possible using govuk-docker
The main branch of govuk-docker is now M1-compatible, and part of that is removing the mongo-2.6 container and pointing router to mongo-3.6. This will work for general use, but the router-3.6 container in govuk-docker is not set up to use a replica set, which docker relies on to detect updates to the data. This will causes failures in the following situations:
- developers actively working on router will not be able to run the test suite
- developers using the stack in govuk-docker who publish new content and expect it to appear in their local dev environment through router (rather than directly accessed) will not see that new content.
This issue is related in part to this one: https://github.com/alphagov/router/issues/210
Developers needing a workaround should try this govuk-docker branch which sets mongo-3.6 to use the replica set: https://github.com/alphagov/govuk-docker/tree/m1-compatibility-keith
Alternatively, work in this router branch will render this replica-set requirement moot when complete: https://github.com/alphagov/router/tree/change-stream
(This issue repeated in govuk-docker since it's not 100% clear where it should be, since the fix is in both places: https://github.com/alphagov/govuk-docker/issues/591)
@KludgeKML should your m1-compatibility-keith
branch changes be a PR now?
It shouldn't - I think there are better ways to progress on this. I'll DM you (and we can update / close this when decisions are made).
It doesn't look like anyone's actually needed to run Router in govuk-docker in the past 3 years or so. We hope to start replacing govuk-docker use cases with Kubernetes soon, so it'll become possible to run end-to-end tests locally.