mirror of
https://github.com/gitpod-io/gitpod.git
synced 2025-12-08 17:36:30 +00:00
The Bitnami charts have changed in the past year and they now require the "registry" to be populated. Upon reconsideration, specifying the registry is probably the better way of doing it.
58 lines
2.1 KiB
Go
58 lines
2.1 KiB
Go
// Copyright (c) 2021 Gitpod GmbH. All rights reserved.
|
|
// Licensed under the GNU Affero General Public License (AGPL).
|
|
// See License.AGPL.txt in the project root for license information.
|
|
|
|
package incluster
|
|
|
|
import (
|
|
"github.com/gitpod-io/gitpod/installer/pkg/cluster"
|
|
"github.com/gitpod-io/gitpod/installer/pkg/common"
|
|
"github.com/gitpod-io/gitpod/installer/pkg/helm"
|
|
"github.com/gitpod-io/gitpod/installer/third_party/charts"
|
|
"helm.sh/helm/v3/pkg/cli/values"
|
|
)
|
|
|
|
var Helm = common.CompositeHelmFunc(
|
|
helm.ImportTemplate(charts.MySQL(), helm.TemplateConfig{}, func(cfg *common.RenderContext) (*common.HelmConfig, error) {
|
|
affinity, err := helm.AffinityYaml(cluster.AffinityLabelMeta)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
primaryAffinityTemplate, err := helm.KeyFileValue("mysql.primary.affinity", affinity)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
imageRegistry := common.ThirdPartyContainerRepo(cfg.Config.Repository, common.DockerRegistryURL)
|
|
|
|
return &common.HelmConfig{
|
|
Enabled: true,
|
|
Values: &values.Options{
|
|
Values: []string{
|
|
helm.KeyValue("mysql.auth.existingSecret", SQLPasswordName),
|
|
helm.KeyValue("mysql.auth.database", Database),
|
|
helm.KeyValue("mysql.auth.username", Username),
|
|
helm.KeyValue("mysql.initdbScriptsConfigMap", SQLInitScripts),
|
|
helm.KeyValue("mysql.serviceAccount.name", Component),
|
|
helm.ImagePullSecrets("mysql.image.pullSecrets", cfg),
|
|
helm.KeyValue("mysql.image.registry", imageRegistry),
|
|
helm.ImagePullSecrets("mysql.metrics.image.pullSecrets", cfg),
|
|
helm.KeyValue("mysql.metrics.image.registry", imageRegistry),
|
|
helm.ImagePullSecrets("mysql.volumePermissions.image.pullSecrets", cfg),
|
|
helm.KeyValue("mysql.volumePermissions.image.pullPolicy", "IfNotPresent"),
|
|
helm.KeyValue("mysql.volumePermissions.image.registry", imageRegistry),
|
|
|
|
// improve start time
|
|
helm.KeyValue("mysql.primary.startupProbe.enabled", "false"),
|
|
helm.KeyValue("mysql.primary.livenessProbe.initialDelaySeconds", "30"),
|
|
},
|
|
// This is too complex to be sent as a string
|
|
FileValues: []string{
|
|
primaryAffinityTemplate,
|
|
},
|
|
},
|
|
}, nil
|
|
}),
|
|
)
|