From 3b0a4ccabb4ea2ec6afda0b5cd360dfb65e00324 Mon Sep 17 00:00:00 2001 From: Kristof Provost Date: Tue, 11 Feb 2025 22:02:26 +0100 Subject: [PATCH] ansible: make domotica create user task idempotent Only create the user if it doesn't already exist. We can now re-execute the playbook. --- ansible/roles/domotica/tasks/domotica.yaml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ansible/roles/domotica/tasks/domotica.yaml b/ansible/roles/domotica/tasks/domotica.yaml index cea5013..e905814 100644 --- a/ansible/roles/domotica/tasks/domotica.yaml +++ b/ansible/roles/domotica/tasks/domotica.yaml @@ -51,7 +51,15 @@ - LD_LIBRARY_PATH: /home/kp/libs7comm/src/lib - DJANGO_SETTINGS_MODULE: domotica.settings - name: create user - shell: "cd /home/kp/domotica ; python manage.py shell -c 'from django.contrib.auth.models import User;user = User.objects.create_user(\"natalie\", \"natalie@sigsegv.be\", \"nienkeistwee\");user.save()'" + shell: | + cd /home/kp/domotica ; python manage.py shell -c ' + import sys + from django.contrib.auth.models import User + if User.objects.get(username="natalie"): + sys.exit(0) + user = User.objects.create_user("natalie", "natalie@sigsegv.be", "nienkeistwee") + user.save() + ' environment: - PYTHONPATH: /home/kp/libs7comm-python/ - LD_LIBRARY_PATH: /home/kp/libs7comm/src/lib -- 2.51.0