tests(packer): define more common cloud init resources.
This commit is contained in:
parent
5bfebf6ea5
commit
2bc87f68a8
23 changed files with 311 additions and 434 deletions
2
Justfile
2
Justfile
|
|
@ -201,7 +201,7 @@ create dist flavor:
|
||||||
--vcpus {{vcpus}} \
|
--vcpus {{vcpus}} \
|
||||||
--ram {{ram}} \
|
--ram {{ram}} \
|
||||||
--machine q35 \
|
--machine q35 \
|
||||||
--boot uefi \
|
{{ if dist == "archlinux" { "" } else { "--boot uefi" } }} \
|
||||||
--memorybacking source.type=memfd,access.mode=shared \
|
--memorybacking source.type=memfd,access.mode=shared \
|
||||||
--disk path={{vm}}/{{prefix}}{{dist}}-{{flavor}}.qcow2,format=qcow2,bus=virtio \
|
--disk path={{vm}}/{{prefix}}{{dist}}-{{flavor}}.qcow2,format=qcow2,bus=virtio \
|
||||||
--filesystem "`pwd`,0a31bc478ef8e2461a4b1cc10a24cc4",accessmode=passthrough,driver.type=virtiofs \
|
--filesystem "`pwd`,0a31bc478ef8e2461a4b1cc10a24cc4",accessmode=passthrough,driver.type=virtiofs \
|
||||||
|
|
|
||||||
|
|
@ -3,9 +3,7 @@
|
||||||
packages:
|
packages:
|
||||||
# Install core packages
|
# Install core packages
|
||||||
- apparmor
|
- apparmor
|
||||||
- audit
|
|
||||||
- base-devel
|
- base-devel
|
||||||
- firewalld
|
|
||||||
- qemu-guest-agent
|
- qemu-guest-agent
|
||||||
- rng-tools
|
- rng-tools
|
||||||
- spice-vdagent
|
- spice-vdagent
|
||||||
|
|
@ -26,14 +24,14 @@ packages:
|
||||||
- cups-pdf
|
- cups-pdf
|
||||||
- system-config-printer
|
- system-config-printer
|
||||||
|
|
||||||
# Install Graphical Interface
|
|
||||||
- cosmic
|
|
||||||
|
|
||||||
# Install Applications
|
# Install Applications
|
||||||
- firefox
|
- firefox
|
||||||
- chromium
|
- chromium
|
||||||
- terminator
|
- terminator
|
||||||
|
|
||||||
|
# Install Graphical Interface
|
||||||
|
- cosmic
|
||||||
|
|
||||||
runcmd:
|
runcmd:
|
||||||
# Regenerate grub.cfg
|
# Regenerate grub.cfg
|
||||||
- grub-mkconfig -o /boot/grub/grub.cfg
|
- grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
@ -53,20 +51,6 @@ runcmd:
|
||||||
- systemctl enable systemd-timesyncd.service
|
- systemctl enable systemd-timesyncd.service
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Enable AppArmor in kernel parameters
|
- *grub-enable-apparmor # Enable AppArmor in kernel parameters
|
||||||
- path: /etc/default/grub
|
- *setup-bash-aliases # Set some bash aliases
|
||||||
append: true
|
- *shared-directory # Setup shared directory
|
||||||
content: |
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT lsm=landlock,lockdown,yama,integrity,apparmor,bpf apparmor.debug=1"
|
|
||||||
|
|
||||||
# Set some bash aliases
|
|
||||||
- path: /etc/skel/.bashrc
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
[[ -f ~/.bash_aliases ]] && source ~/.bash_aliases
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ packages:
|
||||||
# Install core packages
|
# Install core packages
|
||||||
- apparmor
|
- apparmor
|
||||||
- base-devel
|
- base-devel
|
||||||
- firewalld
|
|
||||||
- qemu-guest-agent
|
- qemu-guest-agent
|
||||||
- rng-tools
|
- rng-tools
|
||||||
- spice-vdagent
|
- spice-vdagent
|
||||||
|
|
@ -25,17 +24,17 @@ packages:
|
||||||
- cups-pdf
|
- cups-pdf
|
||||||
- system-config-printer
|
- system-config-printer
|
||||||
|
|
||||||
|
# Install Applications
|
||||||
|
- firefox
|
||||||
|
- chromium
|
||||||
|
- terminator
|
||||||
|
|
||||||
# Install Graphical Interface
|
# Install Graphical Interface
|
||||||
- gnome
|
- gnome
|
||||||
- gnome-extra
|
- gnome-extra
|
||||||
- seahorse
|
- seahorse
|
||||||
- alacarte
|
- alacarte
|
||||||
|
|
||||||
# Install Applications
|
|
||||||
- firefox
|
|
||||||
- chromium
|
|
||||||
- terminator
|
|
||||||
|
|
||||||
runcmd:
|
runcmd:
|
||||||
# Regenerate grub.cfg
|
# Regenerate grub.cfg
|
||||||
- grub-mkconfig -o /boot/grub/grub.cfg
|
- grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
@ -55,20 +54,6 @@ runcmd:
|
||||||
- systemctl enable systemd-timesyncd.service
|
- systemctl enable systemd-timesyncd.service
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Enable AppArmor in kernel parameters
|
- *grub-enable-apparmor # Enable AppArmor in kernel parameters
|
||||||
- path: /etc/default/grub
|
- *setup-bash-aliases # Set some bash aliases
|
||||||
append: true
|
- *shared-directory # Setup shared directory
|
||||||
content: |
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT lsm=landlock,lockdown,yama,integrity,apparmor,bpf apparmor.debug=1"
|
|
||||||
|
|
||||||
# Set some bash aliases
|
|
||||||
- path: /etc/skel/.bashrc
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
[[ -f ~/.bash_aliases ]] && source ~/.bash_aliases
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ packages:
|
||||||
# Install core packages
|
# Install core packages
|
||||||
- apparmor
|
- apparmor
|
||||||
- base-devel
|
- base-devel
|
||||||
- firewalld
|
|
||||||
- qemu-guest-agent
|
- qemu-guest-agent
|
||||||
- rng-tools
|
- rng-tools
|
||||||
- spice-vdagent
|
- spice-vdagent
|
||||||
|
|
@ -25,6 +24,11 @@ packages:
|
||||||
- cups-pdf
|
- cups-pdf
|
||||||
- system-config-printer
|
- system-config-printer
|
||||||
|
|
||||||
|
# Install Applications
|
||||||
|
- firefox
|
||||||
|
- chromium
|
||||||
|
- terminator
|
||||||
|
|
||||||
# Install Graphical Interface
|
# Install Graphical Interface
|
||||||
- plasma-meta
|
- plasma-meta
|
||||||
- sddm
|
- sddm
|
||||||
|
|
@ -33,11 +37,6 @@ packages:
|
||||||
- konsole
|
- konsole
|
||||||
- okular
|
- okular
|
||||||
|
|
||||||
# Install Applications
|
|
||||||
- firefox
|
|
||||||
- chromium
|
|
||||||
- terminator
|
|
||||||
|
|
||||||
runcmd:
|
runcmd:
|
||||||
# Regenerate grub.cfg
|
# Regenerate grub.cfg
|
||||||
- grub-mkconfig -o /boot/grub/grub.cfg
|
- grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
@ -57,20 +56,6 @@ runcmd:
|
||||||
- systemctl enable systemd-timesyncd.service
|
- systemctl enable systemd-timesyncd.service
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Enable AppArmor in kernel parameters
|
- *grub-enable-apparmor # Enable AppArmor in kernel parameters
|
||||||
- path: /etc/default/grub
|
- *setup-bash-aliases # Set some bash aliases
|
||||||
append: true
|
- *shared-directory # Setup shared directory
|
||||||
content: |
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT lsm=landlock,lockdown,yama,integrity,apparmor,bpf apparmor.debug=1"
|
|
||||||
|
|
||||||
# Set some bash aliases
|
|
||||||
- path: /etc/skel/.bashrc
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
[[ -f ~/.bash_aliases ]] && source ~/.bash_aliases
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
|
|
@ -1,22 +1,6 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
# Install core packages
|
|
||||||
- apparmor
|
|
||||||
- base-devel
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rng-tools
|
|
||||||
- spice-vdagent
|
|
||||||
|
|
||||||
# Install usefull core packages
|
|
||||||
- bash-completion
|
|
||||||
- git
|
|
||||||
- htop
|
|
||||||
- man
|
|
||||||
- pass
|
|
||||||
- python-notify2
|
|
||||||
- vim
|
|
||||||
- wget
|
|
||||||
|
|
||||||
runcmd:
|
runcmd:
|
||||||
# Regenerate grub.cfg
|
# Regenerate grub.cfg
|
||||||
|
|
@ -34,34 +18,7 @@ runcmd:
|
||||||
- systemctl enable systemd-timesyncd.service
|
- systemctl enable systemd-timesyncd.service
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Enable AppArmor in kernel parameters
|
- *grub-enable-apparmor # Enable AppArmor in kernel parameters
|
||||||
- path: /etc/default/grub
|
- *setup-bash-aliases # Set some bash aliases
|
||||||
append: true
|
- *shared-directory # Setup shared directory
|
||||||
content: |
|
- *systemd-netword # Network configuration for server
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT lsm=landlock,lockdown,yama,integrity,apparmor,bpf apparmor.debug=1"
|
|
||||||
|
|
||||||
# Set some bash aliases
|
|
||||||
- path: /etc/skel/.bashrc
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
[[ -f ~/.bash_aliases ]] && source ~/.bash_aliases
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
- path: /etc/systemd/network/20-wired.network
|
|
||||||
owner: "root:root"
|
|
||||||
permissions: "0644"
|
|
||||||
content: |
|
|
||||||
[Match]
|
|
||||||
Name=en*
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=yes
|
|
||||||
|
|
||||||
[DHCPv4]
|
|
||||||
RouteMetric=10
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ packages:
|
||||||
# Install core packages
|
# Install core packages
|
||||||
- apparmor
|
- apparmor
|
||||||
- base-devel
|
- base-devel
|
||||||
- firewalld
|
|
||||||
- qemu-guest-agent
|
- qemu-guest-agent
|
||||||
- rng-tools
|
- rng-tools
|
||||||
- spice-vdagent
|
- spice-vdagent
|
||||||
|
|
@ -25,17 +24,17 @@ packages:
|
||||||
- cups-pdf
|
- cups-pdf
|
||||||
- system-config-printer
|
- system-config-printer
|
||||||
|
|
||||||
|
# Install Applications
|
||||||
|
- firefox
|
||||||
|
- chromium
|
||||||
|
- terminator
|
||||||
|
|
||||||
# Install Graphical Interface
|
# Install Graphical Interface
|
||||||
- xfce4
|
- xfce4
|
||||||
- xfce4-goodies
|
- xfce4-goodies
|
||||||
- lightdm
|
- lightdm
|
||||||
- lightdm-gtk-greeter
|
- lightdm-gtk-greeter
|
||||||
|
|
||||||
# Install Applications
|
|
||||||
- firefox
|
|
||||||
- chromium
|
|
||||||
- terminator
|
|
||||||
|
|
||||||
runcmd:
|
runcmd:
|
||||||
# Regenerate grub.cfg
|
# Regenerate grub.cfg
|
||||||
- grub-mkconfig -o /boot/grub/grub.cfg
|
- grub-mkconfig -o /boot/grub/grub.cfg
|
||||||
|
|
@ -55,20 +54,6 @@ runcmd:
|
||||||
- systemctl enable systemd-timesyncd.service
|
- systemctl enable systemd-timesyncd.service
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Enable AppArmor in kernel parameters
|
- *grub-enable-apparmor # Enable AppArmor in kernel parameters
|
||||||
- path: /etc/default/grub
|
- *setup-bash-aliases # Set some bash aliases
|
||||||
append: true
|
- *shared-directory # Setup shared directory
|
||||||
content: |
|
|
||||||
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT lsm=landlock,lockdown,yama,integrity,apparmor,bpf"
|
|
||||||
|
|
||||||
# Set some bash aliases
|
|
||||||
- path: /etc/skel/.bashrc
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
[[ -f ~/.bash_aliases ]] && source ~/.bash_aliases
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
47
tests/cloud-init/archlinux.yml
Normal file
47
tests/cloud-init/archlinux.yml
Normal file
|
|
@ -0,0 +1,47 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
# Core packages for Archlinux
|
||||||
|
core-packages: &core-packages
|
||||||
|
# Install core packages
|
||||||
|
- apparmor
|
||||||
|
- base-devel
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rng-tools
|
||||||
|
- spice-vdagent
|
||||||
|
|
||||||
|
# Install usefull core packages
|
||||||
|
- bash-completion
|
||||||
|
- git
|
||||||
|
- htop
|
||||||
|
- man
|
||||||
|
- pass
|
||||||
|
- python-notify2
|
||||||
|
- vim
|
||||||
|
- wget
|
||||||
|
|
||||||
|
# Core desktop packages for Archlinux
|
||||||
|
desktop-packages: &desktop-packages
|
||||||
|
# Install basic services
|
||||||
|
- networkmanager
|
||||||
|
- cups
|
||||||
|
- cups-pdf
|
||||||
|
- system-config-printer
|
||||||
|
|
||||||
|
# Install Applications
|
||||||
|
- firefox
|
||||||
|
- chromium
|
||||||
|
- terminator
|
||||||
|
|
||||||
|
# Enable AppArmor in kernel parameters
|
||||||
|
grub-enable-apparmor: &grub-enable-apparmor
|
||||||
|
path: /etc/default/grub
|
||||||
|
append: true
|
||||||
|
content: |
|
||||||
|
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT lsm=landlock,lockdown,yama,integrity,apparmor,bpf apparmor.debug=1"
|
||||||
|
|
||||||
|
# Set some bash aliases
|
||||||
|
setup-bash-aliases: &setup-bash-aliases
|
||||||
|
path: /etc/skel/.bashrc
|
||||||
|
append: true
|
||||||
|
content: |
|
||||||
|
[[ -f ~/.bash_aliases ]] && source ~/.bash_aliases
|
||||||
|
|
@ -15,3 +15,25 @@ users:
|
||||||
package_update: true
|
package_update: true
|
||||||
package_upgrade: true
|
package_upgrade: true
|
||||||
package_reboot_if_required: false
|
package_reboot_if_required: false
|
||||||
|
|
||||||
|
# Mount shared directory
|
||||||
|
shared-directory: &shared-directory
|
||||||
|
path: /etc/fstab
|
||||||
|
append: true
|
||||||
|
content: |
|
||||||
|
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
||||||
|
|
||||||
|
# Network configuration for server
|
||||||
|
systemd-netword: &systemd-netword
|
||||||
|
path: /etc/systemd/network/20-wired.network
|
||||||
|
owner: "root:root"
|
||||||
|
permissions: "0644"
|
||||||
|
content: |
|
||||||
|
[Match]
|
||||||
|
Name=en*
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
DHCP=yes
|
||||||
|
|
||||||
|
[DHCPv4]
|
||||||
|
RouteMetric=10
|
||||||
|
|
|
||||||
64
tests/cloud-init/debian.yml
Normal file
64
tests/cloud-init/debian.yml
Normal file
|
|
@ -0,0 +1,64 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
# Core packages for Debian
|
||||||
|
core-packages: &core-packages
|
||||||
|
- apparmor-profiles
|
||||||
|
- auditd
|
||||||
|
- build-essential
|
||||||
|
- config-package-dev
|
||||||
|
- debhelper
|
||||||
|
- devscripts
|
||||||
|
- htop
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
|
gnome-packages: &desktop-packages
|
||||||
|
# Core packages for Debian
|
||||||
|
- apparmor-profiles
|
||||||
|
- auditd
|
||||||
|
- build-essential
|
||||||
|
- config-package-dev
|
||||||
|
- debhelper
|
||||||
|
- devscripts
|
||||||
|
- htop
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
|
# Gnome packages for Debian
|
||||||
|
- spice-vdagent
|
||||||
|
- task-gnome-desktop
|
||||||
|
- terminator
|
||||||
|
|
||||||
|
kde-packages: &kubuntu-packages
|
||||||
|
# Core packages for Debian
|
||||||
|
- apparmor-profiles
|
||||||
|
- auditd
|
||||||
|
- build-essential
|
||||||
|
- config-package-dev
|
||||||
|
- debhelper
|
||||||
|
- devscripts
|
||||||
|
- htop
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
|
# KDE packages for Debian
|
||||||
|
- spice-vdagent
|
||||||
|
- task-kde-desktop
|
||||||
|
- terminator
|
||||||
|
|
||||||
|
debian12-runcmd: &debian12-runcmd
|
||||||
|
- apt-get update -y
|
||||||
|
- apt-get install -y -t bookworm-backports golang-go
|
||||||
|
|
||||||
|
debian13-runcmd: &debian13-runcmd
|
||||||
|
- apt-get update -y
|
||||||
|
- apt-get install -y golang-go
|
||||||
|
|
||||||
|
# Add backports repository
|
||||||
|
debian12-backports: &debian12-backports
|
||||||
|
path: /etc/apt/sources.list
|
||||||
|
append: true
|
||||||
|
content: deb http://deb.debian.org/debian bookworm-backports main contrib non-free
|
||||||
|
|
@ -1,45 +1,10 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *gnome-packages
|
||||||
- apparmor-profiles
|
|
||||||
- auditd
|
|
||||||
- build-essential
|
|
||||||
- config-package-dev
|
|
||||||
- debhelper
|
|
||||||
- devscripts
|
|
||||||
- htop
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rsync
|
|
||||||
- spice-vdagent
|
|
||||||
- task-gnome-desktop
|
|
||||||
- vim
|
|
||||||
|
|
||||||
runcmd:
|
runcmd: *debian12-runcmd
|
||||||
- apt-get update -y
|
|
||||||
- apt-get install -y -t bookworm-backports golang-go
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Add backports repository
|
- *debian12-backports # Add backports repository
|
||||||
- path: /etc/apt/sources.list
|
- *shared-directory # Setup shared directory
|
||||||
append: true
|
- *systemd-netword # Network configuration for server
|
||||||
content: deb http://deb.debian.org/debian bookworm-backports main contrib non-free
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
- path: /etc/systemd/network/20-wired.network
|
|
||||||
owner: "root:root"
|
|
||||||
permissions: "0644"
|
|
||||||
content: |
|
|
||||||
[Match]
|
|
||||||
Name=en*
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=yes
|
|
||||||
|
|
||||||
[DHCPv4]
|
|
||||||
RouteMetric=10
|
|
||||||
|
|
|
||||||
|
|
@ -1,43 +1,10 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
- apparmor-profiles
|
|
||||||
- auditd
|
|
||||||
- build-essential
|
|
||||||
- config-package-dev
|
|
||||||
- debhelper
|
|
||||||
- devscripts
|
|
||||||
- htop
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rsync
|
|
||||||
- vim
|
|
||||||
|
|
||||||
runcmd:
|
runcmd: *debian12-runcmd
|
||||||
- apt-get update -y
|
|
||||||
- apt-get install -y -t bookworm-backports golang-go
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Add backports repository
|
- *debian12-backports # Add backports repository
|
||||||
- path: /etc/apt/sources.list
|
- *shared-directory # Setup shared directory
|
||||||
append: true
|
- *systemd-netword # Network configuration for server
|
||||||
content: deb http://deb.debian.org/debian bookworm-backports main contrib non-free
|
|
||||||
|
|
||||||
# Setup shared directory
|
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
- path: /etc/systemd/network/20-wired.network
|
|
||||||
owner: "root:root"
|
|
||||||
permissions: "0644"
|
|
||||||
content: |
|
|
||||||
[Match]
|
|
||||||
Name=en*
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=yes
|
|
||||||
|
|
||||||
[DHCPv4]
|
|
||||||
RouteMetric=10
|
|
||||||
|
|
|
||||||
|
|
@ -1,36 +1,9 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
- apparmor-profiles
|
|
||||||
- auditd
|
runcmd: *debian13-runcmd
|
||||||
- build-essential
|
|
||||||
- config-package-dev
|
|
||||||
- debhelper
|
|
||||||
- devscripts
|
|
||||||
- golang-go
|
|
||||||
- htop
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rsync
|
|
||||||
- vim
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
|
- *shared-directory # Setup shared directory
|
||||||
# Setup shared directory
|
- *systemd-netword # Network configuration for server
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
- path: /etc/systemd/network/20-wired.network
|
|
||||||
owner: "root:root"
|
|
||||||
permissions: "0644"
|
|
||||||
content: |
|
|
||||||
[Match]
|
|
||||||
Name=en*
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=yes
|
|
||||||
|
|
||||||
[DHCPv4]
|
|
||||||
RouteMetric=10
|
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,6 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
- apparmor-profiles
|
|
||||||
- bash-completion
|
|
||||||
- distribution-release
|
|
||||||
- git
|
|
||||||
- go
|
|
||||||
- golang-packaging
|
|
||||||
- htop
|
|
||||||
- make
|
|
||||||
- rpmbuild
|
|
||||||
- rsync
|
|
||||||
- vim
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Setup shared directory
|
- *shared-directory # Setup shared directory
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,6 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
- apparmor-profiles
|
|
||||||
- bash-completion
|
|
||||||
- distribution-release
|
|
||||||
- git
|
|
||||||
- go
|
|
||||||
- golang-packaging
|
|
||||||
- htop
|
|
||||||
- make
|
|
||||||
- rpmbuild
|
|
||||||
- rsync
|
|
||||||
- vim
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Setup shared directory
|
- *shared-directory # Setup shared directory
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
|
|
@ -1,36 +1,7 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
- apparmor-profiles
|
|
||||||
- bash-completion
|
|
||||||
- distribution-release
|
|
||||||
- git
|
|
||||||
- go
|
|
||||||
- golang-packaging
|
|
||||||
- htop
|
|
||||||
- make
|
|
||||||
- rpmbuild
|
|
||||||
- rsync
|
|
||||||
- vim
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
|
- *shared-directory # Setup shared directory
|
||||||
# Setup shared directory
|
- *systemd-netword # Network configuration for server
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
- path: /etc/systemd/network/20-wired.network
|
|
||||||
owner: "root:root"
|
|
||||||
permissions: "0644"
|
|
||||||
content: |
|
|
||||||
[Match]
|
|
||||||
Name=en*
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=yes
|
|
||||||
|
|
||||||
[DHCPv4]
|
|
||||||
RouteMetric=10
|
|
||||||
|
|
|
||||||
16
tests/cloud-init/opensuse.yml
Normal file
16
tests/cloud-init/opensuse.yml
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
# Core packages for OpenSUSE
|
||||||
|
core-packages: &core-packages
|
||||||
|
- apparmor-profiles
|
||||||
|
- bash-completion
|
||||||
|
- distribution-release
|
||||||
|
- git
|
||||||
|
- go
|
||||||
|
- golang-packaging
|
||||||
|
- htop
|
||||||
|
- make
|
||||||
|
- rpmbuild
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
76
tests/cloud-init/ubuntu.yml
Normal file
76
tests/cloud-init/ubuntu.yml
Normal file
|
|
@ -0,0 +1,76 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
# Core packages for Ubuntu
|
||||||
|
core-packages: &core-packages
|
||||||
|
- apparmor-profiles
|
||||||
|
- auditd
|
||||||
|
- build-essential
|
||||||
|
- config-package-dev
|
||||||
|
- debhelper
|
||||||
|
- devscripts
|
||||||
|
- golang-go
|
||||||
|
- htop
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
|
desktop-packages: &desktop-packages
|
||||||
|
# Core packages for Ubuntu
|
||||||
|
- apparmor-profiles
|
||||||
|
- auditd
|
||||||
|
- build-essential
|
||||||
|
- config-package-dev
|
||||||
|
- debhelper
|
||||||
|
- devscripts
|
||||||
|
- golang-go
|
||||||
|
- htop
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
|
# Desktop packages for Ubuntu
|
||||||
|
- spice-vdagent
|
||||||
|
- terminator
|
||||||
|
- ubuntu-desktop
|
||||||
|
|
||||||
|
kubuntu-packages: &kubuntu-packages
|
||||||
|
# Core packages for Ubuntu
|
||||||
|
- apparmor-profiles
|
||||||
|
- auditd
|
||||||
|
- build-essential
|
||||||
|
- config-package-dev
|
||||||
|
- debhelper
|
||||||
|
- devscripts
|
||||||
|
- golang-go
|
||||||
|
- htop
|
||||||
|
- qemu-guest-agent
|
||||||
|
- rsync
|
||||||
|
- vim
|
||||||
|
|
||||||
|
# Desktop packages for Ubuntu
|
||||||
|
- spice-vdagent
|
||||||
|
- terminator
|
||||||
|
- kubuntu-desktop
|
||||||
|
|
||||||
|
desktop-runcmd: &desktop-runcmd
|
||||||
|
# Add missing snap packages
|
||||||
|
- snap install snap-store
|
||||||
|
- snap install snapd-desktop-integration
|
||||||
|
- snap install --edge desktop-security-center
|
||||||
|
|
||||||
|
# Remove default filesystem and related tools not used with the suggested
|
||||||
|
# storage layout. These may yet be required if different partitioning schemes
|
||||||
|
# are used.
|
||||||
|
- apt-get -y purge btrfs-progs xfsprogs
|
||||||
|
|
||||||
|
# Remove other packages present by default in Ubuntu Server but not
|
||||||
|
# normally present in Ubuntu Desktop.
|
||||||
|
- >-
|
||||||
|
apt-get -y purge
|
||||||
|
byobu dmeventd finalrd gawk kpartx landscape-common lxd-agent-loader
|
||||||
|
mdadm motd-news-config ncurses-term open-iscsi open-vm-tools
|
||||||
|
screen sg3-utils sosreport ssh-import-id sssd tmux
|
||||||
|
|
||||||
|
# Finally, remove things only installed as dependencies of other things
|
||||||
|
# we have already removed.
|
||||||
|
- apt-get -y autoremove
|
||||||
|
|
@ -1,47 +1,8 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
# Based on https://github.com/canonical/autoinstall-desktop
|
packages: *desktop-packages
|
||||||
|
|
||||||
packages:
|
runcmd: *desktop-runcmd
|
||||||
- apparmor-profiles
|
|
||||||
- build-essential
|
|
||||||
- config-package-dev
|
|
||||||
- debhelper
|
|
||||||
- devscripts
|
|
||||||
- golang-go
|
|
||||||
- linux-generic-hwe-24.04
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rsync
|
|
||||||
- spice-vdagent
|
|
||||||
- terminator
|
|
||||||
- ubuntu-desktop
|
|
||||||
- vim
|
|
||||||
|
|
||||||
runcmd:
|
|
||||||
# Add missing snap packages
|
|
||||||
- snap install snap-store
|
|
||||||
- snap install snapd-desktop-integration
|
|
||||||
|
|
||||||
# Remove default filesystem and related tools not used with the suggested
|
|
||||||
# storage layout. These may yet be required if different partitioning schemes
|
|
||||||
# are used.
|
|
||||||
- apt-get -y purge btrfs-progs xfsprogs
|
|
||||||
|
|
||||||
# Remove other packages present by default in Ubuntu Server but not
|
|
||||||
# normally present in Ubuntu Desktop.
|
|
||||||
- >-
|
|
||||||
apt-get -y purge
|
|
||||||
byobu dmeventd finalrd gawk kpartx landscape-common lxd-agent-loader
|
|
||||||
mdadm motd-news-config ncurses-term open-iscsi open-vm-tools
|
|
||||||
screen sg3-utils sosreport ssh-import-id sssd tmux
|
|
||||||
|
|
||||||
# Finally, remove things only installed as dependencies of other things
|
|
||||||
# we have already removed.
|
|
||||||
- apt-get -y autoremove
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Setup shared directory
|
- *shared-directory # Setup shared directory
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
8
tests/cloud-init/ubuntu24-kubuntu.user-data.yml
Normal file
8
tests/cloud-init/ubuntu24-kubuntu.user-data.yml
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
packages: *kubuntu-packages
|
||||||
|
|
||||||
|
runcmd: *desktop-runcmd
|
||||||
|
|
||||||
|
write_files:
|
||||||
|
- *shared-directory # Setup shared directory
|
||||||
|
|
@ -1,35 +1,7 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
packages:
|
packages: *core-packages
|
||||||
- apparmor-profiles
|
|
||||||
- auditd
|
|
||||||
- build-essential
|
|
||||||
- config-package-dev
|
|
||||||
- debhelper
|
|
||||||
- devscripts
|
|
||||||
- golang-go
|
|
||||||
- htop
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rsync
|
|
||||||
- vim
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Setup shared directory
|
- *shared-directory # Setup shared directory
|
||||||
- path: /etc/fstab
|
- *systemd-netword # Network configuration for server
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
||||||
# Network configuration
|
|
||||||
- path: /etc/systemd/network/20-wired.network
|
|
||||||
owner: "root:root"
|
|
||||||
permissions: "0644"
|
|
||||||
content: |
|
|
||||||
[Match]
|
|
||||||
Name=en*
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=yes
|
|
||||||
|
|
||||||
[DHCPv4]
|
|
||||||
RouteMetric=10
|
|
||||||
|
|
|
||||||
|
|
@ -1,47 +1,8 @@
|
||||||
#cloud-config
|
#cloud-config
|
||||||
|
|
||||||
# Based on https://github.com/canonical/autoinstall-desktop
|
packages: *desktop-packages
|
||||||
|
|
||||||
packages:
|
runcmd: *desktop-runcmd
|
||||||
- apparmor-profiles
|
|
||||||
- build-essential
|
|
||||||
- config-package-dev
|
|
||||||
- debhelper
|
|
||||||
- devscripts
|
|
||||||
- golang-go
|
|
||||||
- linux-generic-hwe-24.04
|
|
||||||
- qemu-guest-agent
|
|
||||||
- rsync
|
|
||||||
- spice-vdagent
|
|
||||||
- terminator
|
|
||||||
- ubuntu-desktop
|
|
||||||
- vim
|
|
||||||
|
|
||||||
runcmd:
|
|
||||||
- snap install snap-store
|
|
||||||
- snap install snapd-desktop-integration
|
|
||||||
- snap install --edge desktop-security-center
|
|
||||||
|
|
||||||
# Remove default filesystem and related tools not used with the suggested
|
|
||||||
# storage layout. These may yet be required if different partitioning schemes
|
|
||||||
# are used.
|
|
||||||
- apt-get -y purge btrfs-progs xfsprogs
|
|
||||||
|
|
||||||
# Remove other packages present by default in Ubuntu Server but not
|
|
||||||
# normally present in Ubuntu Desktop.
|
|
||||||
- >-
|
|
||||||
apt-get -y purge
|
|
||||||
byobu dmeventd finalrd gawk kpartx landscape-common lxd-agent-loader
|
|
||||||
mdadm motd-news-config ncurses-term open-iscsi open-vm-tools
|
|
||||||
screen sg3-utils sosreport ssh-import-id sssd tmux
|
|
||||||
|
|
||||||
# Finally, remove things only installed as dependencies of other things
|
|
||||||
# we have already removed.
|
|
||||||
- apt-get -y autoremove
|
|
||||||
|
|
||||||
write_files:
|
write_files:
|
||||||
# Setup shared directory
|
- *shared-directory # Setup shared directory
|
||||||
- path: /etc/fstab
|
|
||||||
append: true
|
|
||||||
content: |
|
|
||||||
0a31bc478ef8e2461a4b1cc10a24cc4 /home/user/Projects/apparmor.d virtiofs defaults 0 1
|
|
||||||
|
|
|
||||||
7
tests/cloud-init/ubuntu25-server.user-data.yml
Normal file
7
tests/cloud-init/ubuntu25-server.user-data.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
packages: *core-packages
|
||||||
|
|
||||||
|
write_files:
|
||||||
|
- *shared-directory # Setup shared directory
|
||||||
|
- *systemd-netword # Network configuration for server
|
||||||
|
|
@ -32,7 +32,7 @@ source "qemu" "default" {
|
||||||
cd_label = "cidata"
|
cd_label = "cidata"
|
||||||
cd_content = {
|
cd_content = {
|
||||||
"meta-data" = ""
|
"meta-data" = ""
|
||||||
"user-data" = format("%s\n%s",
|
"user-data" = format("%s\n%s\n%s",
|
||||||
templatefile("${path.cwd}/tests/cloud-init/common.yml",
|
templatefile("${path.cwd}/tests/cloud-init/common.yml",
|
||||||
{
|
{
|
||||||
username = "${var.username}"
|
username = "${var.username}"
|
||||||
|
|
@ -41,6 +41,7 @@ source "qemu" "default" {
|
||||||
hostname = "${local.name}"
|
hostname = "${local.name}"
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
|
file("${path.cwd}/tests/cloud-init/${regex_replace(var.dist, "[0-9]*$", "")}.yml"),
|
||||||
file("${path.cwd}/tests/cloud-init/${var.dist}-${var.flavor}.user-data.yml")
|
file("${path.cwd}/tests/cloud-init/${var.dist}-${var.flavor}.user-data.yml")
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
@ -70,10 +71,10 @@ build {
|
||||||
"while [ ! -f /var/lib/cloud/instance/boot-finished ]; do echo 'Waiting for Cloud-Init...'; sleep 20; done",
|
"while [ ! -f /var/lib/cloud/instance/boot-finished ]; do echo 'Waiting for Cloud-Init...'; sleep 20; done",
|
||||||
|
|
||||||
# Ensure cloud-init is successful
|
# Ensure cloud-init is successful
|
||||||
"cloud-init status",
|
# "cloud-init status",
|
||||||
|
|
||||||
# Remove logs and artifacts so cloud-init can re-run
|
# Remove logs and artifacts so cloud-init can re-run
|
||||||
"cloud-init clean",
|
# "cloud-init clean",
|
||||||
|
|
||||||
# Install local files and config
|
# Install local files and config
|
||||||
"bash /tmp/init.sh",
|
"bash /tmp/init.sh",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue