Skip to content

thives/aur-pkgbuild-tester

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Automate PKGBUILD testing with Docker

thives: Renamed some folders to make it friendlier. aur-pkgbuild-tester goes into /usr/bin, and aur-pkgbuild-tester-scripts folder goes into /usr/lib/

The script prepares a Docker container where the process will run into, and accepts two arguments:

  1. Path of the directory containing the PKGBUILD
  2. Path of the shell script you want the container to run to check if the package is correctly installed

The PKGBUILD (and its sources) and the optional tester script are mounted into the container through the Docker's volumes abstraction.

How to run it:

./aur-pkgbuild-tester.sh \
    ./my-package-files \
    ./custom-test-installation.sh

Or

./aur-pkgbuild-tester.sh \
    ./my-package-files

Three stages:

  1. The container with a fresh, minimal ArchLinux installation is created
  2. The PKGBUILD is built inside the container
  3. If specified, the tester script is run inside the container

To spawn a minimal ArchLinux installation the script uses the base/archlinux (which is updated daily) and non-interactively installs the required packages to build the package (sudo, binutils, fakeroot).

Then, inside the container, it creates a non-root user to build the package (running makepkg as root is disallowed); if the build fails the script quits with a non-zero code, meaning that something is wrong in the PKGBUILD or the sources.

After building and installing the package, the script runs a tester script, which by default is /bin/true but that can be overridden by passing the second argument to the script. The purpose of this tester script is making sure that the application installed works correctly.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%