sourcegraph/internal/releaseregistry
Craig Furman a20b0650b4
feat(appliance): self-update (#63780)
**chore(appliance): extract constant for configmap name**

To the reconciler, this is just a value, but to higher-level packages
like appliance, there is a single configmap that is an entity. Let's
make sure all high-level orchestration packages can reference our name
for it. This could itself be extracted to injected config if there was a
motivation for it.



**chore(appliance): extract NewRandomNamespace() in k8senvtest**

From reconciler tests, so that we can reuse it in self-update tests.



**feat(appliance): self-update**

Add a worker thread to the appliance that periodically polls release
registry for newer versions, and updates its own Kubernetes deployment.

If the APPLIANCE_DEPLOYMENT_NAME environment variable is not set, this
feature is disabled. This PR will be accompanied by one to the
appliance's helm chart to add this variable by default.



**fix(appliance): only self-update 2 minor versions above deployed SG**




**chore(appliance): self-update integration test extra case**

Check that self-update doesn't run when SG is not yet deployed.

https://linear.app/sourcegraph/issue/REL-212/appliance-can-self-upgrade
2024-07-11 17:59:39 +01:00
..
mocks feat(appliance): self-update (#63780) 2024-07-11 17:59:39 +01:00
BUILD.bazel chore(sg): extract releaseregistry client package (#63382) 2024-06-21 10:34:52 +01:00
client.go feat(appliance): self-update (#63780) 2024-07-11 17:59:39 +01:00
README.md chore(sg): extract releaseregistry client package (#63382) 2024-06-21 10:34:52 +01:00

releaseregistry

A go client for https://github.com/sourcegraph/releaseregistry. Please see that repository for more details.