Naposledy aktivní 3 weeks ago

Working version of my proxmox template creation script. It'll be used to provision Packer with necessary templates in order to build it's image.

Revize a7aafde180ad28c7bd964fe54d7a588f5b5100b1

create-pve-template.sh Raw
1#!/bin/bash
2
3set -e
4
5TEMPLATE_URL="https://cloud-images.ubuntu.com/plucky/current/plucky-server-cloudimg-amd64.img"
6VMID=9000
7TEMPLATE_NAME="ubuntu-25.04-cloudimg-temp"
8STORAGE="local-lvm"
9
10
11# Arguments positionnels d'abord (optional)
12[ -n "$1" ] && VMID="$1"
13[ -n "$2" ] && TEMPLATE_NAME="$2"
14[ -n "$3" ] && STORAGE="$3"
15
16# Puis arguments nommés override (optional)
17while [[ $# -gt 4 ]]; do
18 shift
19 case "$1" in
20 --vmid=*) VMID="${1#*=}" ;;
21 --template=*) TEMPLATE_NAME="${1#*=}" ;;
22 --storage=*) STORAGE="${1#*=}" ;;
23 esac
24done
25
26cd /tmp
27wget -O "${TEMPLATE_NAME}_disk" \
28 "$TEMPLATE_URL"
29
30qm create "$VMID" \
31 --name "$TEMPLATE_NAME" \
32 --memory 3072 \
33 --cores 3 \
34 --net0 virtio,bridge=vmbr0 \
35 --serial0 socket \
36 --vga serial0
37
38qm importdisk "$VMID" "${TEMPLATE_NAME}_disk" "$STORAGE"
39
40qm set "$VMID" \
41 --scsihw virtio-scsi-pci \
42 --scsi0 "${STORAGE}:vm-${VMID}-disk-0" \
43 --ide2 "${STORAGE}:cloudinit" \
44 --boot c --bootdisk scsi0 \
45 --serial0 socket --vga serial0 \
46 --net0 virtio,bridge=vmbr0
47
48qm template "$VMID"
49
50echo "Template $VMID ready for Packer"