7
7
"github.com/gitpod-io/gitpod/common-go/baseserver"
8
8
"github.com/gitpod-io/gitpod/installer/pkg/cluster"
9
9
"github.com/gitpod-io/gitpod/installer/pkg/common"
10
+ "github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental"
10
11
appsv1 "k8s.io/api/apps/v1"
11
12
corev1 "k8s.io/api/core/v1"
12
13
"k8s.io/apimachinery/pkg/api/resource"
@@ -19,6 +20,14 @@ import (
19
20
func deployment (ctx * common.RenderContext ) ([]runtime.Object , error ) {
20
21
labels := common .DefaultLabels (Component )
21
22
23
+ stripeSecret := ""
24
+ _ = ctx .WithExperimental (func (cfg * experimental.Config ) error {
25
+ if cfg .WebApp != nil && cfg .WebApp .Server != nil {
26
+ stripeSecret = cfg .WebApp .Server .StripeSecret
27
+ }
28
+ return nil
29
+ })
30
+
22
31
return []runtime.Object {
23
32
& appsv1.Deployment {
24
33
TypeMeta : common .TypeMetaDeployment ,
@@ -45,6 +54,14 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
45
54
RestartPolicy : "Always" ,
46
55
TerminationGracePeriodSeconds : pointer .Int64 (30 ),
47
56
InitContainers : []corev1.Container {* common .DatabaseWaiterContainer (ctx )},
57
+ Volumes : []corev1.Volume {{
58
+ Name : "stripe-secret" ,
59
+ VolumeSource : corev1.VolumeSource {
60
+ Secret : & corev1.SecretVolumeSource {
61
+ SecretName : stripeSecret ,
62
+ },
63
+ },
64
+ }},
48
65
Containers : []corev1.Container {{
49
66
Name : Component ,
50
67
Image : ctx .ImageName (ctx .Config .Repository , Component , ctx .VersionManifest .Components .Usage .Version ),
@@ -66,6 +83,11 @@ func deployment(ctx *common.RenderContext) ([]runtime.Object, error) {
66
83
common .DefaultEnv (& ctx .Config ),
67
84
common .DatabaseEnv (& ctx .Config ),
68
85
),
86
+ VolumeMounts : []corev1.VolumeMount {{
87
+ Name : "stripe-secret" ,
88
+ ReadOnly : true ,
89
+ MountPath : StripeSecretMountPath ,
90
+ }},
69
91
LivenessProbe : & corev1.Probe {
70
92
ProbeHandler : corev1.ProbeHandler {
71
93
HTTPGet : & corev1.HTTPGetAction {
0 commit comments