--- systemd: units: - name: installer.service enable: true contents: | [Unit] Requires=network-online.target After=network-online.target [Service] Type=simple ExecStart=/opt/installer [Install] WantedBy=multi-user.target # Avoid using the standard SSH port so terraform apply cannot SSH until # post-install. But admins may SSH to debug disk install problems. # After install, sshd will use port 22 and users/terraform can connect. - name: sshd.socket dropins: - name: 10-sshd-port.conf contents: | [Socket] ListenStream= ListenStream=2222 storage: files: - path: /opt/installer filesystem: root mode: 0500 contents: inline: | #!/bin/bash -ex curl --retry 10 "${ignition_endpoint}?{{.request.raw_query}}&os=installed" -o ignition.json coreos-install \ -d ${install_disk} \ -C ${os_channel} \ -V ${os_version} \ -o "${container_linux_oem}" \ ${baseurl_flag} \ -i ignition.json udevadm settle systemctl reboot passwd: users: - name: core ssh_authorized_keys: - "${ssh_authorized_key}"