+ #
+ item="{}"
+ end="\\;"
+ A='"s:zzip-zlib-config:zlib:"'
+ B='"s:=/usr/local/:=\\${prefix}/:"'
+ C1='"/^exec_prefix=/d"'
+ C2='"/^datarootdir=/d"'
+ C3='"/^datadir=/d"'
+ C4='"/^sysconfdir=/d"'
+ C5='"/^bindir=/d"'
+ G='"/ generated by configure /d"'
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.pc -exec sed -i -e {A} -e {B} -e {C1} -e {C2} -e {C3} -e {C4} -e {C5} -e {G} {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name zzip-zlib-config.pc -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.la -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /new/local -name *-0.so -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -uw /usr/local/include/zzip/_config.h /new/local/include/zzip/_config.h"
+ sx____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -urw --no-dereference /usr/local /new/local --exclude _config.h"
+ sx____(cmd.format(**locals()))
+ out = output(cmd.format(**locals()))
+ if "---" in out or "Only" in out:
+ logg.warning("out>>\n%s", out)
+ self.assertFalse(greps(out, "---"))
+ self.assertFalse(greps(out, "Only"))
+ #
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ self.rm_testdir()
+ def test_912_centos8_am_cm_dockerfile(self):
+ if not os.path.exists(DOCKER_SOCKET): self.skipTest("docker-based test")
+ testname1=self.testname() + "_am"
+ testname2=self.testname() + "_cm"
+ testdir = self.testdir()
+ dockerfile1="testbuilds/centos8-am-build.dockerfile"
+ dockerfile2="testbuilds/centos8-cm-build.dockerfile"
+ addhosts = self.local_addhosts(dockerfile1)
+ savename1 = docname(dockerfile1)
+ savename2 = docname(dockerfile2)
+ saveto = SAVETO
+ images = IMAGES
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname1} {addhosts} {saveto}/{savename1} sleep 600"
+ sh____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname2} {addhosts} {saveto}/{savename2} sleep 600"
+ #
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname2} bash -c 'cd /usr/local && tar czvf /local.tgz .'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp {testname2}:/local.tgz tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp tmp.local.tgz {testname1}:/local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "rm tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} mkdir -p /new/local"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && tar xzvf /local.tgz'"
+ sh____(cmd.format(**locals()))
+ #
+ item="{}"
+ end="\\;"
+ A='"s:zzip-zlib-config:zlib:"'
+ B='"s:=/usr/local/:=\\${prefix}/:"'
+ C1='"/^exec_prefix=/d"'
+ C2='"/^datarootdir=/d"'
+ C3='"/^datadir=/d"'
+ C4='"/^sysconfdir=/d"'
+ C5='"/^bindir=/d"'
+ G='"/ generated by configure /d"'
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.pc -exec sed -i -e {A} -e {B} -e {C1} -e {C2} -e {C3} -e {C4} -e {C5} -e {G} {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name zzip-zlib-config.pc -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.la -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /new/local -name *-0.so -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -uw /usr/local/include/zzip/_config.h /new/local/include/zzip/_config.h"
+ sx____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -urw --no-dereference /usr/local /new/local --exclude _config.h"
+ sx____(cmd.format(**locals()))
+ out = output(cmd.format(**locals()))
+ if "---" in out or "Only" in out:
+ logg.warning("out>>\n%s", out)
+ self.assertFalse(greps(out, "---"))
+ self.assertFalse(greps(out, "Only"))
+ #
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ self.rm_testdir()
+ def test_931_centos7_am_cm_sdl2_dockerfile(self):
+ if not os.path.exists(DOCKER_SOCKET): self.skipTest("docker-based test")
+ testname1=self.testname() + "_am"
+ testname2=self.testname() + "_cm"
+ testdir = self.testdir()
+ dockerfile1="testbuilds/centos7-am-sdl2.dockerfile"
+ dockerfile2="testbuilds/centos7-cm-sdl2.dockerfile"
+ addhosts = self.local_addhosts(dockerfile1)
+ savename1 = docname(dockerfile1)
+ savename2 = docname(dockerfile2)
+ saveto = SAVETO
+ images = IMAGES
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname1} {addhosts} {saveto}/{savename1} sleep 600"
+ sh____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname2} {addhosts} {saveto}/{savename2} sleep 600"
+ #
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname2} bash -c 'cd /usr/local && tar czvf /local.tgz .'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp {testname2}:/local.tgz tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp tmp.local.tgz {testname1}:/local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "rm tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} mkdir -p /new/local"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && tar xzvf /local.tgz'"
+ sh____(cmd.format(**locals()))
+ #
+ item="{}"
+ end="\\;"
+ A='"s:zzip-zlib-config:zlib:"'
+ B='"s:=/usr/local/:=\\${prefix}/:"'
+ C1='"/^exec_prefix=/d"'
+ C2='"/^datarootdir=/d"'
+ C3='"/^datadir=/d"'
+ C4='"/^sysconfdir=/d"'
+ C5='"/^bindir=/d"'
+ G='"/ generated by configure /d"'
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.pc -exec sed -i -e {A} -e {B} -e {C1} -e {C2} -e {C3} -e {C4} -e {C5} -e {G} {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name zzip-zlib-config.pc -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.la -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /new/local -name *-0.so -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -uw /usr/local/include/zzip/_config.h /new/local/include/zzip/_config.h"
+ sx____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -urw --no-dereference /usr/local /new/local --exclude _config.h"
+ sx____(cmd.format(**locals()))
+ out = output(cmd.format(**locals()))
+ if "---" in out or "Only" in out:
+ logg.warning("out>>\n%s", out)
+ self.assertFalse(greps(out, "---"))
+ self.assertFalse(greps(out, "Only"))
+ #
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ self.rm_testdir()
+ def test_932_centos7_am_cm_sdl2_dockerfile(self):
+ if not os.path.exists(DOCKER_SOCKET): self.skipTest("docker-based test")
+ testname1=self.testname() + "_am"
+ testname2=self.testname() + "_cm"
+ testdir = self.testdir()
+ dockerfile1="testbuilds/centos8-am-sdl2.dockerfile"
+ dockerfile2="testbuilds/centos8-cm-sdl2.dockerfile"
+ addhosts = self.local_addhosts(dockerfile1)
+ savename1 = docname(dockerfile1)
+ savename2 = docname(dockerfile2)
+ saveto = SAVETO
+ images = IMAGES
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname1} {addhosts} {saveto}/{savename1} sleep 600"
+ sh____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname2} {addhosts} {saveto}/{savename2} sleep 600"
+ #
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname2} bash -c 'cd /usr/local && tar czvf /local.tgz .'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp {testname2}:/local.tgz tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp tmp.local.tgz {testname1}:/local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "rm tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} mkdir -p /new/local"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && tar xzvf /local.tgz'"
+ sh____(cmd.format(**locals()))
+ #
+ item="{}"
+ end="\\;"
+ A='"s:zzip-zlib-config:zlib:"'
+ B='"s:=/usr/local/:=\\${prefix}/:"'
+ C1='"/^exec_prefix=/d"'
+ C2='"/^datarootdir=/d"'
+ C3='"/^datadir=/d"'
+ C4='"/^sysconfdir=/d"'
+ C5='"/^bindir=/d"'
+ G='"/ generated by configure /d"'
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.pc -exec sed -i -e {A} -e {B} -e {C1} -e {C2} -e {C3} -e {C4} -e {C5} -e {G} {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name zzip-zlib-config.pc -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /usr/local -name *.la -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'find /new/local -name *-0.so -exec rm -v {item} {end}'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -uw /usr/local/include/zzip/_config.h /new/local/include/zzip/_config.h"
+ sx____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} diff -urw --no-dereference /usr/local /new/local --exclude _config.h"
+ sx____(cmd.format(**locals()))
+ out = output(cmd.format(**locals()))
+ if "---" in out or "Only" in out:
+ logg.warning("out>>\n%s", out)
+ self.assertFalse(greps(out, "---"))
+ self.assertFalse(greps(out, "Only"))
+ #
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ self.rm_testdir()
+ def test_941_centos7_cm_sdl2_or_destdir_dockerfile(self):
+ if not os.path.exists(DOCKER_SOCKET): self.skipTest("docker-based test")
+ testname1=self.testname() + "_usr"
+ testname2=self.testname() + "_new"
+ testdir = self.testdir()
+ dockerfile1="testbuilds/centos7-cm-sdl2.dockerfile"
+ dockerfile2="testbuilds/centos7-cm-destdir-sdl2.dockerfile"
+ addhosts = self.local_addhosts(dockerfile1)
+ savename1 = docname(dockerfile1)
+ savename2 = docname(dockerfile2)
+ saveto = SAVETO
+ images = IMAGES
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname1} {addhosts} {saveto}/{savename1} sleep 600"
+ sh____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname2} {addhosts} {saveto}/{savename2} sleep 600"
+ #
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname2} bash -c 'cd /new/usr/local && tar czvf /local.tgz .'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp {testname2}:/local.tgz tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp tmp.local.tgz {testname1}:/local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "rm tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} mkdir -p /new/local"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && tar xzvf /local.tgz'"
+ sh____(cmd.format(**locals()))
+ #
+ DIRS="etc lib libexec sbin games src share/info share/applications share/man/mann"
+ for i in xrange(1,10):
+ DIRS+=" share/man/man%i share/man/man%ix" % (i,i)
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && (for u in {DIRS}; do mkdir -pv $u; done)'"
+ sh____(cmd.format(**locals()))
+ item="{}"
+ end="\\;"
+ cmd = "docker exec {testname1} diff -urw --no-dereference /usr/local /new/local"
+ sx____(cmd.format(**locals()))
+ out = output(cmd.format(**locals()))
+ if "---" in out or "Only" in out:
+ logg.warning("out>>\n%s", out)
+ self.assertFalse(greps(out, "---"))
+ self.assertFalse(greps(out, "Only"))
+ #
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ self.rm_testdir()
+ def test_942_centos7_cm_sdl2_or_destdir_dockerfile(self):
+ if not os.path.exists(DOCKER_SOCKET): self.skipTest("docker-based test")
+ testname1=self.testname() + "_usr"
+ testname2=self.testname() + "_new"
+ testdir = self.testdir()
+ dockerfile1="testbuilds/centos8-cm-sdl2.dockerfile"
+ dockerfile2="testbuilds/centos8-cm-destdir-sdl2.dockerfile"
+ addhosts = self.local_addhosts(dockerfile1)
+ savename1 = docname(dockerfile1)
+ savename2 = docname(dockerfile2)
+ saveto = SAVETO
+ images = IMAGES
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname1} {addhosts} {saveto}/{savename1} sleep 600"
+ sh____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname2} {addhosts} {saveto}/{savename2} sleep 600"
+ #
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname2} bash -c 'cd /new/usr/local && tar czvf /local.tgz .'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp {testname2}:/local.tgz tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp tmp.local.tgz {testname1}:/local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "rm tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} mkdir -p /new/local"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && tar xzvf /local.tgz'"
+ sh____(cmd.format(**locals()))
+ #
+ DIRS="etc lib libexec sbin games src share/info share/applications share/man/mann"
+ for i in xrange(1,10):
+ DIRS+=" share/man/man%i share/man/man%ix" % (i,i)
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && (for u in {DIRS}; do mkdir -pv $u; done)'"
+ sh____(cmd.format(**locals()))
+ item="{}"
+ end="\\;"
+ cmd = "docker exec {testname1} diff -urw --no-dereference /usr/local /new/local"
+ sx____(cmd.format(**locals()))
+ out = output(cmd.format(**locals()))
+ if "---" in out or "Only" in out:
+ logg.warning("out>>\n%s", out)
+ self.assertFalse(greps(out, "---"))
+ self.assertFalse(greps(out, "Only"))
+ #
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ self.rm_testdir()
+ def test_963_opensuse_cm_or_nj_sdl2_dockerfile(self):
+ if not os.path.exists(DOCKER_SOCKET): self.skipTest("docker-based test")
+ testname1=self.testname() + "_cm"
+ testname2=self.testname() + "_nj"
+ testdir = self.testdir()
+ dockerfile1="testbuilds/opensuse15-sdl2.dockerfile"
+ dockerfile2="testbuilds/opensuse15-ninja-sdl2.dockerfile"
+ addhosts = self.local_addhosts(dockerfile1)
+ savename1 = docname(dockerfile1)
+ savename2 = docname(dockerfile2)
+ saveto = SAVETO
+ images = IMAGES
+ cmd = "docker rm --force {testname1}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker rm --force {testname2}"
+ sx____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname1} {addhosts} {saveto}/{savename1} sleep 600"
+ sh____(cmd.format(**locals()))
+ cmd = "docker run -d --name {testname2} {addhosts} {saveto}/{savename2} sleep 600"
+ #
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname2} bash -c 'cd /usr/local && tar czvf /local.tgz .'"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp {testname2}:/local.tgz tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker cp tmp.local.tgz {testname1}:/local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "rm tmp.local.tgz"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} mkdir -p /new/local"
+ sh____(cmd.format(**locals()))
+ cmd = "docker exec {testname1} bash -c 'cd /new/local && tar xzvf /local.tgz'"
+ sh____(cmd.format(**locals()))
+ #
+ item="{}"
+ end="\\;"