diff --git a/common/borgbackup/tasks/main.yml b/common/borgbackup/tasks/main.yml
index fa986d951764a3e2cd4118299fe2857ab0cea49d..cbf4fb0166b9cec3c8ae1d7307b89c30ca399d32 100644
--- a/common/borgbackup/tasks/main.yml
+++ b/common/borgbackup/tasks/main.yml
@@ -2,26 +2,28 @@
 # Pakete installieren
 - name: pakete installieren
   apt:
-    name: "{{ packages }}"
+    pkg: "{{ item }}"
     update_cache: yes
     state: present
-  vars:
-    packages:
-      - borgbackup
-      - logrotate
-      - moreutils
-      - openssl
-
-- name: create directory
+  with_items:
+    - borgbackup
+    - logrotate
+    - moreutils
+    - openssl
+
+- name: create directories 1
   file: 
-    path: "/srv/borgbackup/"
+    path: "{{ item }}"
     state: "directory"
+  with_items:
+    - /srv/borgbackup 
+    - /var/log/borgbackup 
 
-- name: create directories
+- name: create directories 2
   file: 
-    path: "/srv/borgbackup/{{ item }}"
+    path: "/srv/borgbackup/{{ item.key }}"
     state: "directory"
-  with_items: "{{ borgbackup_repos }}"
+  with_dict: "{{ borgbackup_repos }}"
 
 - name: generate new repo_passphrase (check)
   stat:
@@ -54,23 +56,61 @@
 
 # BorgBackup Scripte erstellen 
 
-- name: BorgBackup Scripte erstellen 
-  template: src={{ item }} dest=/srv/borgbackup/{{ item }} mode=o+x
-  with_items:
-    - "borgbackup-check.sh"
-    - "borgbackup-create.sh"
-    - "borgbackup-delete.sh"
-    - "borgbackup-info.sh"
-    - "borgbackup-init.sh"
-    - "borgbackup-list.sh"
-    - "borgbackup-mount.sh"
-    - "borgbackup-prometheus.sh"
-
-- name: BorgBackup log folder erstellen 
-  file: 
-    path: "/var/log/borgbackup"
-    state: "directory"
+- name: BorgBackup Scripte erstellen (check)
+  template: 
+    src: borgbackup-check.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-check.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
+
+- name: BorgBackup Scripte erstellen (create)
+  template: 
+    src: borgbackup-create.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-create.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
 
+- name: BorgBackup Scripte erstellen (delete)
+  template: 
+    src: borgbackup-delete.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-delete.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
+  
+- name: BorgBackup Scripte erstellen (init)
+  template: 
+    src: borgbackup-init.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-init.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
+
+- name: BorgBackup Scripte erstellen (info)
+  template: 
+    src: borgbackup-info.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-info.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
+
+- name: BorgBackup Scripte erstellen (list)
+  template: 
+    src: borgbackup-list.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-list.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
+
+- name: BorgBackup Scripte erstellen (mount)
+  template: 
+    src: borgbackup-mount.sh 
+    dest: /srv/borgbackup/{{ item.key }}/borgbackup-mount.sh 
+    mode: u+x
+  with_dict: "{{ borgbackup_repos }}"
+
+- name: BorgBackup Scripte erstellen (prometheus)
+  template: 
+    src: borgbackup-prometheus.sh 
+    dest: /srv/borgbackup/borgbackup-prometheus.sh 
+    mode: u+x
+  
 - name: BorgBackup LogRotate config erstellen 
   template: 
     src: logrotate 
@@ -82,8 +122,9 @@
     state: absent
 
 - name: Cronjob für BorgBackup Backup 
-  cron: name="borgbackup-create" weekday="{{borgbackup_weekday}}" hour="{{borgbackup_hour}}" minute="{{borgbackup_minute}}" job="/srv/borgbackup/borgbackup-create.sh 2>&1 | ts '[\\%Y-\\%m-\\%d \\%H:\\%M:\\%S]' >> /var/log/borgbackup/borgbackup.log"
+  cron: name="borgbackup-{{ item.key }}" weekday="{{ item.value.weekday }}" hour="{{ item.value.hour }}" minute="{{ item.value.minute }}" job="/srv/borgbackup/{{ item.key }}/borgbackup-create.sh 2>&1 | ts '[\\%Y-\\%m-\\%d \\%H:\\%M:\\%S]' >> /var/log/borgbackup/{{ item.key }}.log"
+  with_dict: "{{ borgbackup_repos }}"
 
 - name: Cronjob für BorgBackup Prometheus export  
