1 heat_template_version: pike
4 OpenStack containerized Ironic PXE service
9 default: 'tripleoupstream'
13 default: 'centos-binary-ironic-pxe:latest'
15 DockerIronicConfigImage:
17 default: 'centos-binary-ironic-pxe:latest'
21 description: Mapping of service endpoint -> protocol. Typically set
22 via parameter_defaults in the resource registry.
26 description: Mapping of service_name -> network name. Typically set
27 via parameter_defaults in the resource registry. This
28 mapping overrides those in ServiceNetMapDefaults.
35 description: Role name on which the service is applied
39 description: Parameters specific to the role
44 type: ./containers-common.yaml
48 description: Role data for the Ironic PXE role.
50 service_name: ironic_pxe
52 step_config: &step_config ''
53 service_config_settings: {}
54 # BEGIN DOCKER SETTINGS
57 puppet_tags: ironic_config
58 step_config: *step_config
62 - [ {get_param: DockerNamespace}, {get_param: DockerIronicConfigImage} ]
64 /var/lib/kolla/config_files/ironic_pxe_http.json:
65 command: /usr/sbin/httpd -DFOREGROUND
66 /var/lib/kolla/config_files/ironic_pxe_tftp.json:
67 command: /usr/sbin/in.tftpd --foreground --user root --address 0.0.0.0:69 --map-file /var/lib/ironic/tftpboot/map-file /var/lib/ironic/tftpboot
69 - path: /var/log/ironic
76 image: &ironic_pxe_image
79 - [ {get_param: DockerNamespace}, {get_param: DockerIronicPxeImage} ]
85 - {get_attr: [ContainersCommon, volumes]}
87 - /var/lib/kolla/config_files/ironic_pxe_tftp.json:/var/lib/kolla/config_files/config.json:ro
88 - /var/lib/config-data/ironic/etc/ironic/:/etc/ironic/:ro
89 # TODO(mandre) check how docker like mounting in a bind-mounted tree
90 # This directory may contain migrated data from BM
91 - /var/lib/ironic:/var/lib/ironic/
92 # These files were generated by puppet inside the config container
93 # TODO(mandre) check the mount permission (ro/rw)
94 - /var/lib/config-data/ironic/var/lib/ironic/tftpboot/chain.c32:/var/lib/ironic/tftpboot/chain.c32
95 - /var/lib/config-data/ironic/var/lib/ironic/tftpboot/pxelinux.0:/var/lib/ironic/tftpboot/pxelinux.0
96 - /var/lib/config-data/ironic/var/lib/ironic/tftpboot/ipxe.efi:/var/lib/ironic/tftpboot/ipxe.efi
97 - /var/lib/config-data/ironic/var/lib/ironic/tftpboot/undionly.kpxe:/var/lib/ironic/tftpboot/undionly.kpxe
98 - /var/lib/config-data/ironic/var/lib/ironic/tftpboot/map-file:/var/lib/ironic/tftpboot/map-file
100 - /var/log/containers/ironic:/var/log/ironic
102 - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
105 image: *ironic_pxe_image
111 - {get_attr: [ContainersCommon, volumes]}
113 - /var/lib/kolla/config_files/ironic_pxe_http.json:/var/lib/kolla/config_files/config.json:ro
114 - /var/lib/config-data/ironic/etc/ironic/:/etc/ironic/:ro
115 - /var/lib/config-data/ironic/etc/httpd/:/etc/httpd/:ro
116 - /var/lib/config-data/ironic/var/www/:/var/www/:ro
117 - /var/lib/ironic:/var/lib/ironic/
118 - /var/log/containers/ironic:/var/log/ironic
120 - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
122 - name: create persistent directories
128 - /var/log/containers/ironic