forked from lxcafe/lxcafe
Post-Installation Script Testing
This directory contains everything needed to test the post-installation script in a safe, isolated container environment.
Contents
Dockerfile- Container image definition for testing01_create_image.sh- script for creating container image locally02_start_container_with_image.sh- script for starting container from created image
Purpose
Provides a reproducible testing environment that allows:
- Running the post-installation script without affecting the host system
- Real
aptinstallations (isolated in container) - Testing script logic, prompts, and error handling
- Validating syntax and tracing execution
Features
The Dockerfile includes:
- Ubuntu 22.04 base image
- Passwordless sudo for real apt installations
- Useful utilities:
bash,wget,tar,curl,gnupg,ca-certificates,file,procps,sudo
Usage
Build the test image
Run the prepared shell script to build the image
cd post_installation_script_test
sh 01_create_image.sh
Start a container for testing
Run the prepared shell script start a new container for testing based in the image and remove container after it is stopped. After container is started an interactive session is started into the container.
cd post_installation_script_test
sh 02_start_container_with_image.sh
Test the script file in the running container
After container is started an interactive session was started in the container and the script can be started for testing
ls -al
sh <scriptName>.sh
Security Notes
- The script is mounted read-only (
:roflag) to prevent container from modifying host files - All apt installations are real but isolated in the container
- Use
--tmpfs /tmp:rwfor any temporary writes inside the container - Container is automatically removed after exit (
--rmflag)