aboutsummaryrefslogtreecommitdiffstats
path: root/firstboot/userdata_heat_admin.yaml
diff options
context:
space:
mode:
authorSteven Hardy <shardy@redhat.com>2015-09-03 10:38:59 +0100
committerSteven Hardy <shardy@redhat.com>2015-09-03 13:56:16 +0100
commitd578cf1ac057643428eba77c3c0a0d31b9db6ad3 (patch)
treef26cc28806626c8df99b07b589fdafc15695321f /firstboot/userdata_heat_admin.yaml
parente83af2b8c00d8ae21067b5001e70c030116b0dfe (diff)
Add NodeAdminUserData interface for "heat-admin" user
Reinstates the heat-admin user via template user-data, which replaces the previous boothook injected user provided by the (deprecated now removed) heat instance_user option. This has some advantages over the heat.conf option, e.g it allows for much easier customzation of the user configuration (additional SSH keys, adding groups etc), and also in future if we support deploying more than one overcloud you could specify a different user per deployment. Co-Authored-By: Dan Prince <dprince@redhat.com> Change-Id: I2235b9690c01542d8a28ec1c1a4607de751aea29 Closes-Bug: #1229849
Diffstat (limited to 'firstboot/userdata_heat_admin.yaml')
-rw-r--r--firstboot/userdata_heat_admin.yaml29
1 files changed, 29 insertions, 0 deletions
diff --git a/firstboot/userdata_heat_admin.yaml b/firstboot/userdata_heat_admin.yaml
new file mode 100644
index 00000000..73481c63
--- /dev/null
+++ b/firstboot/userdata_heat_admin.yaml
@@ -0,0 +1,29 @@
+heat_template_version: 2014-10-16
+
+parameters:
+ # Can be overriden via parameter_defaults in the environment
+ node_admin_username:
+ type: string
+ default: heat-admin
+
+description: >
+ Uses cloud-init to create an additional user with a known name, in addition
+ to the distro-default user created by the cloud-init default.
+
+resources:
+ userdata:
+ type: OS::Heat::MultipartMime
+ properties:
+ parts:
+ - config: {get_resource: user_config}
+
+ # Note this requires cloud-init >= 0.7.2 ref bug #1100920
+ user_config:
+ type: OS::Heat::CloudConfig
+ properties:
+ cloud_config:
+ user: {get_param: node_admin_username}
+
+outputs:
+ OS::stack_id:
+ value: {get_resource: userdata}