Files
swarm-master/ansible/roles/vm/templates/cloud-init-user-data.j2
William Valentin aceeb7b542 Initial commit — OpenClaw VM infrastructure
- ansible/: VM provisioning playbooks and roles
  - provision-vm.yml: create KVM VM from Ubuntu cloud image
  - install.yml: install OpenClaw on guest (upstream)
  - customize.yml: swappiness, virtiofs fstab, linger
  - roles/vm/: libvirt domain XML, cloud-init templates
  - inventory.yml + host_vars/zap.yml: zap instance config
- backup-openclaw-vm.sh: daily rsync + MinIO upload
- restore-openclaw-vm.sh: full redeploy from scratch
- README.md: full operational documentation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 12:18:31 -07:00

29 lines
467 B
Django/Jinja

#cloud-config
hostname: {{ vm_hostname }}
manage_etc_hosts: true
# Enable root SSH with key from host
disable_root: false
ssh_pwauth: false
users:
- name: root
ssh_authorized_keys:
{% for key in vm_ssh_keys | default([]) %}
- {{ key }}
{% endfor %}
# Grow root partition to fill disk
growpart:
mode: auto
devices: [/]
resize_rootfs: true
# Ensure SSH is running
packages:
- qemu-guest-agent
runcmd:
- systemctl enable --now qemu-guest-agent