ori-edge / k8s_gateway

A CoreDNS plugin to resolve all types of external Kubernetes resources
Apache License 2.0
308 stars 65 forks source link

Feature Request: Add extraVolume configuration #272

Open jnamdar opened 7 months ago

jnamdar commented 7 months ago

To my knowledge it is possible to specify extra volumes in the upstream CoreDNS helm chart like so (https://github.com/coredns/helm/blob/master/charts/coredns/values.yaml#L236) :

extraVolumes: []
# - name: some-volume-name
#   emptyDir: {}
# optional array of mount points for extraVolumes
extraVolumeMounts: []
# - name: some-volume-name
#   mountPath: /etc/wherever

This would be very useful to do as well in k8s-gateway, for instance my use case would be enabling DNSSEC by adding the dnssec plugin in my k8s-gateway config, generating a key with dnssec-keygen and then mounting that key in the DaemonSet so it can be read by the plugin. Without this, I currently don't know how I would mount that key

DNSSEC plugin doc : https://coredns.io/plugins/dnssec/ Relevant plugin config (the key here is literally named Kexample.org.+013+45330, and its path needs to be specified and available within the CoreDNS Pods) :

example.org {
    dnssec {
        key file Kexample.org.+013+45330
    }
    whoami
}