lib/support/rake/update.rb (57 lines of code) (raw):
# frozen_string_literal: true
require 'fileutils'
module Support
module Rake
class Update
CORE_TARGETS = %w[
gitlab/.git
gitlab-config
gitlab-asdf-install
.gitlab-bundle
.gitlab-lefthook
.gitlab-yarn
.gitlab-translations
postgresql
gitlab/doc/api/graphql/reference/gitlab_schema.json
preflight-checks
preflight-update-checks
gitaly-update
ensure-databases-setup
gitlab-shell-update
unlock-dependency-installers
gitlab-translations-unlock
gitlab-workhorse-update
].freeze
def self.make_tasks(config: GDK.config)
core_tasks + optional_tasks(config)
end
def self.core_tasks
CORE_TARGETS.map { |target| make_task(target) }
end
# rubocop:disable Metrics/AbcSize
def self.optional_tasks(config)
[
make_task('gitlab-http-router-update', enabled: config.gitlab_http_router.enabled?),
make_task('gitlab-topology-service-update', enabled: config.gitlab_topology_service.enabled?),
make_task('docs-gitlab-com-update', enabled: config.docs_gitlab_com.enabled?),
make_task('gitlab-elasticsearch-indexer-update', enabled: config.elasticsearch.enabled?),
make_task('gitlab-k8s-agent-update', enabled: config.gitlab_k8s_agent.enabled?),
make_task('gitlab-pages-update', enabled: config.gitlab_pages.enabled?),
make_task('gitlab-ui-update', enabled: config.gitlab_ui.enabled?),
make_task('gitlab-zoekt-update', enabled: config.zoekt.enabled?),
make_task('gitlab-ai-gateway-update', enabled: config.gitlab_ai_gateway.enabled?),
make_task('grafana-update', enabled: config.grafana.enabled?),
make_task('jaeger-update', enabled: config.tracer.jaeger.enabled?),
make_task('object-storage-update', enabled: config.object_store.enabled?),
make_task('pgvector-update', enabled: config.pgvector.enabled?),
make_task('zoekt-update', enabled: config.zoekt.enabled?),
make_task('openbao-update', enabled: config.openbao.enabled?),
make_task('gitlab-runner-update', enabled: config.gitlab_runner.enabled?),
make_task('siphon-update', enabled: config.siphon.enabled?),
make_task('nats-update', enabled: config.nats.enabled?)
]
end
# rubocop:enable Metrics/AbcSize
def self.make_task(target, enabled: true)
MakeTask.new(target: target, enabled: enabled)
end
end
end
end