From: Kristof Provost Date: Tue, 11 Feb 2025 21:02:26 +0000 (+0100) Subject: ansible: make domotica create user task idempotent X-Git-Url: https://git.sigsegv.be/?a=commitdiff_plain;h=3b0a4ccabb4ea2ec6afda0b5cd360dfb65e00324;p=pennestraat-domotica ansible: make domotica create user task idempotent Only create the user if it doesn't already exist. We can now re-execute the playbook. --- 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