tests(packer): update & cleanup tests images.

This commit is contained in:
Alexandre Pujol 2024-10-06 22:01:39 +01:00
parent a5cafe26ea
commit 03b777340d
No known key found for this signature in database
GPG key ID: C5469996F0DF68EC
12 changed files with 202 additions and 292 deletions

View file

@ -0,0 +1,92 @@
#cloud-config
hostname: ${hostname}
locale: en_IE
keyboard:
layout: ie
ssh_pwauth: true
users:
- name: ${username}
plain_text_passwd: ${password}
shell: /bin/bash
ssh_authorized_keys:
- ${ssh_key}
lock_passwd: false
sudo: ALL=(ALL) NOPASSWD:ALL
package_update: true
package_upgrade: true
package_reboot_if_required: false
packages:
# Install core packages
- apparmor
- base-devel
- firewalld
- qemu-guest-agent
- rng-tools
- spice-vdagent
# Install usefull core packages
- bash-completion
- git
- htop
- man
- pass
- python-notify2
- vim
- wget
# Install basic services
- networkmanager
- cups
- cups-pdf
- system-config-printer
# Install Graphical Interface
- xfce4
- xfce4-goodies
- lightdm
- lightdm-gtk-greeter
# Install Applications
- firefox
- chromium
- terminator
runcmd:
# Regenerate grub.cfg
- grub-mkconfig -o /boot/grub/grub.cfg
# Remove swapfile
- swapoff -a
- rm -rf /swap/
- sed -e "/swap/d" -i /etc/fstab
# Enable core services
- systemctl enable apparmor
- systemctl enable auditd
- systemctl enable lightdm.service
- systemctl enable NetworkManager
- systemctl enable rngd
- systemctl enable avahi-daemon
- systemctl enable systemd-timesyncd.service
write_files:
# Enable AppArmor in kernel parameters
- path: /etc/default/grub
append: true
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

View file

@ -0,0 +1,43 @@
#cloud-config
hostname: ${hostname}
locale: en_IE
keyboard:
layout: ie
ssh_pwauth: true
users:
- name: ${username}
plain_text_passwd: ${password}
shell: /bin/bash
ssh_authorized_keys:
- ${ssh_key}
lock_passwd: false
sudo: ALL=(ALL) NOPASSWD:ALL
package_update: true
package_upgrade: true
package_reboot_if_required: false
packages:
- apparmor-profiles
- bash-completion
- distribution-release
- git
- golang-packaging
- htop
- make
- rpmbuild
- vim
write_files:
# Set some bash aliases
- path: /home/${username}/.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

View file

@ -2,6 +2,8 @@
# Based on https://github.com/canonical/autoinstall-desktop
# https://github.com/canonical/ubuntu-desktop-provision/blob/main/README.md
hostname: ${hostname}
locale: en_IE
keyboard:
@ -22,7 +24,7 @@ package_upgrade: true
package_reboot_if_required: false
packages:
- ubuntu-desktop
- linux-generic-hwe-22.04
- linux-generic-hwe-24.04
- qemu-guest-agent
- spice-vdagent
- terminator
@ -49,14 +51,14 @@ runcmd:
# Remove other packages present by default in Ubuntu Server but not
# normally present in Ubuntu Desktop.
- >-
apt-get -y purge
ubuntu-server ubuntu-server-minimal netplan.io cloud-init
binutils byobu curl dmeventd finalrd gawk
kpartx mdadm ncurses-term needrestart open-iscsi
sg3-utils ssh-import-id sssd thin-provisioning-tools tmux
sosreport screen open-vm-tools motd-news-config lxd-agent-loader
landscape-common fonts-ubuntu-console ethtool
# - >-
# apt-get -y purge
# ubuntu-server ubuntu-server-minimal netplan.io cloud-init
# binutils byobu curl dmeventd finalrd gawk
# kpartx mdadm ncurses-term needrestart open-iscsi
# sg3-utils ssh-import-id sssd thin-provisioning-tools tmux
# sosreport screen open-vm-tools motd-news-config lxd-agent-loader
# landscape-common fonts-ubuntu-console ethtool
# Finally, remove things only installed as dependencies of other things
# we have already removed.