github.com/kaisenlinux/docker.io@v0.0.0-20230510090727-ea55db55fac7/debian/tests/basic-smoke (about)

     1  #!/bin/bash
     2  
     3  set -eux
     4  set -o pipefail
     5  
     6  DEBOOTSTRAP_SUITE=bullseye
     7  
     8  
     9  ## exit helpers
    10  
    11  exit_traps=( 'true' )
    12  
    13  defer() {
    14  	exit_traps=( "$@" "${exit_traps[@]}" )
    15  }
    16  
    17  do_exit() {
    18  	for exit_trap in "${exit_traps[@]}"; do
    19  		eval "$exit_trap" || true
    20  	done
    21  }
    22  
    23  trap 'do_exit' EXIT
    24  
    25  
    26  ## main
    27  
    28  systemctl start docker
    29  defer 'systemctl stop docker'
    30  defer 'journalctl -u docker | tail -n 100'
    31  
    32  docker version
    33  
    34  tmpdir="$(mktemp -d)"
    35  defer "rm -rf '$tmpdir'"
    36  
    37  debootstrap \
    38  	--variant=minbase \
    39  	$DEBOOTSTRAP_SUITE \
    40  	"$tmpdir" \
    41  	http://deb.debian.org/debian
    42  
    43  tar -cC "$tmpdir" . | docker import - debian
    44  defer 'docker rmi debian'
    45  
    46  docker run --name test debian true
    47  defer 'docker rm -f test'