add scripts dirctory
authorLorin Hochstein <lorin.hochstein@sendgrid.com>
Sat, 7 Feb 2015 02:19:31 +0000 (21:19 -0500)
committerLorin Hochstein <lorin.hochstein@sendgrid.com>
Sat, 7 Feb 2015 02:19:31 +0000 (21:19 -0500)
ch06/playbooks/scripts/setadmin.py [new file with mode: 0644]
ch06/playbooks/scripts/setsite.py [new file with mode: 0644]

diff --git a/ch06/playbooks/scripts/setadmin.py b/ch06/playbooks/scripts/setadmin.py
new file mode 100644 (file)
index 0000000..7800302
--- /dev/null
@@ -0,0 +1,23 @@
+#!/usr/bin/env python
+# A script to set the admin credentials
+# Assumes two environment variables
+#
+# PROJECT_DIR: the project directory (e.g., ~/projname)
+# ADMIN_PASSWORD: admin user's password
+
+import os
+import sys
+
+# Add the project directory to system path
+proj_dir = os.path.expanduser(os.environ['PROJECT_DIR'])
+sys.path.append(proj_dir)
+
+os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
+
+
+from mezzanine.utils.models import get_user_model
+User = get_user_model()
+u, _ = User.objects.get_or_create(username='admin')
+u.is_staff = u.is_superuser = True
+u.set_password(os.environ['ADMIN_PASSWORD'])
+u.save()
diff --git a/ch06/playbooks/scripts/setsite.py b/ch06/playbooks/scripts/setsite.py
new file mode 100644 (file)
index 0000000..9455624
--- /dev/null
@@ -0,0 +1,22 @@
+#!/usr/bin/env python
+# A script to set the site domain
+# Assumes two environment variables
+#
+# PROJECT_DIR: the project directory (e.g., ~/projname)
+# WEBSITE_DOMAIN: the domain of the site (e.g., www.example.com)
+
+import os
+import sys
+
+# Add the project directory to system path
+proj_dir = os.path.expanduser(os.environ['PROJECT_DIR'])
+sys.path.append(proj_dir)
+
+os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
+from django.conf import settings
+from django.contrib.sites.models import Site
+
+domain = os.environ['WEBSITE_DOMAIN']
+Site.objects.filter(id=settings.SITE_ID).update(domain=domain)
+Site.objects.get_or_create(domain=domain)
+