-  cron: name="borgbackup-prom" weekday="*" hour="*" minute="0" job="/srv/borgbackup/borgbackup-prometheus.sh 2>&1 | ts '[\\%Y-\\%m-\\%d \\%H:\%M:\\%S]' >> /var/log/borgbackup/borgbackup.log"
+  cron: name="borgbackup-prom" weekday="*" hour="*" minute="0" job="/srv/borgbackup/borgbackup-prometheus.sh 2>&1 | ts '[\\%Y-\\%m-\\%d \\%H:\%M:\\%S]' >> /var/log/borgbackup/borgbackup-prometheus.log"
   
diff --git a/common/borgbackup/templates/borgbackup-check.sh b/common/borgbackup/templates/borgbackup-check.sh
index bf0ac7237f2daa2f960cdce77dac054e13658fd4..84bf54690cb4260ac23bdadc9d511653c7bcfa48 100644
--- a/common/borgbackup/templates/borgbackup-check.sh
+++ b/common/borgbackup/templates/borgbackup-check.sh
@@ -5,10 +5,6 @@
 export BORG_PASSPHRASE="{{repo_passphrase}}"
 export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 
+echo "===[ Check Repo: {{ item.value.repo }} ]==="
+borg check $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }}
 
-{% for repo_url in borgbackup_repos %}
-
-echo "===[ Check Repo: {{repo_url}} ]============================================================"
-borg check $1 $2 $3 --info --show-rc --remote-path borg1 {{repo_url}}
-
-{% endfor %}
\ No newline at end of file
diff --git a/common/borgbackup/templates/borgbackup-create.sh b/common/borgbackup/templates/borgbackup-create.sh
index 4351531da5eb21c45a782d0828a6b4971a23435d..0d257d03bfa35e258767a57fabf5dccbe031be1f 100644
--- a/common/borgbackup/templates/borgbackup-create.sh
+++ b/common/borgbackup/templates/borgbackup-create.sh
@@ -3,25 +3,46 @@
 export BORG_PASSPHRASE="{{repo_passphrase}}"
 export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 export BACKUP_DATE=`date +%Y-%m-%d_%H_%M`
+export LAST_BACKUPS_PROM="/var/lib/prometheus/node-exporter/lastbackup.prom"
 
 # Ausführung der Backups
 # anschließend Bereinigung 
 # abschließend Integritätscheck 
 
-{% for repo_url in borgbackup_repos %}
-
-echo "===[ Create Backup: {{repo_url}} ]============================================================"
-
-borg create $1 $2 $3 --info --show-rc --remote-path borg1 --stats --compression lzma,2 {{repo_url}}::$BACKUP_DATE \
+echo "===[ Create Backup: {{ item.value.repo }} ]===" \
+&& \
+borg create $1 $2 $3 --info --show-rc --stats --compression {{ item.value.compression }} {{ item.value.options }} {{ item.value.repo }}::$BACKUP_DATE \
 {% for directory in borgbackup_directories %}
 {{ directory }} \
-{% endfor %}
+{% endfor %} \
+{% if item.value.directories is defined %}
+  {% for directory in item.value.directories %}
+  {{ directory }} \
+  {% endfor %} \
+  {% endif %}
 && \
-borg prune $1 $2 $3 --info --show-rc --list {{repo_url}} \
-{% for prune in borgbackup_prune %}
-{{ prune }} \
-{% endfor %}
+echo "===[ Prune old Backups: {{ item.value.repo }} ]===" \
 && \
