Skip to content
Extraits de code Groupes Projets
Valider 86793293 rédigé par Rémi - Le Filament's avatar Rémi - Le Filament
Parcourir les fichiers

[IMP] use dictionary for swift accounts

parent 47e31ab4
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -42,28 +42,7 @@ This role can be simply executed like follows (gathering facts is not necessary ...@@ -42,28 +42,7 @@ This role can be simply executed like follows (gathering facts is not necessary
become: true become: true
roles: roles:
- { role: backup_server_conf, tags: backup } - { role: backup_server_conf, tags: backup }
vars:
- { swift_cloud_authurl: "https://auth.cloud.ovh.net/v3/" }
- { swift_cloud_authversion: 3 }
- { swift_cloud_tenantid: "12f1e" }
- { swift_cloud_tenantname: "2214534534" }
- { swift_cloud_username: "testuser" }
- { swift_cloud_password: "testpassword" }
- { swift_cloud_regionname: GRA }
- { swift_odoo_authurl: "https://auth.cloud.ovh.net/v3/" }
- { swift_odoo_authversion: 3 }
- { swift_odoo_tenantid: "132e1fa" }
- { swift_odoo_tenantname: "12312534534" }
- { swift_odoo_username: "testuser" }
- { swift_odoo_password: "testpassword" }
- { swift_odoo_regionname: "GRA" }
- { swift_odoo2_authurl: "https://auth.cloud.ovh.net/v3/" }
- { swift_odoo2_authversion: 3 }
- { swift_odoo2_tenantid: "12323534ab" }
- { swift_odoo2_tenantname: "123124235345" }
- { swift_odoo2_username: "testuser" }
- { swift_odoo2_password: "testpassword" }
- { swift_odoo2_regionname: "DE" }
License License
------- -------
......
--- ---
## Parameters for listing backups stored on Object Storage - for Cloud ## Parameters for listing backups stored on Object Storage - for Cloud
swift_cloud_authurl: https://auth.cloud.ovh.net/v3/ swift_cloud_accounts:
swift_cloud_authversion: 3 1:
swift_cloud_tenantid: "12f1e" authurl: https://auth.cloud.ovh.net/v3/
swift_cloud_tenantname: "2214534534" authversion: 3
swift_cloud_username: "testuser" tenantid: "12f1e"
swift_cloud_password: "testpassword" tenantname: "2214534534"
swift_cloud_regionname: GRA regionname: GRA
swift_cloud_credentials:
1:
username: "testuser"
password: "testpassword"
## Parameters for listing backups stored on Object Storage - for Odoo ## Parameters for listing backups stored on Object Storage - for Odoo
swift_odoo_authurl: https://auth.cloud.ovh.net/v3/ swift_odoo_accounts:
swift_odoo_authversion: 3 1:
swift_odoo_tenantid: "132e1fa" authurl: https://auth.cloud.ovh.net/v3/
swift_odoo_tenantname: "12312534534" authversion: 3
swift_odoo_username: "testuser" tenantid: "132e1fa"
swift_odoo_password: "testpassword" tenantname: "12312534534"
swift_odoo_regionname: "GRA" regionname: "GRA"
## Parameters for listing backups stored on Object Storage - for Odoo (2nd backup) 2:
swift_odoo2_authurl: https://auth.cloud.ovh.net/v3/ authurl: https://auth.cloud.ovh.net/v3/
swift_odoo2_authversion: 3 authversion: 3
swift_odoo2_tenantid: "12323534ab" tenantid: "12323534ab"
swift_odoo2_tenantname: "123124235345" tenantname: "123124235345"
swift_odoo2_username: "testuser" regionname: "DE"
swift_odoo2_password: "testpassword"
swift_odoo2_regionname: "DE" swift_odoo_credentials:
1:
username: "testuser"
password: "testpassword"
2:
username: "testuser"
password: "testpassword"
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
- name: Copy OpenStack Fact Collection scripts on server - name: Copy OpenStack Fact Collection scripts on server
ansible.builtin.template: ansible.builtin.template:
src: "{{ item.script }}.j2" src: "{{ item.template }}"
dest: /root/{{ item.script }} dest: /root/{{ item.script }}
owner: root owner: root
group: root group: root
......
...@@ -5,25 +5,27 @@ ...@@ -5,25 +5,27 @@
# Configure variables # Configure variables
export OS_AUTH_URL="{{ swift_cloud_authurl }}" export OS_AUTH_URL="{{ item.account.authurl }}"
export OS_IDENTITY_API_VERSION={{ swift_cloud_authversion }} export OS_IDENTITY_API_VERSION={{ item.account.authversion }}
export OS_TENANT_ID="{{ swift_cloud_tenantid }}" export OS_TENANT_ID="{{ item.account.tenantid }}"
export OS_TENANT_NAME="{{ swift_cloud_tenantname }}" export OS_TENANT_NAME="{{ item.account.tenantname }}"
export OS_USERNAME="{{ swift_cloud_username }}" export OS_USERNAME="{{ item.credential.username }}"
export OS_PASSWORD="{{ swift_cloud_password }}" export OS_PASSWORD="{{ item.credential.password }}"
export OS_REGION_NAME="{{ swift_cloud_regionname }}" export OS_REGION_NAME="{{ item.account.regionname }}"
TODAY=`date --utc +%F` TODAY=`date --utc +%F`
for container in `/usr/local/bin/swift list` for container in `/usr/local/bin/swift list`
do do
{% if item.type == "cloud" %}
[[ "$container" == *'_segments' ]] && continue [[ "$container" == *'_segments' ]] && continue
file="/backup/cloud/$container.$TODAY" {% endif %}
file="/backup/{{ item.type }}/$container.$TODAY"
printf "DATE = $TODAY" > $file printf "DATE = $TODAY" > $file
printf "\n\n-- STATS --\n" >> $file printf "\n\n-- STATS --\n" >> $file
/usr/local/bin/swift stat --lh $container >> $file /usr/local/bin/swift stat --lh $container >> $file
printf "\n\n-- LIST FILES --\n" >> $file printf "\n\n-- LIST FILES --\n" >> $file
/usr/local/bin/swift list --lh $container >> $file /usr/local/bin/swift list --lh $container >> $file
cp $file /backup/cloud/$container.latest cp $file /backup/{{ item.type }}/$container.latest
chmod 644 $file /backup/cloud/$container.latest chmod 644 $file /backup/{{ item.type }}/$container.latest
done done
#!/bin/bash
# Copyright © 2019 Le Filament (<http://www.le-filament.com>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
# Configure variables
export OS_AUTH_URL="{{ swift_odoo2_authurl }}"
export OS_IDENTITY_API_VERSION={{ swift_odoo2_authversion }}
export OS_TENANT_ID="{{ swift_odoo2_tenantid }}"
export OS_TENANT_NAME="{{ swift_odoo2_tenantname }}"
export OS_USERNAME="{{ swift_odoo2_username }}"
export OS_PASSWORD="{{ swift_odoo2_password }}"
export OS_REGION_NAME="{{ swift_odoo2_regionname }}"
TODAY=`date +%F`
for container in `/usr/local/bin/swift list`
do
file="/backup/odoo2/$container.$TODAY"
printf "DATE = $TODAY" > $file
printf "\n\n-- STATS --\n" >> $file
/usr/local/bin/swift stat --lh $container >> $file
printf "\n\n-- LIST FILES --\n" >> $file
/usr/local/bin/swift list --lh $container >> $file
cp $file /backup/odoo2/$container.latest
chmod 644 $file /backup/odoo2/$container.latest
done
#!/bin/bash
# Copyright © 2019 Le Filament (<http://www.le-filament.com>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
# Configure variables
export OS_AUTH_URL="{{ swift_odoo_authurl }}"
export OS_IDENTITY_API_VERSION={{ swift_odoo_authversion }}
export OS_TENANT_ID="{{ swift_odoo_tenantid }}"
export OS_TENANT_NAME="{{ swift_odoo_tenantname }}"
export OS_USERNAME="{{ swift_odoo_username }}"
export OS_PASSWORD="{{ swift_odoo_password }}"
export OS_REGION_NAME="{{ swift_odoo_regionname }}"
TODAY=`date +%F`
for container in `/usr/local/bin/swift list`
do
file="/backup/odoo/$container.$TODAY"
printf "DATE = $TODAY" > $file
printf "\n\n-- STATS --\n" >> $file
/usr/local/bin/swift stat --lh $container >> $file
printf "\n\n-- LIST FILES --\n" >> $file
/usr/local/bin/swift list --lh $container >> $file
cp $file /backup/odoo/$container.latest
chmod 644 $file /backup/odoo/$container.latest
done
...@@ -11,18 +11,31 @@ swift_pip_packages: ...@@ -11,18 +11,31 @@ swift_pip_packages:
collect_backups: collect_backups:
- name: "check openstack cloud facts" - name: "check openstack cloud facts"
template: retrieve_openstack_facts.sh.j2
script: retrieve_openstack_cloud_facts.sh script: retrieve_openstack_cloud_facts.sh
type: "cloud"
account: "{{ swift_cloud_accounts.1 }}"
credential: "{{ swift_cloud_credentials.1 }}"
hour: 4 hour: 4
minute: 30 minute: 30
- name: "check openstack odoo facts" - name: "check openstack odoo facts"
template: retrieve_openstack_facts.sh.j2
script: retrieve_openstack_odoo_facts.sh script: retrieve_openstack_odoo_facts.sh
type: "odoo"
account: "{{ swift_odoo_accounts.1 }}"
credential: "{{ swift_odoo_credentials.1 }}"
hour: 4 hour: 4
minute: 45 minute: 45
- name: "check openstack odoo2 facts" - name: "check openstack odoo2 facts"
template: retrieve_openstack_facts.sh.j2
script: retrieve_openstack_odoo2_facts.sh script: retrieve_openstack_odoo2_facts.sh
type: "odoo2"
account: "{{ swift_odoo_accounts.2 }}"
credential: "{{ swift_odoo_credentials.2 }}"
hour: 2 hour: 2
minute: 0 minute: 0
- name: "move versioned files" - name: "move versioned files"
template: move_versioned_files.sh.j2
script: move_versioned_files.sh script: move_versioned_files.sh
hour: 7 hour: 7
minute: 0 minute: 0
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter