eb54553
#!/bin/bash -e
eb54553
eb54553
# Log program and kernel versions
eb54553
echo "Important package versions:"
eb54553
(
eb54553
    uname -r
eb54553
    rpm -qa | egrep 'buildah|podman|conmon|crun|runc|iptable|slirp|systemd' | sort
eb54553
) | sed -e 's/^/  /'
eb54553
eb54553
# Log environment; or at least the useful bits
eb54553
echo "Environment:"
eb54553
env | grep -v LS_COLORS= | sort | sed -e 's/^/  /'
eb54553
eb54553
export BUILDAH_BINARY=/usr/bin/buildah
8a2d099
export IMGTYPE_BINARY=/usr/bin/buildah-imgtype
a2a76a8
export COPY_BINARY=/usr/bin/buildah-copy
eb54553
eb54553
###############################################################################
eb54553
# BEGIN setup/teardown
eb54553
eb54553
# Start a registry
eb54553
pre_bats_setup() {
a6e22a7
    REGISTRY_FQIN=quay.io/libpod/registry:2
d3311a0
eb54553
    AUTHDIR=/tmp/buildah-tests-auth.$$
eb54553
    mkdir -p $AUTHDIR
eb54553
eb54553
    CERT=$AUTHDIR/domain.crt
eb54553
    if [ ! -e $CERT ]; then
eb54553
        openssl req -newkey rsa:4096 -nodes -sha256 \
eb54553
                -keyout $AUTHDIR/domain.key -x509 -days 2 \
eb54553
                -out $AUTHDIR/domain.crt \
53b3ac8
                -subj "/C=US/ST=Foo/L=Bar/O=Red Hat, Inc./CN=registry host certificate" \
53b3ac8
                -addext subjectAltName=DNS:localhost
eb54553
    fi
eb54553
eb54553
    if [ ! -e $AUTHDIR/htpasswd ]; then
4c0f649
        htpasswd -Bbn testuser testpassword > $AUTHDIR/htpasswd
eb54553
    fi
eb54553
eb54553
    podman rm -f registry || true
eb54553
    podman run -d -p 5000:5000 \
eb54553
           --name registry \
eb54553
           -v $AUTHDIR:/auth:Z \
eb54553
           -e "REGISTRY_AUTH=htpasswd" \
eb54553
           -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
eb54553
           -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
eb54553
           -e REGISTRY_HTTP_TLS_CERTIFICATE=/auth/domain.crt \
eb54553
           -e REGISTRY_HTTP_TLS_KEY=/auth/domain.key \
d3311a0
           $REGISTRY_FQIN
eb54553
}
eb54553
eb54553
post_bats_teardown() {
eb54553
    podman rm -f registry
eb54553
}
eb54553
eb54553
# END   setup/teardown
eb54553
###############################################################################
eb54553
# BEGIN actual test
eb54553
eb54553
pre_bats_setup
eb54553
bats /usr/share/buildah/test/system
eb54553
rc=$?
eb54553
post_bats_teardown
eb54553
eb54553
exit $rc