update
diff --git a/charts/virtual-machine/templates/configs.yaml b/charts/virtual-machine/templates/configs.yaml
new file mode 100644
index 0000000..e3daf7f
--- /dev/null
+++ b/charts/virtual-machine/templates/configs.yaml
@@ -0,0 +1,8 @@
+{{- if .Values.configFiles }}
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: configs-{{ .Values.name }}
+data:
+    {{ toYaml .Values.configFiles | nindent 2 }}
+{{- end }}
diff --git a/charts/virtual-machine/templates/secret-network-data.yaml b/charts/virtual-machine/templates/secret-network-data.yaml
index b3c5a13..8d7a94c 100644
--- a/charts/virtual-machine/templates/secret-network-data.yaml
+++ b/charts/virtual-machine/templates/secret-network-data.yaml
@@ -4,4 +4,4 @@
   name: {{ .Values.name }}-network-data
 type: Opaque
 data:
-  networkdata: {{ .Values.cloudInit.nd | toYaml | b64enc}}
+  networkdata: {{ .Values.cloudInit.networkData | toYaml | b64enc}}
diff --git a/charts/virtual-machine/templates/secret-user-data.yaml b/charts/virtual-machine/templates/secret-user-data.yaml
index 228ab91..f201074 100644
--- a/charts/virtual-machine/templates/secret-user-data.yaml
+++ b/charts/virtual-machine/templates/secret-user-data.yaml
@@ -1,7 +1,15 @@
+{{- $userData := .Values.cloudInit.userData }}
+{{- if .Values.configFiles }}
+{{- $runcmd := get $userData "runcmd" | default list }}
+{{- $mkdir := print "sudo mkdir -p /home/" .Values.username "/.dodo" }}
+{{- $mount := print "sudo mount -t virtiofs configs /home/" .Values.username "/.dodo" }}
+{{- $_ := set $userData "runcmd" (concat $runcmd (list $mkdir $mount)) }}
+{{- end }}
+{{- $userDataYaml := print "#cloud-config\n" (toYaml $userData) }}
 apiVersion: v1
 kind: Secret
 metadata:
   name: {{ .Values.name }}-user-data
 type: Opaque
 data:
-  userdata: {{ .Values.cloudInit.userData}}
+  userdata: {{ $userDataYaml | b64enc}}
diff --git a/charts/virtual-machine/templates/vm.yaml b/charts/virtual-machine/templates/vm.yaml
index 3a0a446..ebb2fcb 100644
--- a/charts/virtual-machine/templates/vm.yaml
+++ b/charts/virtual-machine/templates/vm.yaml
@@ -38,6 +38,9 @@
               disk:
                 bus: virtio
                 readonly: true
+          filesystems:
+            - name: configs
+              virtiofs: {}
       networks:
         - name: default
           pod: {}
@@ -51,3 +54,8 @@
               name: {{ .Values.name }}-user-data
             networkDataSecretRef:
               name: {{ .Values.name }}-network-data
+        {{- if .Values.configFiles }}
+        - name: configs
+          configMap:
+            name: configs-{{ .Values.name }}
+        {{- end }}
diff --git a/charts/virtual-machine/values.yaml b/charts/virtual-machine/values.yaml
index 683faf6..cf2f6ed 100644
--- a/charts/virtual-machine/values.yaml
+++ b/charts/virtual-machine/values.yaml
@@ -1,4 +1,5 @@
-name: ""
+name: "dodo"
+username: "dodo"
 cpuCores: 1
 memory: "1Gi"
 disk:
@@ -6,6 +7,6 @@
   size: 64Gi
 ports: []
 cloudInit:
-  userData: "" # base64 encoded
-  networkData: "" # base64 encoded
-  nd: {}
+  userData: {}
+  networkData: {}
+configFiles: {}