kube: add .volume field on PVCs and ConfigMaps

Change-Id: I93eec44bd6df4ecb0044a4797faa9bf6fd26802d
Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1811
Reviewed-by: q3k <q3k@hackerspace.pl>
diff --git a/app/matrix/lib/appservice-irc.libsonnet b/app/matrix/lib/appservice-irc.libsonnet
index 33fa5e1..d196ead 100644
--- a/app/matrix/lib/appservice-irc.libsonnet
+++ b/app/matrix/lib/appservice-irc.libsonnet
@@ -87,7 +87,7 @@
                     spec+: {
                         volumes_: {
                             config: kube.SecretVolume(bridge.config),
-                            data: kube.PersistentVolumeClaimVolume(bridge.dataVolume),
+                            data: bridge.dataVolume.volume,
                             registration: { secret: { secretName: "appservice-irc-%s-registration" % [name] } },
                         } + (if cfg.passwordEncryptionKeySecret != null then {
                             key: { secret: { secretName: cfg.passwordEncryptionKeySecret } },
diff --git a/app/matrix/lib/appservice-telegram.libsonnet b/app/matrix/lib/appservice-telegram.libsonnet
index 77eac1d..0d5341b 100644
--- a/app/matrix/lib/appservice-telegram.libsonnet
+++ b/app/matrix/lib/appservice-telegram.libsonnet
@@ -99,7 +99,7 @@
                     spec+: {
                         volumes_: {
                             config: kube.SecretVolume(bridge.config),
-                            data: kube.PersistentVolumeClaimVolume(bridge.dataVolume),
+                            data: bridge.dataVolume.volume,
                             registration: { secret: { secretName: "appservice-telegram-%s-registration" % [name] } },
                         },
                         initContainers: [
diff --git a/app/matrix/lib/coturn.libsonnet b/app/matrix/lib/coturn.libsonnet
index 4d1c334..2006de4 100644
--- a/app/matrix/lib/coturn.libsonnet
+++ b/app/matrix/lib/coturn.libsonnet
@@ -71,8 +71,8 @@
             template+: {
                 spec+: {
                     volumes_: {
-                        config: kube.ConfigMapVolume(top.configMap),
-                        data: kube.PersistentVolumeClaimVolume(top.dataVolume),
+                        config: top.configMap.volume,
+                        data: top.dataVolume.volume,
                     },
                     containers_: {
                         coturn: kube.Container("coturn") {
diff --git a/app/matrix/lib/matrix.libsonnet b/app/matrix/lib/matrix.libsonnet
index 875cd42..dbf27d9 100644
--- a/app/matrix/lib/matrix.libsonnet
+++ b/app/matrix/lib/matrix.libsonnet
@@ -170,8 +170,8 @@
             template+: {
                 spec+: {
                     volumes_: {
-                        data: kube.PersistentVolumeClaimVolume(top.dataVolume),
-                        config: kube.ConfigMapVolume(top.synapseConfigMap),
+                        data: top.dataVolume.volume,
+                        config: top.synapseConfigMap.volume,
                     } + {
                         [k]: { secret: { secretName: "appservice-%s-registration" % [k] } }
                         for k in std.objectFields(top.appservices)
@@ -309,7 +309,7 @@
             template+: {
                 spec+: {
                     volumes_: {
-                        config: kube.ConfigMapVolume(top.riotConfigMap),
+                        config: top.riotConfigMap.volume,
                     },
                     containers_: {
                         web: kube.Container("riot-web") {
diff --git a/app/matrix/lib/riot.libsonnet b/app/matrix/lib/riot.libsonnet
index 0aa9574..20b439e 100644
--- a/app/matrix/lib/riot.libsonnet
+++ b/app/matrix/lib/riot.libsonnet
@@ -58,7 +58,7 @@
             template+: {
                 spec+: {
                     volumes_: {
-                        config: kube.ConfigMapVolume(top.configMap),
+                        config: top.configMap.volume,
                     },
                     containers_: {
                         web: kube.Container("riot-web") {
diff --git a/app/matrix/lib/synapse.libsonnet b/app/matrix/lib/synapse.libsonnet
index a6cf9dd..6c30195 100644
--- a/app/matrix/lib/synapse.libsonnet
+++ b/app/matrix/lib/synapse.libsonnet
@@ -121,13 +121,13 @@
             template+: {
                 spec+: {
                     volumes_: {
-                        config: kube.ConfigMapVolume(top.configMap),
+                        config: top.configMap.volume,
                         secrets: { secret: { secretName: "synapse" } },
                     } + {
                         [k]: { secret: { secretName: "appservice-%s-registration" % [k] } }
                         for k in std.objectFields(top.appservices)
                     } + if worker.cfg.mountData then {
-                        data: kube.PersistentVolumeClaimVolume(top.dataVolume),
+                        data: top.dataVolume.volume,
                     } else {},
                     containers_: {
                         web: kube.Container("synapse") {