summaryrefslogtreecommitdiff
path: root/strata/openstack-services/ironic.morph
diff options
context:
space:
mode:
Diffstat (limited to 'strata/openstack-services/ironic.morph')
-rw-r--r--strata/openstack-services/ironic.morph17
1 files changed, 17 insertions, 0 deletions
diff --git a/strata/openstack-services/ironic.morph b/strata/openstack-services/ironic.morph
new file mode 100644
index 00000000..850399b4
--- /dev/null
+++ b/strata/openstack-services/ironic.morph
@@ -0,0 +1,17 @@
+name: ironic
+kind: chunk
+build-system: python-distutils
+post-install-commands:
+# Install rootwrap.conf
+- install -D -m 640 etc/ironic/rootwrap.conf "$DESTDIR"/etc/ironic/rootwrap.conf
+# Move rootwrap files to a proper location
+- mkdir -p "$DESTDIR"/etc/ironic/rootwrap.d
+- install -m 644 etc/ironic/rootwrap.d/* "$DESTDIR"/etc/ironic/rootwrap.d/
+# Add ironic to sudoers controlling which commands will run as a root
+# using the openstack rootwrap.
+- |
+ install -D -m 0440 /proc/self/fd/0 <<'EOF' "$DESTDIR"/etc/sudoers.d/ironic-rootwrap
+ Defaults:ironic !requiretty
+
+ ironic ALL=(root) NOPASSWD: /usr/bin/ironic-rootwrap /etc/ironic/rootwrap.conf *
+ EOF