-borg check $1 $2 $3 --info --show-rc {{repo_url}}
-
-{% endfor %}
+borg prune $1 $2 $3 --info --show-rc --list {{ item.value.prune }} {{ item.value.options }} {{ item.value.repo }} \
+&& \
+echo "===[ Check Repo: {{ item.value.repo }} ]===" \
+&& \
+borg check $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }} \
+&& \
+echo "===[ write: /srv/rsyncbackup/{{ item.key }}/lastbackup ]===" \
+&& \
+date > "/srv/borgbackup/{{ item.key }}/lastbackup" \
+&& \
+echo "===[ add value to: $LAST_BACKUPS_PROM ]===" \
+&& \
+touch $LAST_BACKUPS_PROM \
+&& \
+sed -i '/borgbackup_lastbackup{repo="{{ item.key }}"}/d' $LAST_BACKUPS_PROM \
+&& \
+echo "borgbackup_lastbackup{repo=\"{{ item.key }}\"} $(date +%s)" >> $LAST_BACKUPS_PROM \
+&& \
+echo "===[ send alerta heartbeat ]===" \
+&& \
+/srv/alerta_heartbeat/send_service_heartbeat.sh {{ item.value.heartbeat_timeout }} borg@{{ item.key }} \
+&& \
+echo "===[ DONE ]===" 
diff --git a/common/borgbackup/templates/borgbackup-delete.sh b/common/borgbackup/templates/borgbackup-delete.sh
index b42369dd757ac0b56c38e350837759ef546235d3..66c15c8a6fcc58c1fbbbcc95741e9fcaf065ea54 100644
--- a/common/borgbackup/templates/borgbackup-delete.sh
+++ b/common/borgbackup/templates/borgbackup-delete.sh
@@ -5,20 +5,11 @@ export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 
 # Löschen eines Backups
 
-echo "Available Repos: "
-
-{% for repo_url in borgbackup_repos %}
-echo "{{repo_url}}"
-{% endfor %}
-
-echo "RepoName, followed by [ENTER]:"
-read repo_url
-
 echo "Available Backups: "
 
-borg list $1 $2 $3 --info --show-rc --remote-path borg1 $repo_url
+borg list $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }}
 
 echo "BackupName, followed by [ENTER]:"
 read target
 
-borg delete $1 $2 $3 --info --show-rc --remote-path borg1 $repo_url::$target
+borg delete $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }}::$target
diff --git a/common/borgbackup/templates/borgbackup-info.sh b/common/borgbackup/templates/borgbackup-info.sh
index d0d14f2db512af7a434cf04f2390a80c81028839..5afb6d1686fd09148cb8e1fbeb3797a1b46fdbe7 100644
--- a/common/borgbackup/templates/borgbackup-info.sh
+++ b/common/borgbackup/templates/borgbackup-info.sh
@@ -5,12 +5,11 @@ export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 
 #  Anzeige des Inhaltes in den Borg Backup Archiven
 
-{% for repo_url in borgbackup_repos %}
+echo "============================================="
+echo "Backups Repo Info: {{ item.key }} "
 
-BACKUPS=$(borg list $1 $2 $3 --info --show-rc --remote-path borg1 {{repo_url}})
+BACKUPS=$(borg list $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }})
 
-echo "============================================="
-echo "Backups List "
 echo "$BACKUPS"
 
 BACKUPS_LIST=$(echo "$BACKUPS" | awk '{print $1}')
@@ -19,11 +18,10 @@ for BACKUP in $BACKUPS_LIST; do
 
   echo "============================================="
 
-  borg info $1 $2 $3 --info --show-rc --remote-path borg1 {{repo_url}}::$BACKUP
+  borg info $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }}::$BACKUP
 
 done
 
 echo "============================================="
 
-{% endfor %}
 
diff --git a/common/borgbackup/templates/borgbackup-init.sh b/common/borgbackup/templates/borgbackup-init.sh
index 7d12e5b75e98c156f2bb41854769db1cabe5a431..cdaa77e39f32eb1ae3fe3dcd3bf08a107eff828d 100644
--- a/common/borgbackup/templates/borgbackup-init.sh
+++ b/common/borgbackup/templates/borgbackup-init.sh
@@ -6,18 +6,15 @@
 export BORG_PASSPHRASE="{{repo_passphrase}}"
 export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 
-{% for repo_url in borgbackup_repos %}
+if [ ! -e "/srv/borgbackup/{{ item.key }}/initialized" ]; then
 
-if [ ! -e "{{repo_url}}.initialized" ]; then
+  echo "Initialize Repo: {{ item.key }}"
+  date > "/srv/borgbackup/{{ item.key }}/initialized"
 
-  echo "Initialize Repo: {{repo_url}}"
-  date > "{{repo_url}}.initialized"
-
-  borg init $1 $2 $3 --info --show-rc --remote-path borg1 --encryption=repokey {{repo_url}} 
+  borg init $1 $2 $3 --info --show-rc --encryption=repokey {{ item.value.options }} {{ item.value.repo }}  
 else
   
-  echo "Repo already initialized: {{repo_url}}"
+  echo "Repo already initialized: {{ item.key }}"
 
 fi
 
-{% endfor %}
diff --git a/common/borgbackup/templates/borgbackup-list.sh b/common/borgbackup/templates/borgbackup-list.sh
index 6d0fe73938e2fd2f58706ba058d4ff0e45d2ec41..f9cfb9682ac1576e468aa407d8cacc141232f16e 100644
--- a/common/borgbackup/templates/borgbackup-list.sh
+++ b/common/borgbackup/templates/borgbackup-list.sh
@@ -5,10 +5,7 @@ export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 
 # Anzeige des Inhaltes in den Borg Backup Archiven
 
-{% for repo_url in borgbackup_repos %}
+echo "===[ List Repo: {{ item.key }} ]==="
+borg list $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }} 
 
-echo "===[ List Repo: {{repo_url}} ]============================================================"
-borg list $1 $2 $3 --info --show-rc --remote-path borg1 {{repo_url}} 
-
-{% endfor %}
 
diff --git a/common/borgbackup/templates/borgbackup-mount.sh b/common/borgbackup/templates/borgbackup-mount.sh
index 86e2e0e973e2544b69e2df1929da34f12410e85a..24eda480d58cea0aa0e3178de9b2d17eb45b5af4 100644
--- a/common/borgbackup/templates/borgbackup-mount.sh
+++ b/common/borgbackup/templates/borgbackup-mount.sh
@@ -5,17 +5,8 @@ export BORG_RSH="ssh -i /srv/borgbackup/repo_sshkey"
 
 # Einhängen der Repos in /mnt/
 
-echo "Available Repos: "
+echo "Directory to mount, followed by [ENTER]:"
+read target
 
-{% for repo_url in borgbackup_repos %}
-echo "{{repo_url}}"
-{% endfor %}
-
-echo "RepoName, followed by [ENTER]:"
-read repo_url
-
-echo -n 'Mounting to: /mnt'
-
-mkdir /mnt/
-borg mount $1 $2 $3 --info --show-rc --remote-path borg1 $repo_url /mnt/
+borg mount $1 $2 $3 --info --show-rc {{ item.value.options }} {{ item.value.repo }} $target
 
diff --git a/common/borgbackup/templates/borgbackup-prometheus.sh b/common/borgbackup/templates/borgbackup-prometheus.sh
index c5c4cd9f0b83b946a402399afae4c55352c1cae6..497ad3f6e5e7fa9b07e27032d7586da118f7a27b 100644
--- a/common/borgbackup/templates/borgbackup-prometheus.sh
+++ b/common/borgbackup/templates/borgbackup-prometheus.sh
@@ -28,11 +28,14 @@ function calc_bytes {
 	esac
 }
 
-echo "borgbackup_repos_count {{borgbackup_repos|length}}" > $TMP_FILE
+# create temp file 
+TMP_FILE=$(mktemp)
+
+echo "borgbackup_repos_count {{ borgbackup_repos|length }}" > $TMP_FILE
 
-{% for repo_url in borgbackup_repos %}
+{% for repo in borgbackup_repos %}
 
-BACKUPS=$(borg list --remote-path borg1 {{repo_url}})
+BACKUPS=$(borg list {{ borgbackup_repos[repo].options }} {{ borgbackup_repos[repo].repo }})
 BACKUPS_LIST=$(echo "$BACKUPS" | awk '{print $1}')
 COUNTER=0
 
@@ -42,15 +45,12 @@ for BACKUP in $BACKUPS_LIST; do
 
 done
 
-BORG_INFO=$(borg info --remote-path borg1 {{repo_url}}::$BACKUP)
-
-# create temp file 
-TMP_FILE=$(mktemp)
+BORG_INFO=$(borg info {{ borgbackup_repos[repo].options }} {{ borgbackup_repos[repo].repo }}::$BACKUP)
 
-echo "borgbackup_count{repo="{{ repo_url }}"} $COUNTER" > $TMP_FILE
-echo "borgbackup_files{repo="{{ repo_url }}"} $(echo "$BORG_INFO" | grep "Number of files" | awk '{print $4}')" >> $TMP_FILE
-echo "borgbackup_chunks_unique{repo="{{ repo_url }}"} $(echo "$BORG_INFO" | grep "Chunk index" | awk '{print $3}')" >> $TMP_FILE
-echo "borgbackup_chunks_total{repo="{{ repo_url }}"} $(echo "$BORG_INFO" | grep "Chunk index" | awk '{print $4}')" >> $TMP_FILE
+echo "borgbackup_count{repo=\"{{ repo }}\"} $COUNTER" >> $TMP_FILE
+echo "borgbackup_files{repo=\"{{ repo }}\"} $(echo "$BORG_INFO" | grep "Number of files" | awk '{print $4}')" >> $TMP_FILE
+echo "borgbackup_chunks_unique{repo=\"{{ repo }}\"} $(echo "$BORG_INFO" | grep "Chunk index" | awk '{print $3}')" >> $TMP_FILE
+echo "borgbackup_chunks_total{repo=\"{{ repo }}\"} $(echo "$BORG_INFO" | grep "Chunk index" | awk '{print $4}')" >> $TMP_FILE
 
 # byte size calculation 
 LAST_SIZE=$(calc_bytes $(echo "$BORG_INFO" |grep "This archive" |awk '{print $3}') $(echo "$BORG_INFO" |grep "This archive" |awk '{print $4}'))
@@ -60,12 +60,12 @@ TOTAL_SIZE=$(calc_bytes $(echo "$BORG_INFO" |grep "All archives" |awk '{print $3
 TOTAL_SIZE_COMPRESSED=$(calc_bytes $(echo "$BORG_INFO" |grep "All archives" |awk '{print $5}') $(echo "$BORG_INFO" |grep "All archives" |awk '{print $6}'))
 TOTAL_SIZE_DEDUP=$(calc_bytes $(echo "$BORG_INFO" |grep "All archives" |awk '{print $7}') $(echo "$BORG_INFO" |grep "All archives" |awk '{print $8}'))
 
-echo "borgbackup_last_size{repo="{{ repo_url }}"} $LAST_SIZE" >> $TMP_FILE
-echo "borgbackup_last_size_compressed{repo="{{ repo_url }}"} $LAST_SIZE_COMPRESSED" >> $TMP_FILE
-echo "borgbackup_last_size_dedup{repo="{{ repo_url }}"} $LAST_SIZE_DEDUP" >> $TMP_FILE
-echo "borgbackup_total_size{repo="{{ repo_url }}"} $TOTAL_SIZE" >> $TMP_FILE
-echo "borgbackup_total_size_compressed{repo="{{ repo_url }}"} $TOTAL_SIZE_COMPRESSED" >> $TMP_FILE
-echo "borgbackup_total_size_dedup{repo="{{ repo_url }}"} $TOTAL_SIZE_DEDUP" >> $TMP_FILE
+echo "borgbackup_last_size{repo=\"{{ repo }}\"} $LAST_SIZE" >> $TMP_FILE
+echo "borgbackup_last_size_compressed{repo=\"{{ repo }}\"} $LAST_SIZE_COMPRESSED" >> $TMP_FILE
+echo "borgbackup_last_size_dedup{repo=\"{{ repo }}\"} $LAST_SIZE_DEDUP" >> $TMP_FILE
+echo "borgbackup_total_size{repo=\"{{ repo }}\"} $TOTAL_SIZE" >> $TMP_FILE
+echo "borgbackup_total_size_compressed{repo=\"{{ repo }}\"} $TOTAL_SIZE_COMPRESSED" >> $TMP_FILE
+echo "borgbackup_total_size_dedup{repo=\"{{ repo }}\"} $TOTAL_SIZE_DEDUP" >> $TMP_FILE
 
 {% endfor %}
 
@@ -73,5 +73,5 @@ echo "borgbackup_total_size_dedup{repo="{{ repo_url }}"} $TOTAL_SIZE_DEDUP" >> $
 mv $TMP_FILE $PROM_FILE
 chown prometheus:prometheus $PROM_FILE
  
-echo "created BorgBackup statistic for $COUNTER backups in $PROM_FILE"
+echo "created BorgBackup statistic for {{ borgbackup_repos|length }} repos: $PROM_FILE"