sourcegraph/dev/BUILD.bazel
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

133 lines
6.5 KiB
Python

load("@aspect_bazel_lib//lib:write_source_files.bzl", "write_source_files")
exports_files(srcs = [
"eslint-report-test.sh",
])
filegroup(
name = "pg_utils",
srcs = [
"//dev/tools:createdb",
"//dev/tools:dropdb",
"//dev/tools:pg_dump",
],
)
write_source_files(
name = "write_all_generated",
additional_update_targets = [
"//client/web/src/rbac:write_generated",
"//client/web-sveltekit:write_generated",
"//cmd/cody-gateway/internal/dotcom:write_genql_yaml",
"//cmd/frontend/internal/guardrails/dotcom:write_genql_yaml",
"//dev/linters/staticcheck:write_generated_bazelfile",
"//doc/admin/observability:write_monitoring_docs",
"//doc/cli/references:write_doc_files",
"//doc/dev/background-information/telemetry:write_telemetrygateway_doc",
"//internal/batches/search/syntax:write_token_type",
"//internal/database/migration/shared:write_stitched_migration_graph",
"//internal/database:write_schemas",
"//internal/rbac/types:write_generated_action",
"//internal/rbac/types:write_generated_namespace",
"//internal/rbac:write_generated",
"//lib/batches/schema:write_generated_batch_spec",
"//lib/batches/schema:write_generated_changeset_spec",
"//lib/codeintel/lsif/protocol:write_symbol_kind",
"//lib/codeintel/lsif/protocol:write_symbol_tag",
"//migrations/codeinsights:write_squashed",
"//migrations/codeintel:write_squashed",
"//migrations/frontend:write_squashed",
"//schema:write_generated_schema",
":go_mockgen",
],
)
write_source_files(
name = "go_mockgen",
additional_update_targets = [
"//cmd/cody-gateway/internal/auth:generate_mocks",
"//cmd/cody-gateway/internal/dotcom:generate_mocks",
"//cmd/executor/internal/worker/cmdlogger:generate_mocks",
"//cmd/executor/internal/worker/command:generate_mocks",
"//cmd/executor/internal/worker/files:generate_mocks",
"//cmd/executor/internal/worker/runner:generate_mocks",
"//cmd/executor/internal/worker/runtime:generate_mocks",
"//cmd/executor/internal/worker/workspace:generate_mocks",
"//cmd/executor/internal/worker:generate_mocks",
"//cmd/frontend/backend:generate_mocks",
"//cmd/frontend/internal/executorqueue/queues/batches:generate_mocks",
"//cmd/frontend/internal/executorqueue:generate_mocks",
"//cmd/frontend/internal/httpapi/releasecache:generate_mocks",
"//cmd/frontend/internal/httpapi:generate_mocks",
"//cmd/gitserver/internal/git:generate_mocks",
"//cmd/gitserver/internal/integration_tests:generate_mocks",
"//cmd/gitserver/internal/vcssyncer:generate_mocks",
"//cmd/gitserver/internal:generate_mocks",
"//cmd/symbols/internal/api:generate_mocks",
"//cmd/worker/internal/telemetry:generate_mocks",
"//dev/team:generate_mocks",
"//internal/auth/userpasswd:generate_mocks",
"//internal/authz/providers/gerrit:generate_mocks",
"//internal/authz/providers/github:generate_mocks",
"//internal/authz/subrepoperms:generate_mocks",
"//internal/authz:generate_mocks",
"//internal/batches/sources:generate_mocks",
"//internal/batches/syncer:generate_mocks",
"//internal/codeintel/autoindexing/internal/background/dependencies:generate_mocks",
"//internal/codeintel/autoindexing/internal/inference:generate_mocks",
"//internal/codeintel/autoindexing:generate_mocks",
"//internal/codeintel/codenav/transport/graphql:generate_mocks",
"//internal/codeintel/codenav:generate_mocks",
"//internal/codeintel/dependencies/internal/background:generate_mocks",
"//internal/codeintel/policies:generate_mocks",
"//internal/codeintel/ranking:generate_mocks",
"//internal/codeintel/uploads/internal/background/backfiller:generate_mocks",
"//internal/codeintel/uploads/internal/background/expirer:generate_mocks",
"//internal/codeintel/uploads/internal/background/processor:generate_mocks",
"//internal/codeintel/uploads/transport/graphql:generate_mocks",
"//internal/codeintel/uploads/transport/http/auth:generate_mocks",
"//internal/codeintel/uploads/transport/http:generate_mocks",
"//internal/codeintel/uploads:generate_mocks",
"//internal/conf:generate_mocks",
"//internal/database/basestore:generate_mocks",
"//internal/database/dbmocks:generate_mocks",
"//internal/database/migration/runner:generate_mocks",
"//internal/embeddings/background/repo:generate_mocks",
"//internal/embeddings/embed:generate_mocks",
"//internal/embeddings:generate_mocks",
"//internal/executor/store:generate_mocks",
"//internal/featureflag:generate_mocks",
"//internal/github_apps/store:generate_mocks",
"//internal/gitserver:generate_mocks",
"//internal/goroutine:generate_mocks",
"//internal/insights/background:generate_mocks",
"//internal/insights/discovery:generate_mocks",
"//internal/insights/scheduler:generate_mocks",
"//internal/insights/store:generate_mocks",
"//internal/metrics/store:generate_mocks",
"//internal/oobmigration:generate_mocks",
"//internal/redispool:generate_mocks",
"//internal/repos:generate_mocks",
"//internal/search/client:generate_mocks",
"//internal/search/job/mockjob:generate_mocks",
"//internal/search/repos:generate_mocks",
"//internal/search/symbol:generate_mocks",
"//internal/telemetry/telemetrytest:generate_mocks",
"//internal/uploadhandler:generate_mocks",
"//internal/uploadstore/mocks:generate_mocks",
"//internal/uploadstore:generate_mocks",
"//internal/workerutil/dbworker/store/mocks:generate_mocks",
"//internal/workerutil:generate_mocks",
"//lib/background:generate_mocks",
"//cmd/gitserver/internal/gitserverfs:generate_mocks",
"//cmd/repo-updater/internal/gitserver:generate_mocks",
"//dev/build-tracker:generate_mocks",
"//cmd/worker/internal/sourcegraphaccounts:generate_mocks",
"//cmd/cody-gateway/internal/actor/productsubscription/productsubscriptiontest:generate_mocks",
"//cmd/enterprise-portal/internal/subscriptionsservice:generate_mocks",
"//dev/sg/internal/analytics:generate_mocks",
"//cmd/symbols/internal/fetcher:generate_mocks",
"//internal/releaseregistry/mocks:generate_mocks",
],
)