40 lines
1.1 KiB
Bash
Executable File
40 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Using the host ostree, test HTTP pulls
|
|
|
|
set -xeuo pipefail
|
|
|
|
dn=$(dirname $0)
|
|
. ${dn}/libinsttest.sh
|
|
|
|
prepare_tmpdir /var/tmp
|
|
trap _tmpdir_cleanup EXIT
|
|
|
|
# Take the host's ostree, and make it archive
|
|
mkdir repo
|
|
ostree --repo=repo init --mode=archive
|
|
echo -e '[archive]\nzlib-level=1\n' >> repo/config
|
|
host_nonremoteref=$(echo ${host_refspec} | sed 's,[^:]*:,,')
|
|
ostree --repo=repo pull-local /ostree/repo ${host_commit}
|
|
ostree --repo=repo refs ${host_commit} --create=${host_nonremoteref}
|
|
|
|
run_tmp_webserver $(pwd)/repo
|
|
# Now test pulling via HTTP (no deltas) to a new bare-user repo
|
|
ostree --repo=bare-repo init --mode=bare-user
|
|
ostree --repo=bare-repo remote add origin --set=gpg-verify=false $(cat ${test_tmpdir}/httpd-address)
|
|
ostree --repo=bare-repo pull --disable-static-deltas origin ${host_nonremoteref}
|
|
|
|
rm bare-repo repo -rf
|
|
|
|
# Try copying the host's repo across a mountpoint for direct
|
|
# imports.
|
|
cd ${test_tmpdir}
|
|
mkdir tmpfs mnt
|
|
mount --bind tmpfs mnt
|
|
cd mnt
|
|
ostree --repo=repo init --mode=bare
|
|
ostree --repo=repo pull-local /ostree/repo ${host_commit}
|
|
ostree --repo=repo fsck
|
|
cd ..
|
|
umount mnt
|