chart: Allow webhook server env to be set individually (#2377)
Co-authored-by: Yusuke Kuoka <ykuoka@gmail.com>
This commit is contained in:
parent
13802c5a6d
commit
4536707af6
|
|
@ -83,6 +83,10 @@ if [ "${tool}" == "helm" ]; then
|
||||||
flags+=( --set actionsMetricsServer.secret.create=true)
|
flags+=( --set actionsMetricsServer.secret.create=true)
|
||||||
flags+=( --set actionsMetricsServer.secret.github_token=${WEBHOOK_GITHUB_TOKEN})
|
flags+=( --set actionsMetricsServer.secret.github_token=${WEBHOOK_GITHUB_TOKEN})
|
||||||
fi
|
fi
|
||||||
|
if [ -n "${GITHUB_WEBHOOK_SERVER_ENV_NAME}" ] && [ -n "${GITHUB_WEBHOOK_SERVER_ENV_VALUE}" ]; then
|
||||||
|
flags+=( --set githubWebhookServer.env[0].name=${GITHUB_WEBHOOK_SERVER_ENV_NAME})
|
||||||
|
flags+=( --set githubWebhookServer.env[0].value=${GITHUB_WEBHOOK_SERVER_ENV_VALUE})
|
||||||
|
fi
|
||||||
|
|
||||||
set -vx
|
set -vx
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -117,10 +117,14 @@ spec:
|
||||||
name: {{ include "actions-runner-controller.secretName" . }}
|
name: {{ include "actions-runner-controller.secretName" . }}
|
||||||
optional: true
|
optional: true
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- if kindIs "slice" .Values.githubWebhookServer.env }}
|
||||||
|
{{- toYaml .Values.githubWebhookServer.env | nindent 8 }}
|
||||||
|
{{- else }}
|
||||||
{{- range $key, $val := .Values.githubWebhookServer.env }}
|
{{- range $key, $val := .Values.githubWebhookServer.env }}
|
||||||
- name: {{ $key }}
|
- name: {{ $key }}
|
||||||
value: {{ $val | quote }}
|
value: {{ $val | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default (cat "v" .Chart.AppVersion | replace " " "") }}"
|
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default (cat "v" .Chart.AppVersion | replace " " "") }}"
|
||||||
name: github-webhook-server
|
name: github-webhook-server
|
||||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||||
|
|
|
||||||
|
|
@ -279,6 +279,19 @@ githubWebhookServer:
|
||||||
# queueLimit: 100
|
# queueLimit: 100
|
||||||
terminationGracePeriodSeconds: 10
|
terminationGracePeriodSeconds: 10
|
||||||
lifecycle: {}
|
lifecycle: {}
|
||||||
|
# specify additional environment variables for the webhook server pod.
|
||||||
|
# It's possible to specify either key vale pairs e.g.:
|
||||||
|
# my_env_var: "some value"
|
||||||
|
# my_other_env_var: "other value"
|
||||||
|
|
||||||
|
# or a list of complete environment variable definitions e.g.:
|
||||||
|
# - name: GITHUB_WEBHOOK_SECRET_TOKEN
|
||||||
|
# valueFrom:
|
||||||
|
# secretKeyRef:
|
||||||
|
# key: GITHUB_WEBHOOK_SECRET_TOKEN
|
||||||
|
# name: prod-gha-controller-webhook-token
|
||||||
|
# optional: true
|
||||||
|
env: {}
|
||||||
|
|
||||||
actionsMetrics:
|
actionsMetrics:
|
||||||
serviceAnnotations: {}
|
serviceAnnotations: {}
|
||||||
|
|
|
||||||
|
|
@ -101,6 +101,7 @@ func TestE2E(t *testing.T) {
|
||||||
label string
|
label string
|
||||||
controller, controllerVer string
|
controller, controllerVer string
|
||||||
chart, chartVer string
|
chart, chartVer string
|
||||||
|
opt []InstallARCOption
|
||||||
}{
|
}{
|
||||||
{
|
{
|
||||||
label: "stable",
|
label: "stable",
|
||||||
|
|
@ -117,6 +118,12 @@ func TestE2E(t *testing.T) {
|
||||||
controllerVer: vars.controllerImageTag,
|
controllerVer: vars.controllerImageTag,
|
||||||
chart: "",
|
chart: "",
|
||||||
chartVer: "",
|
chartVer: "",
|
||||||
|
opt: []InstallARCOption{
|
||||||
|
func(ia *InstallARCConfig) {
|
||||||
|
ia.GithubWebhookServerEnvName = "FOO"
|
||||||
|
ia.GithubWebhookServerEnvValue = "foo"
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -186,7 +193,7 @@ func TestE2E(t *testing.T) {
|
||||||
for i, v := range testedVersions {
|
for i, v := range testedVersions {
|
||||||
t.Run("install actions-runner-controller "+v.label, func(t *testing.T) {
|
t.Run("install actions-runner-controller "+v.label, func(t *testing.T) {
|
||||||
t.Logf("Using controller %s:%s and chart %s:%s", v.controller, v.controllerVer, v.chart, v.chartVer)
|
t.Logf("Using controller %s:%s and chart %s:%s", v.controller, v.controllerVer, v.chart, v.chartVer)
|
||||||
env.installActionsRunnerController(t, v.controller, v.controllerVer, testID, v.chart, v.chartVer)
|
env.installActionsRunnerController(t, v.controller, v.controllerVer, testID, v.chart, v.chartVer, v.opt...)
|
||||||
})
|
})
|
||||||
|
|
||||||
if t.Failed() {
|
if t.Failed() {
|
||||||
|
|
@ -300,7 +307,7 @@ func TestE2E(t *testing.T) {
|
||||||
for i, v := range testedVersions {
|
for i, v := range testedVersions {
|
||||||
t.Run("install actions-runner-controller "+v.label, func(t *testing.T) {
|
t.Run("install actions-runner-controller "+v.label, func(t *testing.T) {
|
||||||
t.Logf("Using controller %s:%s and chart %s:%s", v.controller, v.controllerVer, v.chart, v.chartVer)
|
t.Logf("Using controller %s:%s and chart %s:%s", v.controller, v.controllerVer, v.chart, v.chartVer)
|
||||||
env.installActionsRunnerController(t, v.controller, v.controllerVer, testID, v.chart, v.chartVer)
|
env.installActionsRunnerController(t, v.controller, v.controllerVer, testID, v.chart, v.chartVer, v.opt...)
|
||||||
})
|
})
|
||||||
|
|
||||||
if t.Failed() {
|
if t.Failed() {
|
||||||
|
|
@ -711,9 +718,20 @@ func (e *env) installCertManager(t *testing.T) {
|
||||||
e.KubectlWaitUntilDeployAvailable(t, "cert-manager", waitCfg.WithTimeout(60*time.Second))
|
e.KubectlWaitUntilDeployAvailable(t, "cert-manager", waitCfg.WithTimeout(60*time.Second))
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *env) installActionsRunnerController(t *testing.T, repo, tag, testID, chart, chartVer string) {
|
type InstallARCConfig struct {
|
||||||
|
GithubWebhookServerEnvName, GithubWebhookServerEnvValue string
|
||||||
|
}
|
||||||
|
|
||||||
|
type InstallARCOption func(*InstallARCConfig)
|
||||||
|
|
||||||
|
func (e *env) installActionsRunnerController(t *testing.T, repo, tag, testID, chart, chartVer string, opts ...InstallARCOption) {
|
||||||
t.Helper()
|
t.Helper()
|
||||||
|
|
||||||
|
var c InstallARCConfig
|
||||||
|
for _, opt := range opts {
|
||||||
|
opt(&c)
|
||||||
|
}
|
||||||
|
|
||||||
e.createControllerNamespaceAndServiceAccount(t)
|
e.createControllerNamespaceAndServiceAccount(t)
|
||||||
|
|
||||||
scriptEnv := []string{
|
scriptEnv := []string{
|
||||||
|
|
@ -755,6 +773,11 @@ func (e *env) installActionsRunnerController(t *testing.T, repo, tag, testID, ch
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
varEnv = append(varEnv,
|
||||||
|
"GITHUB_WEBHOOK_SERVER_ENV_NAME="+c.GithubWebhookServerEnvName,
|
||||||
|
"GITHUB_WEBHOOK_SERVER_ENV_VALUE="+c.GithubWebhookServerEnvValue,
|
||||||
|
)
|
||||||
|
|
||||||
scriptEnv = append(scriptEnv, varEnv...)
|
scriptEnv = append(scriptEnv, varEnv...)
|
||||||
scriptEnv = append(scriptEnv, e.vars.commonScriptEnv...)
|
scriptEnv = append(scriptEnv, e.vars.commonScriptEnv...)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue