[proxmox] Automatically synchronize Debian images

Signed-off-by: Yohann D'ANELLO <ynerant@crans.org>
certbot_on_virtu
Yohann D'ANELLO 2021-07-13 21:43:14 +02:00 committed by ynerant
parent 9f71b1cbde
commit 80a40df6c4
6 changed files with 37 additions and 0 deletions

View File

@ -0,0 +1,4 @@
---
glob_debian_images:
cron_timer: '39 06 * * *'
rsync_host: "eclat.adm.crans.org"

View File

@ -11,6 +11,9 @@ glob_ntp_client:
debian_mirror: http://mirror.cachan-adm.crans.org/debian debian_mirror: http://mirror.cachan-adm.crans.org/debian
proxmox_mirror: http://mirror.cachan-adm.crans.org/proxmox/debian/pve proxmox_mirror: http://mirror.cachan-adm.crans.org/proxmox/debian/pve
loc_debian_images:
rsync_host: 'mirror.cachan-adm.crans.org'
loc_postgres: loc_postgres:
subnets: subnets:
- 172.17.10.0/24 - 172.17.10.0/24

View File

@ -0,0 +1,8 @@
#!/usr/bin/env ansible-playbook
---
- hosts: virtu
vars:
debian_images: '{{ glob_debian_images | default({}) | combine(loc_debian_images | default({})) }}'
roles:
- proxmox-apt-sources
- proxmox-debian-images

View File

@ -13,6 +13,7 @@
- import_playbook: baie.yml - import_playbook: baie.yml
- import_playbook: utilities.yml - import_playbook: utilities.yml
- import_playbook: slapd.yml - import_playbook: slapd.yml
- import_playbook: proxmox.yml
- hosts: server,!sssd - hosts: server,!sssd
vars: vars:

View File

@ -0,0 +1,18 @@
---
- name: Auto-sync debian CD images to always have up-to-date Debian images
template:
src: cron.d/debian-images.j2
dest: /etc/cron.d/debian-images
- name: Install rsync
apt:
update_cache: true
name: rsync
register: apt_result
retries: 3
until: apt_result is succeeded
- name: Initial synchronization to download Debian images
shell: "rsync --verbose --dirs --compress --times --update --delete-after --delete-excluded --include 'debian-[0-9]*-amd64-netinst.iso' --exclude '*' rsync://eclat.adm.crans.org/mirror/cdimage-debian/release/current/amd64/iso-cd/ /var/lib/vz/template/iso/"
register: rsync_output
changed_when: '"debian" in rsync_output.stdout'

View File

@ -0,0 +1,3 @@
{{ ansible_header | comment }}
{{ debian_images.cron_timer }} root rsync --info=name1 --dirs --compress --times --update --delete-after --delete-excluded --include 'debian-[0-9]*-amd64-netinst.iso' --exclude '*' rsync://{{ debian_images.rsync_host }}/mirror/cdimage-debian/release/current/amd64/iso-cd/ /var/lib/vz/template/iso/