Skip to content

Commit 9bbd178

Browse files
feat(fulcio/add-env): Add additional env variables
Support GCP credentials for external cloud provider workloads
1 parent 8a9e00a commit 9bbd178

5 files changed

Lines changed: 30 additions & 9 deletions

File tree

charts/fulcio/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: |
55
66
type: application
77

8-
version: 2.2.0
8+
version: 2.3.0
99
appVersion: 1.2.0
1010

1111
keywords:

charts/fulcio/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<!-- This README.md is generated. Please edit README.md.gotmpl -->
44

5-
![Version: 2.2.0](https://img.shields.io/badge/Version-2.2.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.2.0](https://img.shields.io/badge/AppVersion-1.2.0-informational?style=flat-square)
5+
![Version: 2.3.0](https://img.shields.io/badge/Version-2.3.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.2.0](https://img.shields.io/badge/AppVersion-1.2.0-informational?style=flat-square)
66

77
Fulcio is a free code signing Certificate Authority, built to make short-lived certificates available to anyone.
88

@@ -109,10 +109,12 @@ helm uninstall [RELEASE_NAME]
109109
| namespace.name | string | `"fulcio-system"` | |
110110
| server.args.aws_hsm_root_ca_path | string | `nil` | |
111111
| server.args.certificateAuthority | string | `"fileca"` | |
112+
| server.args.creds | string | `""` | |
112113
| server.args.gcp_private_ca_parent | string | `"projects/test/locations/us-east1/caPools/test"` | |
113114
| server.args.grpcPort | int | `5554` | |
114115
| server.args.hsm_caroot_id | string | `nil` | |
115116
| server.args.port | int | `5555` | |
117+
| server.env.GOOGLE_APPLICATION_CREDENTIALS | string | `"/etc/fulcio-config/cloud_credentials"` | |
116118
| server.grpcSvcPort | int | `5554` | |
117119
| server.image.pullPolicy | string | `"IfNotPresent"` | |
118120
| server.image.registry | string | `"gcr.io"` | |

charts/fulcio/templates/fulcio-configmap.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,4 @@ data:
1111
{{- if (eq .Values.server.args.certificateAuthority "kmsca")}}
1212
chain.pem: {{.Values.server.args.kms_cert_chain | quote }}
1313
{{- end }}
14+
cloud_credentials: {{.Values.server.args.creds | quote }}

charts/fulcio/templates/fulcio-deployment.yaml

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -59,14 +59,27 @@ spec:
5959
- "--kms-cert-chain-path=/etc/fulcio-config/chain.pem"
6060
{{- end }}
6161
- "--ct-log-url=http://{{ .Values.ctlog.name }}.{{ .Values.ctlog.namespace.name }}.svc/{{ .Values.ctlog.createctconfig.logPrefix }}"
62-
{{- if eq .Values.server.args.certificateAuthority "fileca" }}
62+
{{- if .Values.server.env }}
6363
env:
64-
- name: PASSWORD
65-
valueFrom:
66-
secretKeyRef:
67-
name: {{ .Values.server.secret }}
68-
key: password
69-
{{- end }}
64+
{{- range $key, $value := .Values.server.env }}
65+
- name: "{{ $key }}"
66+
value: "{{ $value }}"
67+
{{- end }}
68+
{{- if eq .Values.server.args.certificateAuthority "fileca" }}
69+
- name: PASSWORD
70+
valueFrom:
71+
secretKeyRef:
72+
name: {{ .Values.server.secret }}
73+
key: password
74+
{{- end }}
75+
{{- else if eq .Values.server.args.certificateAuthority "fileca" }}
76+
env:
77+
- name: PASSWORD
78+
valueFrom:
79+
secretKeyRef:
80+
name: {{ .Values.server.secret }}
81+
key: password
82+
{{- end }}
7083
volumeMounts:
7184
- name: fulcio-config
7285
mountPath: /etc/fulcio-config

charts/fulcio/values.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,14 @@ server:
2020
# crane digest gcr.io/projectsigstore/fulcio:v1.2.0
2121
# -- v1.2.0
2222
version: sha256:17ae9911f54892224c85355a1f8559cfecf75343093f2eaeea1a5c4724283d12
23+
env:
24+
# Valid values: path to workload identity config or service account key JSON file
25+
GOOGLE_APPLICATION_CREDENTIALS: /etc/fulcio-config/cloud_credentials
2326
args:
2427
port: 5555
2528
grpcPort: 5554
29+
# valid values: GCP workload identity config json for trusted external cloud providers
30+
creds: ""
2631
# Valid values: googleca, pkcs11ca, aws-hsm-root-ca-path, fileca, kmsca
2732
certificateAuthority: fileca
2833
# kms_resource: gcpkms://....

0 commit comments

Comments
 (0)