0s autopkgtest [12:15:18]: starting date and time: 2024-06-29 12:15:18+0000 0s autopkgtest [12:15:18]: git checkout: 85adf9a1 setup-testbed: prevent /tmp from getting a tmpfs mount 0s autopkgtest [12:15:18]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.6_p4xeze/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:requests --apt-upgrade python-requests-unixsocket --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=requests/2.32.3+dfsg-1ubuntu1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos02-ppc64el-6.secgroup --name adt-oracular-ppc64el-python-requests-unixsocket-20240629-121518-juju-7f2275-prod-proposed-migration-environment-2-293dcfdf-3273-4d9f-95d2-6e2c4b3aca16 --image adt/ubuntu-oracular-ppc64el-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 143s autopkgtest [12:17:41]: testbed dpkg architecture: ppc64el 143s autopkgtest [12:17:41]: testbed apt version: 2.9.5 143s autopkgtest [12:17:41]: @@@@@@@@@@@@@@@@@@@@ test bed setup 144s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease [110 kB] 144s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main Sources [53.6 kB] 144s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/universe Sources [370 kB] 145s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/restricted Sources [7052 B] 145s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse Sources [2576 B] 145s Get:6 http://ftpmaster.internal/ubuntu oracular-proposed/main ppc64el Packages [94.2 kB] 145s Get:7 http://ftpmaster.internal/ubuntu oracular-proposed/restricted ppc64el Packages [1368 B] 145s Get:8 http://ftpmaster.internal/ubuntu oracular-proposed/universe ppc64el Packages [367 kB] 145s Get:9 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse ppc64el Packages [1768 B] 145s Fetched 1008 kB in 1s (787 kB/s) 145s Reading package lists... 147s Reading package lists... 148s Building dependency tree... 148s Reading state information... 148s Calculating upgrade... 148s The following packages will be upgraded: 148s dracut-install python3-requests 148s 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 148s Need to get 88.8 kB of archives. 148s After this operation, 9216 B of additional disk space will be used. 148s Get:1 http://ftpmaster.internal/ubuntu oracular/main ppc64el dracut-install ppc64el 102-3ubuntu3 [36.2 kB] 148s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main ppc64el python3-requests all 2.32.3+dfsg-1ubuntu1 [52.6 kB] 148s Fetched 88.8 kB in 0s (249 kB/s) 149s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 72690 files and directories currently installed.) 149s Preparing to unpack .../dracut-install_102-3ubuntu3_ppc64el.deb ... 149s Unpacking dracut-install (102-3ubuntu3) over (102-3ubuntu2) ... 149s Preparing to unpack .../python3-requests_2.32.3+dfsg-1ubuntu1_all.deb ... 149s Unpacking python3-requests (2.32.3+dfsg-1ubuntu1) over (2.31.0+dfsg-1ubuntu3) ... 149s Setting up python3-requests (2.32.3+dfsg-1ubuntu1) ... 149s Setting up dracut-install (102-3ubuntu3) ... 149s Reading package lists... 149s Building dependency tree... 149s Reading state information... 149s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 150s Hit:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease 150s Hit:2 http://ftpmaster.internal/ubuntu oracular InRelease 150s Hit:3 http://ftpmaster.internal/ubuntu oracular-updates InRelease 150s Hit:4 http://ftpmaster.internal/ubuntu oracular-security InRelease 151s Reading package lists... 151s Reading package lists... 151s Building dependency tree... 151s Reading state information... 151s Calculating upgrade... 152s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 152s Reading package lists... 152s Building dependency tree... 152s Reading state information... 152s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 155s autopkgtest [12:17:53]: testbed running kernel: Linux 6.8.0-31-generic #31-Ubuntu SMP Sat Apr 20 00:05:55 UTC 2024 155s autopkgtest [12:17:53]: @@@@@@@@@@@@@@@@@@@@ apt-source python-requests-unixsocket 156s Get:1 http://ftpmaster.internal/ubuntu oracular/universe python-requests-unixsocket 0.3.0-4 (dsc) [2359 B] 156s Get:2 http://ftpmaster.internal/ubuntu oracular/universe python-requests-unixsocket 0.3.0-4 (tar) [10.3 kB] 156s Get:3 http://ftpmaster.internal/ubuntu oracular/universe python-requests-unixsocket 0.3.0-4 (diff) [4136 B] 156s gpgv: Signature made Mon Apr 29 13:16:38 2024 UTC 156s gpgv: using RSA key A0B1A9F3508956130E7A425CD416AD15AC6B43FE 156s gpgv: Can't check signature: No public key 156s dpkg-source: warning: cannot verify inline signature for ./python-requests-unixsocket_0.3.0-4.dsc: no acceptable signature found 157s autopkgtest [12:17:55]: testing package python-requests-unixsocket version 0.3.0-4 157s autopkgtest [12:17:55]: build not needed 157s autopkgtest [12:17:55]: test python3-requests-unixsocket: preparing testbed 158s Reading package lists... 158s Building dependency tree... 158s Reading state information... 158s Starting pkgProblemResolver with broken count: 0 158s Starting 2 pkgProblemResolver with broken count: 0 158s Done 159s The following additional packages will be installed: 159s autoconf automake autopoint autotools-dev build-essential cpp cpp-13 159s cpp-13-powerpc64le-linux-gnu cpp-powerpc64le-linux-gnu debhelper debugedit 159s dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-13 159s g++-13-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu gcc gcc-13 159s gcc-13-base gcc-13-powerpc64le-linux-gnu gcc-powerpc64le-linux-gnu gettext 159s intltool-debian libarchive-zip-perl libasan8 libatomic1 libcc1-0 159s libdebhelper-perl libfile-stripnondeterminism-perl libgcc-13-dev libgomp1 159s libisl23 libitm1 liblsan0 libmpc3 libquadmath0 libstdc++-13-dev libtool 159s libtsan2 libubsan1 m4 openstack-pkg-tools po-debconf python3-all 159s python3-iniconfig python3-packaging python3-pbr python3-pip python3-pluggy 159s python3-pytest python3-requests-unixsocket python3-waitress python3-wheel 159s Suggested packages: 159s autoconf-archive gnu-standards autoconf-doc cpp-doc gcc-13-locales 159s cpp-13-doc dh-make flit python3-build python3-installer gcc-13-doc 159s gcc-multilib manpages-dev flex bison gdb gcc-doc gdb-powerpc64le-linux-gnu 159s gettext-doc libasprintf-dev libgettextpo-dev libstdc++-13-doc libtool-doc 159s gfortran | fortran95-compiler gcj-jdk m4-doc libmail-box-perl 159s python-waitress-doc 159s Recommended packages: 159s libarchive-cpio-perl libltdl-dev autopkgtest madison-lite pristine-tar 159s libmail-sendmail-perl python3-dev libjs-sphinxdoc 159s The following NEW packages will be installed: 159s autoconf automake autopkgtest-satdep autopoint autotools-dev build-essential 159s cpp cpp-13 cpp-13-powerpc64le-linux-gnu cpp-powerpc64le-linux-gnu debhelper 159s debugedit dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-13 159s g++-13-powerpc64le-linux-gnu g++-powerpc64le-linux-gnu gcc gcc-13 159s gcc-13-base gcc-13-powerpc64le-linux-gnu gcc-powerpc64le-linux-gnu gettext 159s intltool-debian libarchive-zip-perl libasan8 libatomic1 libcc1-0 159s libdebhelper-perl libfile-stripnondeterminism-perl libgcc-13-dev libgomp1 159s libisl23 libitm1 liblsan0 libmpc3 libquadmath0 libstdc++-13-dev libtool 159s libtsan2 libubsan1 m4 openstack-pkg-tools po-debconf python3-all 159s python3-iniconfig python3-packaging python3-pbr python3-pip python3-pluggy 159s python3-pytest python3-requests-unixsocket python3-waitress python3-wheel 159s 0 upgraded, 57 newly installed, 0 to remove and 0 not upgraded. 159s Need to get 64.2 MB/64.2 MB of archives. 159s After this operation, 245 MB of additional disk space will be used. 159s Get:1 /tmp/autopkgtest.MwUW6d/1-autopkgtest-satdep.deb autopkgtest-satdep ppc64el 0 [824 B] 159s Get:2 http://ftpmaster.internal/ubuntu oracular/main ppc64el m4 ppc64el 1.4.19-4build1 [278 kB] 159s Get:3 http://ftpmaster.internal/ubuntu oracular/main ppc64el autoconf all 2.71-3 [339 kB] 159s Get:4 http://ftpmaster.internal/ubuntu oracular/main ppc64el autotools-dev all 20220109.1 [44.9 kB] 159s Get:5 http://ftpmaster.internal/ubuntu oracular/main ppc64el automake all 1:1.16.5-1.3ubuntu1 [558 kB] 160s Get:6 http://ftpmaster.internal/ubuntu oracular/main ppc64el autopoint all 0.21-14ubuntu2 [422 kB] 160s Get:7 http://ftpmaster.internal/ubuntu oracular/main ppc64el gcc-13-base ppc64el 13.2.0-23ubuntu4 [49.0 kB] 160s Get:8 http://ftpmaster.internal/ubuntu oracular/main ppc64el libisl23 ppc64el 0.26-3build1 [886 kB] 160s Get:9 http://ftpmaster.internal/ubuntu oracular/main ppc64el libmpc3 ppc64el 1.3.1-1build1 [62.1 kB] 160s Get:10 http://ftpmaster.internal/ubuntu oracular/main ppc64el cpp-13-powerpc64le-linux-gnu ppc64el 13.2.0-23ubuntu4 [10.7 MB] 162s Get:11 http://ftpmaster.internal/ubuntu oracular/main ppc64el cpp-13 ppc64el 13.2.0-23ubuntu4 [1038 B] 162s Get:12 http://ftpmaster.internal/ubuntu oracular/main ppc64el cpp-powerpc64le-linux-gnu ppc64el 4:13.2.0-7ubuntu1 [5330 B] 162s Get:13 http://ftpmaster.internal/ubuntu oracular/main ppc64el cpp ppc64el 4:13.2.0-7ubuntu1 [22.5 kB] 162s Get:14 http://ftpmaster.internal/ubuntu oracular/main ppc64el libcc1-0 ppc64el 14.1.0-1ubuntu1 [48.1 kB] 162s Get:15 http://ftpmaster.internal/ubuntu oracular/main ppc64el libgomp1 ppc64el 14.1.0-1ubuntu1 [161 kB] 162s Get:16 http://ftpmaster.internal/ubuntu oracular/main ppc64el libitm1 ppc64el 14.1.0-1ubuntu1 [32.4 kB] 162s Get:17 http://ftpmaster.internal/ubuntu oracular/main ppc64el libatomic1 ppc64el 14.1.0-1ubuntu1 [10.7 kB] 162s Get:18 http://ftpmaster.internal/ubuntu oracular/main ppc64el libasan8 ppc64el 14.1.0-1ubuntu1 [2971 kB] 162s Get:19 http://ftpmaster.internal/ubuntu oracular/main ppc64el liblsan0 ppc64el 14.1.0-1ubuntu1 [1328 kB] 162s Get:20 http://ftpmaster.internal/ubuntu oracular/main ppc64el libtsan2 ppc64el 14.1.0-1ubuntu1 [2708 kB] 163s Get:21 http://ftpmaster.internal/ubuntu oracular/main ppc64el libubsan1 ppc64el 14.1.0-1ubuntu1 [1196 kB] 163s Get:22 http://ftpmaster.internal/ubuntu oracular/main ppc64el libquadmath0 ppc64el 14.1.0-1ubuntu1 [158 kB] 163s Get:23 http://ftpmaster.internal/ubuntu oracular/main ppc64el libgcc-13-dev ppc64el 13.2.0-23ubuntu4 [1580 kB] 163s Get:24 http://ftpmaster.internal/ubuntu oracular/main ppc64el gcc-13-powerpc64le-linux-gnu ppc64el 13.2.0-23ubuntu4 [20.6 MB] 164s Get:25 http://ftpmaster.internal/ubuntu oracular/main ppc64el gcc-13 ppc64el 13.2.0-23ubuntu4 [482 kB] 164s Get:26 http://ftpmaster.internal/ubuntu oracular/main ppc64el gcc-powerpc64le-linux-gnu ppc64el 4:13.2.0-7ubuntu1 [1224 B] 164s Get:27 http://ftpmaster.internal/ubuntu oracular/main ppc64el gcc ppc64el 4:13.2.0-7ubuntu1 [5022 B] 164s Get:28 http://ftpmaster.internal/ubuntu oracular/main ppc64el libstdc++-13-dev ppc64el 13.2.0-23ubuntu4 [2512 kB] 164s Get:29 http://ftpmaster.internal/ubuntu oracular/main ppc64el g++-13-powerpc64le-linux-gnu ppc64el 13.2.0-23ubuntu4 [12.2 MB] 164s Get:30 http://ftpmaster.internal/ubuntu oracular/main ppc64el g++-13 ppc64el 13.2.0-23ubuntu4 [14.5 kB] 164s Get:31 http://ftpmaster.internal/ubuntu oracular/main ppc64el g++-powerpc64le-linux-gnu ppc64el 4:13.2.0-7ubuntu1 [968 B] 164s Get:32 http://ftpmaster.internal/ubuntu oracular/main ppc64el g++ ppc64el 4:13.2.0-7ubuntu1 [1086 B] 164s Get:33 http://ftpmaster.internal/ubuntu oracular/main ppc64el build-essential ppc64el 12.10ubuntu1 [4936 B] 164s Get:34 http://ftpmaster.internal/ubuntu oracular/main ppc64el libdebhelper-perl all 13.16ubuntu2 [92.9 kB] 164s Get:35 http://ftpmaster.internal/ubuntu oracular/main ppc64el libtool all 2.4.7-7build1 [166 kB] 164s Get:36 http://ftpmaster.internal/ubuntu oracular/main ppc64el dh-autoreconf all 20 [16.1 kB] 164s Get:37 http://ftpmaster.internal/ubuntu oracular/main ppc64el libarchive-zip-perl all 1.68-1 [90.2 kB] 164s Get:38 http://ftpmaster.internal/ubuntu oracular/main ppc64el libfile-stripnondeterminism-perl all 1.14.0-1 [20.1 kB] 164s Get:39 http://ftpmaster.internal/ubuntu oracular/main ppc64el dh-strip-nondeterminism all 1.14.0-1 [5058 B] 164s Get:40 http://ftpmaster.internal/ubuntu oracular/main ppc64el debugedit ppc64el 1:5.0-5build2 [51.4 kB] 164s Get:41 http://ftpmaster.internal/ubuntu oracular/main ppc64el dwz ppc64el 0.15-1build6 [142 kB] 164s Get:42 http://ftpmaster.internal/ubuntu oracular/main ppc64el gettext ppc64el 0.21-14ubuntu2 [985 kB] 164s Get:43 http://ftpmaster.internal/ubuntu oracular/main ppc64el intltool-debian all 0.35.0+20060710.6 [23.2 kB] 164s Get:44 http://ftpmaster.internal/ubuntu oracular/main ppc64el po-debconf all 1.0.21+nmu1 [233 kB] 164s Get:45 http://ftpmaster.internal/ubuntu oracular/main ppc64el debhelper all 13.16ubuntu2 [869 kB] 164s Get:46 http://ftpmaster.internal/ubuntu oracular/universe ppc64el dh-python all 6.20240422 [110 kB] 164s Get:47 http://ftpmaster.internal/ubuntu oracular/main ppc64el python3-all ppc64el 3.12.3-0ubuntu1 [888 B] 164s Get:48 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-iniconfig all 1.1.1-2 [6024 B] 164s Get:49 http://ftpmaster.internal/ubuntu oracular/main ppc64el python3-packaging all 24.0-1 [41.1 kB] 164s Get:50 http://ftpmaster.internal/ubuntu oracular/main ppc64el python3-pbr all 5.11.1-0ubuntu1 [66.5 kB] 164s Get:51 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-wheel all 0.43.0-1 [53.5 kB] 164s Get:52 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-pip all 24.1+dfsg-1 [1399 kB] 164s Get:53 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-pluggy all 1.5.0-1 [21.0 kB] 164s Get:54 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-pytest all 7.4.4-1 [305 kB] 164s Get:55 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-requests-unixsocket all 0.3.0-4 [7274 B] 164s Get:56 http://ftpmaster.internal/ubuntu oracular/universe ppc64el python3-waitress all 3.0.0-1 [46.4 kB] 164s Get:57 http://ftpmaster.internal/ubuntu oracular/universe ppc64el openstack-pkg-tools all 123ubuntu2 [94.5 kB] 165s Fetched 64.2 MB in 5s (11.7 MB/s) 165s Selecting previously unselected package m4. 165s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 72689 files and directories currently installed.) 165s Preparing to unpack .../00-m4_1.4.19-4build1_ppc64el.deb ... 165s Unpacking m4 (1.4.19-4build1) ... 165s Selecting previously unselected package autoconf. 165s Preparing to unpack .../01-autoconf_2.71-3_all.deb ... 165s Unpacking autoconf (2.71-3) ... 165s Selecting previously unselected package autotools-dev. 165s Preparing to unpack .../02-autotools-dev_20220109.1_all.deb ... 165s Unpacking autotools-dev (20220109.1) ... 165s Selecting previously unselected package automake. 165s Preparing to unpack .../03-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 165s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 165s Selecting previously unselected package autopoint. 165s Preparing to unpack .../04-autopoint_0.21-14ubuntu2_all.deb ... 165s Unpacking autopoint (0.21-14ubuntu2) ... 165s Selecting previously unselected package gcc-13-base:ppc64el. 165s Preparing to unpack .../05-gcc-13-base_13.2.0-23ubuntu4_ppc64el.deb ... 165s Unpacking gcc-13-base:ppc64el (13.2.0-23ubuntu4) ... 165s Selecting previously unselected package libisl23:ppc64el. 165s Preparing to unpack .../06-libisl23_0.26-3build1_ppc64el.deb ... 165s Unpacking libisl23:ppc64el (0.26-3build1) ... 165s Selecting previously unselected package libmpc3:ppc64el. 165s Preparing to unpack .../07-libmpc3_1.3.1-1build1_ppc64el.deb ... 165s Unpacking libmpc3:ppc64el (1.3.1-1build1) ... 165s Selecting previously unselected package cpp-13-powerpc64le-linux-gnu. 165s Preparing to unpack .../08-cpp-13-powerpc64le-linux-gnu_13.2.0-23ubuntu4_ppc64el.deb ... 165s Unpacking cpp-13-powerpc64le-linux-gnu (13.2.0-23ubuntu4) ... 165s Selecting previously unselected package cpp-13. 165s Preparing to unpack .../09-cpp-13_13.2.0-23ubuntu4_ppc64el.deb ... 165s Unpacking cpp-13 (13.2.0-23ubuntu4) ... 165s Selecting previously unselected package cpp-powerpc64le-linux-gnu. 165s Preparing to unpack .../10-cpp-powerpc64le-linux-gnu_4%3a13.2.0-7ubuntu1_ppc64el.deb ... 165s Unpacking cpp-powerpc64le-linux-gnu (4:13.2.0-7ubuntu1) ... 165s Selecting previously unselected package cpp. 165s Preparing to unpack .../11-cpp_4%3a13.2.0-7ubuntu1_ppc64el.deb ... 165s Unpacking cpp (4:13.2.0-7ubuntu1) ... 165s Selecting previously unselected package libcc1-0:ppc64el. 165s Preparing to unpack .../12-libcc1-0_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libcc1-0:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libgomp1:ppc64el. 165s Preparing to unpack .../13-libgomp1_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libgomp1:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libitm1:ppc64el. 165s Preparing to unpack .../14-libitm1_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libitm1:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libatomic1:ppc64el. 165s Preparing to unpack .../15-libatomic1_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libatomic1:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libasan8:ppc64el. 165s Preparing to unpack .../16-libasan8_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libasan8:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package liblsan0:ppc64el. 165s Preparing to unpack .../17-liblsan0_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking liblsan0:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libtsan2:ppc64el. 165s Preparing to unpack .../18-libtsan2_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libtsan2:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libubsan1:ppc64el. 165s Preparing to unpack .../19-libubsan1_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libubsan1:ppc64el (14.1.0-1ubuntu1) ... 165s Selecting previously unselected package libquadmath0:ppc64el. 165s Preparing to unpack .../20-libquadmath0_14.1.0-1ubuntu1_ppc64el.deb ... 165s Unpacking libquadmath0:ppc64el (14.1.0-1ubuntu1) ... 166s Selecting previously unselected package libgcc-13-dev:ppc64el. 166s Preparing to unpack .../21-libgcc-13-dev_13.2.0-23ubuntu4_ppc64el.deb ... 166s Unpacking libgcc-13-dev:ppc64el (13.2.0-23ubuntu4) ... 166s Selecting previously unselected package gcc-13-powerpc64le-linux-gnu. 166s Preparing to unpack .../22-gcc-13-powerpc64le-linux-gnu_13.2.0-23ubuntu4_ppc64el.deb ... 166s Unpacking gcc-13-powerpc64le-linux-gnu (13.2.0-23ubuntu4) ... 166s Selecting previously unselected package gcc-13. 166s Preparing to unpack .../23-gcc-13_13.2.0-23ubuntu4_ppc64el.deb ... 166s Unpacking gcc-13 (13.2.0-23ubuntu4) ... 166s Selecting previously unselected package gcc-powerpc64le-linux-gnu. 166s Preparing to unpack .../24-gcc-powerpc64le-linux-gnu_4%3a13.2.0-7ubuntu1_ppc64el.deb ... 166s Unpacking gcc-powerpc64le-linux-gnu (4:13.2.0-7ubuntu1) ... 166s Selecting previously unselected package gcc. 166s Preparing to unpack .../25-gcc_4%3a13.2.0-7ubuntu1_ppc64el.deb ... 166s Unpacking gcc (4:13.2.0-7ubuntu1) ... 166s Selecting previously unselected package libstdc++-13-dev:ppc64el. 166s Preparing to unpack .../26-libstdc++-13-dev_13.2.0-23ubuntu4_ppc64el.deb ... 166s Unpacking libstdc++-13-dev:ppc64el (13.2.0-23ubuntu4) ... 166s Selecting previously unselected package g++-13-powerpc64le-linux-gnu. 166s Preparing to unpack .../27-g++-13-powerpc64le-linux-gnu_13.2.0-23ubuntu4_ppc64el.deb ... 166s Unpacking g++-13-powerpc64le-linux-gnu (13.2.0-23ubuntu4) ... 167s Selecting previously unselected package g++-13. 167s Preparing to unpack .../28-g++-13_13.2.0-23ubuntu4_ppc64el.deb ... 167s Unpacking g++-13 (13.2.0-23ubuntu4) ... 167s Selecting previously unselected package g++-powerpc64le-linux-gnu. 167s Preparing to unpack .../29-g++-powerpc64le-linux-gnu_4%3a13.2.0-7ubuntu1_ppc64el.deb ... 167s Unpacking g++-powerpc64le-linux-gnu (4:13.2.0-7ubuntu1) ... 167s Selecting previously unselected package g++. 167s Preparing to unpack .../30-g++_4%3a13.2.0-7ubuntu1_ppc64el.deb ... 167s Unpacking g++ (4:13.2.0-7ubuntu1) ... 167s Selecting previously unselected package build-essential. 167s Preparing to unpack .../31-build-essential_12.10ubuntu1_ppc64el.deb ... 167s Unpacking build-essential (12.10ubuntu1) ... 167s Selecting previously unselected package libdebhelper-perl. 167s Preparing to unpack .../32-libdebhelper-perl_13.16ubuntu2_all.deb ... 167s Unpacking libdebhelper-perl (13.16ubuntu2) ... 167s Selecting previously unselected package libtool. 167s Preparing to unpack .../33-libtool_2.4.7-7build1_all.deb ... 167s Unpacking libtool (2.4.7-7build1) ... 167s Selecting previously unselected package dh-autoreconf. 167s Preparing to unpack .../34-dh-autoreconf_20_all.deb ... 167s Unpacking dh-autoreconf (20) ... 167s Selecting previously unselected package libarchive-zip-perl. 167s Preparing to unpack .../35-libarchive-zip-perl_1.68-1_all.deb ... 167s Unpacking libarchive-zip-perl (1.68-1) ... 167s Selecting previously unselected package libfile-stripnondeterminism-perl. 167s Preparing to unpack .../36-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... 167s Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... 167s Selecting previously unselected package dh-strip-nondeterminism. 167s Preparing to unpack .../37-dh-strip-nondeterminism_1.14.0-1_all.deb ... 167s Unpacking dh-strip-nondeterminism (1.14.0-1) ... 167s Selecting previously unselected package debugedit. 167s Preparing to unpack .../38-debugedit_1%3a5.0-5build2_ppc64el.deb ... 167s Unpacking debugedit (1:5.0-5build2) ... 167s Selecting previously unselected package dwz. 167s Preparing to unpack .../39-dwz_0.15-1build6_ppc64el.deb ... 167s Unpacking dwz (0.15-1build6) ... 167s Selecting previously unselected package gettext. 167s Preparing to unpack .../40-gettext_0.21-14ubuntu2_ppc64el.deb ... 167s Unpacking gettext (0.21-14ubuntu2) ... 167s Selecting previously unselected package intltool-debian. 167s Preparing to unpack .../41-intltool-debian_0.35.0+20060710.6_all.deb ... 167s Unpacking intltool-debian (0.35.0+20060710.6) ... 167s Selecting previously unselected package po-debconf. 167s Preparing to unpack .../42-po-debconf_1.0.21+nmu1_all.deb ... 167s Unpacking po-debconf (1.0.21+nmu1) ... 167s Selecting previously unselected package debhelper. 167s Preparing to unpack .../43-debhelper_13.16ubuntu2_all.deb ... 167s Unpacking debhelper (13.16ubuntu2) ... 167s Selecting previously unselected package dh-python. 167s Preparing to unpack .../44-dh-python_6.20240422_all.deb ... 167s Unpacking dh-python (6.20240422) ... 167s Selecting previously unselected package python3-all. 167s Preparing to unpack .../45-python3-all_3.12.3-0ubuntu1_ppc64el.deb ... 167s Unpacking python3-all (3.12.3-0ubuntu1) ... 167s Selecting previously unselected package python3-iniconfig. 167s Preparing to unpack .../46-python3-iniconfig_1.1.1-2_all.deb ... 167s Unpacking python3-iniconfig (1.1.1-2) ... 167s Selecting previously unselected package python3-packaging. 167s Preparing to unpack .../47-python3-packaging_24.0-1_all.deb ... 167s Unpacking python3-packaging (24.0-1) ... 167s Selecting previously unselected package python3-pbr. 167s Preparing to unpack .../48-python3-pbr_5.11.1-0ubuntu1_all.deb ... 167s Unpacking python3-pbr (5.11.1-0ubuntu1) ... 167s Selecting previously unselected package python3-wheel. 167s Preparing to unpack .../49-python3-wheel_0.43.0-1_all.deb ... 167s Unpacking python3-wheel (0.43.0-1) ... 167s Selecting previously unselected package python3-pip. 167s Preparing to unpack .../50-python3-pip_24.1+dfsg-1_all.deb ... 167s Unpacking python3-pip (24.1+dfsg-1) ... 168s Selecting previously unselected package python3-pluggy. 168s Preparing to unpack .../51-python3-pluggy_1.5.0-1_all.deb ... 168s Unpacking python3-pluggy (1.5.0-1) ... 168s Selecting previously unselected package python3-pytest. 168s Preparing to unpack .../52-python3-pytest_7.4.4-1_all.deb ... 168s Unpacking python3-pytest (7.4.4-1) ... 168s Selecting previously unselected package python3-requests-unixsocket. 168s Preparing to unpack .../53-python3-requests-unixsocket_0.3.0-4_all.deb ... 168s Unpacking python3-requests-unixsocket (0.3.0-4) ... 168s Selecting previously unselected package python3-waitress. 168s Preparing to unpack .../54-python3-waitress_3.0.0-1_all.deb ... 168s Unpacking python3-waitress (3.0.0-1) ... 168s Selecting previously unselected package openstack-pkg-tools. 168s Preparing to unpack .../55-openstack-pkg-tools_123ubuntu2_all.deb ... 168s Unpacking openstack-pkg-tools (123ubuntu2) ... 168s Selecting previously unselected package autopkgtest-satdep. 168s Preparing to unpack .../56-1-autopkgtest-satdep.deb ... 168s Unpacking autopkgtest-satdep (0) ... 168s Setting up dh-python (6.20240422) ... 168s Setting up python3-iniconfig (1.1.1-2) ... 168s Setting up python3-waitress (3.0.0-1) ... 168s Setting up python3-pbr (5.11.1-0ubuntu1) ... 168s Setting up libarchive-zip-perl (1.68-1) ... 168s Setting up libdebhelper-perl (13.16ubuntu2) ... 168s Setting up m4 (1.4.19-4build1) ... 168s Setting up python3-all (3.12.3-0ubuntu1) ... 168s Setting up libgomp1:ppc64el (14.1.0-1ubuntu1) ... 168s Setting up python3-wheel (0.43.0-1) ... 169s Setting up python3-requests-unixsocket (0.3.0-4) ... 169s Setting up autotools-dev (20220109.1) ... 169s Setting up python3-packaging (24.0-1) ... 169s Setting up gcc-13-base:ppc64el (13.2.0-23ubuntu4) ... 169s Setting up libquadmath0:ppc64el (14.1.0-1ubuntu1) ... 169s Setting up libmpc3:ppc64el (1.3.1-1build1) ... 169s Setting up libatomic1:ppc64el (14.1.0-1ubuntu1) ... 169s Setting up autopoint (0.21-14ubuntu2) ... 169s Setting up python3-pip (24.1+dfsg-1) ... 170s Setting up autoconf (2.71-3) ... 170s Setting up python3-pluggy (1.5.0-1) ... 170s Setting up libubsan1:ppc64el (14.1.0-1ubuntu1) ... 170s Setting up dwz (0.15-1build6) ... 170s Setting up libasan8:ppc64el (14.1.0-1ubuntu1) ... 170s Setting up debugedit (1:5.0-5build2) ... 170s Setting up libtsan2:ppc64el (14.1.0-1ubuntu1) ... 170s Setting up libisl23:ppc64el (0.26-3build1) ... 170s Setting up cpp-13-powerpc64le-linux-gnu (13.2.0-23ubuntu4) ... 170s Setting up libcc1-0:ppc64el (14.1.0-1ubuntu1) ... 170s Setting up liblsan0:ppc64el (14.1.0-1ubuntu1) ... 170s Setting up libitm1:ppc64el (14.1.0-1ubuntu1) ... 170s Setting up cpp-powerpc64le-linux-gnu (4:13.2.0-7ubuntu1) ... 170s Setting up automake (1:1.16.5-1.3ubuntu1) ... 170s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 170s Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... 170s Setting up gettext (0.21-14ubuntu2) ... 170s Setting up cpp-13 (13.2.0-23ubuntu4) ... 170s Setting up python3-pytest (7.4.4-1) ... 171s Setting up intltool-debian (0.35.0+20060710.6) ... 171s Setting up dh-strip-nondeterminism (1.14.0-1) ... 171s Setting up libgcc-13-dev:ppc64el (13.2.0-23ubuntu4) ... 171s Setting up cpp (4:13.2.0-7ubuntu1) ... 171s Setting up libstdc++-13-dev:ppc64el (13.2.0-23ubuntu4) ... 171s Setting up po-debconf (1.0.21+nmu1) ... 171s Setting up openstack-pkg-tools (123ubuntu2) ... 171s Setting up gcc-13-powerpc64le-linux-gnu (13.2.0-23ubuntu4) ... 171s Setting up gcc-13 (13.2.0-23ubuntu4) ... 171s Setting up libtool (2.4.7-7build1) ... 171s Setting up g++-13-powerpc64le-linux-gnu (13.2.0-23ubuntu4) ... 171s Setting up dh-autoreconf (20) ... 171s Setting up gcc-powerpc64le-linux-gnu (4:13.2.0-7ubuntu1) ... 171s Setting up g++-powerpc64le-linux-gnu (4:13.2.0-7ubuntu1) ... 171s Setting up g++-13 (13.2.0-23ubuntu4) ... 171s Setting up debhelper (13.16ubuntu2) ... 171s Setting up gcc (4:13.2.0-7ubuntu1) ... 171s Setting up g++ (4:13.2.0-7ubuntu1) ... 171s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 171s Setting up build-essential (12.10ubuntu1) ... 171s Setting up autopkgtest-satdep (0) ... 171s Processing triggers for man-db (2.12.1-2) ... 172s Processing triggers for install-info (7.1-3build2) ... 172s Processing triggers for libc-bin (2.39-0ubuntu9) ... 175s (Reading database ... 76141 files and directories currently installed.) 175s Removing autopkgtest-satdep (0) ... 175s autopkgtest [12:18:13]: test python3-requests-unixsocket: [----------------------- 176s === python3.12 === 176s ============================= test session starts ============================== 176s platform linux -- Python 3.12.4, pytest-7.4.4, pluggy-1.5.0 -- /usr/bin/python3.12 176s cachedir: .pytest_cache 176s rootdir: /tmp/autopkgtest.MwUW6d/autopkgtest_tmp 176s collecting ... collected 5 items 176s 176s tests/test_requests_unixsocket.py::test_unix_domain_adapter_ok FAILED [ 20%] 176s tests/test_requests_unixsocket.py::test_unix_domain_adapter_url_with_query_params FAILED [ 40%] 176s tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_error FAILED [ 60%] 310s tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_proxies_error FAILED [ 80%] 310s tests/test_requests_unixsocket.py::test_unix_domain_adapter_monkeypatch FAILED [100%] 310s 310s =================================== FAILURES =================================== 310s _________________________ test_unix_domain_adapter_ok __________________________ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s > conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:633: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 310s conn = self.poolmanager.connection_from_host( 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 310s return self.connection_from_context(request_context) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': '%2Ftmp%2Ftest_requests.520571_2793_0e3c0338', 'maxsize': 10, ...} 310s 310s def connection_from_context( 310s self, request_context: dict[str, typing.Any] 310s ) -> HTTPConnectionPool: 310s """ 310s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 310s 310s ``request_context`` must at least contain the ``scheme`` key and its 310s value must be a key in ``key_fn_by_scheme`` instance variable. 310s """ 310s if "strict" in request_context: 310s warnings.warn( 310s "The 'strict' parameter is no longer needed on Python 3+. " 310s "This will raise an error in urllib3 v2.1.0.", 310s DeprecationWarning, 310s ) 310s request_context.pop("strict") 310s 310s scheme = request_context["scheme"].lower() 310s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 310s if not pool_key_constructor: 310s > raise URLSchemeUnknown(scheme) 310s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 310s 310s During handling of the above exception, another exception occurred: 310s 310s def test_unix_domain_adapter_ok(): 310s with UnixSocketServerThread() as usock_thread: 310s session = requests_unixsocket.Session('http+unix://') 310s urlencoded_usock = requests.compat.quote_plus(usock_thread.usock) 310s url = 'http+unix://%s/path/to/page' % urlencoded_usock 310s 310s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 310s 'options']: 310s logger.debug('Calling session.%s(%r) ...', method, url) 310s > r = getattr(session, method)(url) 310s 310s tests/test_requests_unixsocket.py:27: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 310s return self.request("GET", url, **kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 310s resp = self.send(prep, **send_kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 310s r = adapter.send(request, **kwargs) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s except LocationValueError as e: 310s > raise InvalidURL(e, request=request) 310s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 310s ________________ test_unix_domain_adapter_url_with_query_params ________________ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s > conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:633: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 310s conn = self.poolmanager.connection_from_host( 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 310s return self.connection_from_context(request_context) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': '%2Ftmp%2Ftest_requests.520571_2793_feb6f373', 'maxsize': 10, ...} 310s 310s def connection_from_context( 310s self, request_context: dict[str, typing.Any] 310s ) -> HTTPConnectionPool: 310s """ 310s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 310s 310s ``request_context`` must at least contain the ``scheme`` key and its 310s value must be a key in ``key_fn_by_scheme`` instance variable. 310s """ 310s if "strict" in request_context: 310s warnings.warn( 310s "The 'strict' parameter is no longer needed on Python 3+. " 310s "This will raise an error in urllib3 v2.1.0.", 310s DeprecationWarning, 310s ) 310s request_context.pop("strict") 310s 310s scheme = request_context["scheme"].lower() 310s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 310s if not pool_key_constructor: 310s > raise URLSchemeUnknown(scheme) 310s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 310s 310s During handling of the above exception, another exception occurred: 310s 310s def test_unix_domain_adapter_url_with_query_params(): 310s with UnixSocketServerThread() as usock_thread: 310s session = requests_unixsocket.Session('http+unix://') 310s urlencoded_usock = requests.compat.quote_plus(usock_thread.usock) 310s url = ('http+unix://%s' 310s '/containers/nginx/logs?timestamp=true' % urlencoded_usock) 310s 310s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 310s 'options']: 310s logger.debug('Calling session.%s(%r) ...', method, url) 310s > r = getattr(session, method)(url) 310s 310s tests/test_requests_unixsocket.py:54: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 310s return self.request("GET", url, **kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 310s resp = self.send(prep, **send_kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 310s r = adapter.send(request, **kwargs) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s except LocationValueError as e: 310s > raise InvalidURL(e, request=request) 310s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 310s __________________ test_unix_domain_adapter_connection_error ___________________ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s > conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:633: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 310s conn = self.poolmanager.connection_from_host( 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 310s return self.connection_from_context(request_context) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': 'socket_does_not_exist', 'maxsize': 10, ...} 310s 310s def connection_from_context( 310s self, request_context: dict[str, typing.Any] 310s ) -> HTTPConnectionPool: 310s """ 310s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 310s 310s ``request_context`` must at least contain the ``scheme`` key and its 310s value must be a key in ``key_fn_by_scheme`` instance variable. 310s """ 310s if "strict" in request_context: 310s warnings.warn( 310s "The 'strict' parameter is no longer needed on Python 3+. " 310s "This will raise an error in urllib3 v2.1.0.", 310s DeprecationWarning, 310s ) 310s request_context.pop("strict") 310s 310s scheme = request_context["scheme"].lower() 310s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 310s if not pool_key_constructor: 310s > raise URLSchemeUnknown(scheme) 310s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 310s 310s During handling of the above exception, another exception occurred: 310s 310s def test_unix_domain_adapter_connection_error(): 310s session = requests_unixsocket.Session('http+unix://') 310s 310s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 'options']: 310s with pytest.raises(requests.ConnectionError): 310s > getattr(session, method)( 310s 'http+unix://socket_does_not_exist/path/to/page') 310s 310s tests/test_requests_unixsocket.py:77: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 310s return self.request("GET", url, **kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 310s resp = self.send(prep, **send_kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 310s r = adapter.send(request, **kwargs) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s except LocationValueError as e: 310s > raise InvalidURL(e, request=request) 310s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 310s ______________ test_unix_domain_adapter_connection_proxies_error _______________ 310s 310s self = 310s 310s def _new_conn(self) -> socket.socket: 310s """Establish a socket connection and set nodelay settings on it. 310s 310s :return: New socket connection. 310s """ 310s try: 310s > sock = connection.create_connection( 310s (self._dns_host, self.port), 310s self.timeout, 310s source_address=self.source_address, 310s socket_options=self.socket_options, 310s ) 310s 310s /usr/lib/python3/dist-packages/urllib3/connection.py:203: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/urllib3/util/connection.py:85: in create_connection 310s raise err 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s address = ('10.10.1.10', 1080), timeout = None, source_address = None 310s socket_options = [] 310s 310s def create_connection( 310s address: tuple[str, int], 310s timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 310s source_address: tuple[str, int] | None = None, 310s socket_options: _TYPE_SOCKET_OPTIONS | None = None, 310s ) -> socket.socket: 310s """Connect to *address* and return the socket object. 310s 310s Convenience function. Connect to *address* (a 2-tuple ``(host, 310s port)``) and return the socket object. Passing the optional 310s *timeout* parameter will set the timeout on the socket instance 310s before attempting to connect. If no *timeout* is supplied, the 310s global default timeout setting returned by :func:`socket.getdefaulttimeout` 310s is used. If *source_address* is set it must be a tuple of (host, port) 310s for the socket to bind as a source address before making the connection. 310s An host of '' or port 0 tells the OS to use the default. 310s """ 310s 310s host, port = address 310s if host.startswith("["): 310s host = host.strip("[]") 310s err = None 310s 310s # Using the value from allowed_gai_family() in the context of getaddrinfo lets 310s # us select whether to work with IPv4 DNS records, IPv6 records, or both. 310s # The original create_connection function always returns all records. 310s family = allowed_gai_family() 310s 310s try: 310s host.encode("idna") 310s except UnicodeError: 310s raise LocationParseError(f"'{host}', label empty or too long") from None 310s 310s for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM): 310s af, socktype, proto, canonname, sa = res 310s sock = None 310s try: 310s sock = socket.socket(af, socktype, proto) 310s 310s # If provided, set socket level options before connecting. 310s _set_socket_options(sock, socket_options) 310s 310s if timeout is not _DEFAULT_TIMEOUT: 310s sock.settimeout(timeout) 310s if source_address: 310s sock.bind(source_address) 310s > sock.connect(sa) 310s E TimeoutError: [Errno 110] Connection timed out 310s 310s /usr/lib/python3/dist-packages/urllib3/util/connection.py:73: TimeoutError 310s 310s The above exception was the direct cause of the following exception: 310s 310s self = 310s method = 'GET', url = '/path/to/page', body = None 310s headers = {'User-Agent': 'python-requests/2.32.3', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} 310s retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 310s redirect = False, assert_same_host = False 310s timeout = Timeout(connect=None, read=None, total=None), pool_timeout = None 310s release_conn = False, chunked = False, body_pos = None, preload_content = False 310s decode_content = False, response_kw = {} 310s parsed_url = Url(scheme=None, auth=None, host=None, port=None, path='/path/to/page', query=None, fragment=None) 310s destination_scheme = None, conn = None, release_this_conn = True 310s http_tunnel_required = True, err = None, clean_exit = False 310s 310s def urlopen( # type: ignore[override] 310s self, 310s method: str, 310s url: str, 310s body: _TYPE_BODY | None = None, 310s headers: typing.Mapping[str, str] | None = None, 310s retries: Retry | bool | int | None = None, 310s redirect: bool = True, 310s assert_same_host: bool = True, 310s timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 310s pool_timeout: int | None = None, 310s release_conn: bool | None = None, 310s chunked: bool = False, 310s body_pos: _TYPE_BODY_POSITION | None = None, 310s preload_content: bool = True, 310s decode_content: bool = True, 310s **response_kw: typing.Any, 310s ) -> BaseHTTPResponse: 310s """ 310s Get a connection from the pool and perform an HTTP request. This is the 310s lowest level call for making a request, so you'll need to specify all 310s the raw details. 310s 310s .. note:: 310s 310s More commonly, it's appropriate to use a convenience method 310s such as :meth:`request`. 310s 310s .. note:: 310s 310s `release_conn` will only behave as expected if 310s `preload_content=False` because we want to make 310s `preload_content=False` the default behaviour someday soon without 310s breaking backwards compatibility. 310s 310s :param method: 310s HTTP request method (such as GET, POST, PUT, etc.) 310s 310s :param url: 310s The URL to perform the request on. 310s 310s :param body: 310s Data to send in the request body, either :class:`str`, :class:`bytes`, 310s an iterable of :class:`str`/:class:`bytes`, or a file-like object. 310s 310s :param headers: 310s Dictionary of custom headers to send, such as User-Agent, 310s If-None-Match, etc. If None, pool headers are used. If provided, 310s these headers completely replace any pool-specific headers. 310s 310s :param retries: 310s Configure the number of retries to allow before raising a 310s :class:`~urllib3.exceptions.MaxRetryError` exception. 310s 310s Pass ``None`` to retry until you receive a response. Pass a 310s :class:`~urllib3.util.retry.Retry` object for fine-grained control 310s over different types of retries. 310s Pass an integer number to retry connection errors that many times, 310s but no other types of errors. Pass zero to never retry. 310s 310s If ``False``, then retries are disabled and any exception is raised 310s immediately. Also, instead of raising a MaxRetryError on redirects, 310s the redirect response will be returned. 310s 310s :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 310s 310s :param redirect: 310s If True, automatically handle redirects (status codes 301, 302, 310s 303, 307, 308). Each redirect counts as a retry. Disabling retries 310s will disable redirect, too. 310s 310s :param assert_same_host: 310s If ``True``, will make sure that the host of the pool requests is 310s consistent else will raise HostChangedError. When ``False``, you can 310s use the pool on an HTTP proxy and request foreign hosts. 310s 310s :param timeout: 310s If specified, overrides the default timeout for this one 310s request. It may be a float (in seconds) or an instance of 310s :class:`urllib3.util.Timeout`. 310s 310s :param pool_timeout: 310s If set and the pool is set to block=True, then this method will 310s block for ``pool_timeout`` seconds and raise EmptyPoolError if no 310s connection is available within the time period. 310s 310s :param bool preload_content: 310s If True, the response's body will be preloaded into memory. 310s 310s :param bool decode_content: 310s If True, will attempt to decode the body based on the 310s 'content-encoding' header. 310s 310s :param release_conn: 310s If False, then the urlopen call will not release the connection 310s back into the pool once a response is received (but will release if 310s you read the entire contents of the response such as when 310s `preload_content=True`). This is useful if you're not preloading 310s the response's content immediately. You will need to call 310s ``r.release_conn()`` on the response ``r`` to return the connection 310s back into the pool. If None, it takes the value of ``preload_content`` 310s which defaults to ``True``. 310s 310s :param bool chunked: 310s If True, urllib3 will send the body using chunked transfer 310s encoding. Otherwise, urllib3 will send the body using the standard 310s content-length form. Defaults to False. 310s 310s :param int body_pos: 310s Position to seek to in file-like body in the event of a retry or 310s redirect. Typically this won't need to be set because urllib3 will 310s auto-populate the value when needed. 310s """ 310s parsed_url = parse_url(url) 310s destination_scheme = parsed_url.scheme 310s 310s if headers is None: 310s headers = self.headers 310s 310s if not isinstance(retries, Retry): 310s retries = Retry.from_int(retries, redirect=redirect, default=self.retries) 310s 310s if release_conn is None: 310s release_conn = preload_content 310s 310s # Check host 310s if assert_same_host and not self.is_same_host(url): 310s raise HostChangedError(self, url, retries) 310s 310s # Ensure that the URL we're connecting to is properly encoded 310s if url.startswith("/"): 310s url = to_str(_encode_target(url)) 310s else: 310s url = to_str(parsed_url.url) 310s 310s conn = None 310s 310s # Track whether `conn` needs to be released before 310s # returning/raising/recursing. Update this variable if necessary, and 310s # leave `release_conn` constant throughout the function. That way, if 310s # the function recurses, the original value of `release_conn` will be 310s # passed down into the recursive call, and its value will be respected. 310s # 310s # See issue #651 [1] for details. 310s # 310s # [1] 310s release_this_conn = release_conn 310s 310s http_tunnel_required = connection_requires_http_tunnel( 310s self.proxy, self.proxy_config, destination_scheme 310s ) 310s 310s # Merge the proxy headers. Only done when not using HTTP CONNECT. We 310s # have to copy the headers dict so we can safely change it without those 310s # changes being reflected in anyone else's copy. 310s if not http_tunnel_required: 310s headers = headers.copy() # type: ignore[attr-defined] 310s headers.update(self.proxy_headers) # type: ignore[union-attr] 310s 310s # Must keep the exception bound to a separate variable or else Python 3 310s # complains about UnboundLocalError. 310s err = None 310s 310s # Keep track of whether we cleanly exited the except block. This 310s # ensures we do proper cleanup in finally. 310s clean_exit = False 310s 310s # Rewind body position, if needed. Record current position 310s # for future rewinds in the event of a redirect/retry. 310s body_pos = set_file_position(body, body_pos) 310s 310s try: 310s # Request a connection from the queue. 310s timeout_obj = self._get_timeout(timeout) 310s conn = self._get_conn(timeout=pool_timeout) 310s 310s conn.timeout = timeout_obj.connect_timeout # type: ignore[assignment] 310s 310s # Is this a closed/new connection that requires CONNECT tunnelling? 310s if self.proxy is not None and http_tunnel_required and conn.is_closed: 310s try: 310s self._prepare_proxy(conn) 310s except (BaseSSLError, OSError, SocketTimeout) as e: 310s self._raise_timeout( 310s err=e, url=self.proxy.url, timeout_value=conn.timeout 310s ) 310s raise 310s 310s # If we're going to release the connection in ``finally:``, then 310s # the response doesn't need to know about the connection. Otherwise 310s # it will also try to release it and we'll have a double-release 310s # mess. 310s response_conn = conn if not release_conn else None 310s 310s # Make the request on the HTTPConnection object 310s > response = self._make_request( 310s conn, 310s method, 310s url, 310s timeout=timeout_obj, 310s body=body, 310s headers=headers, 310s chunked=chunked, 310s retries=retries, 310s response_conn=response_conn, 310s preload_content=preload_content, 310s decode_content=decode_content, 310s **response_kw, 310s ) 310s 310s /usr/lib/python3/dist-packages/urllib3/connectionpool.py:791: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/urllib3/connectionpool.py:497: in _make_request 310s conn.request( 310s /usr/lib/python3/dist-packages/urllib3/connection.py:395: in request 310s self.endheaders() 310s /usr/lib/python3.12/http/client.py:1331: in endheaders 310s self._send_output(message_body, encode_chunked=encode_chunked) 310s /usr/lib/python3.12/http/client.py:1091: in _send_output 310s self.send(msg) 310s /usr/lib/python3.12/http/client.py:1035: in send 310s self.connect() 310s /usr/lib/python3/dist-packages/urllib3/connection.py:243: in connect 310s self.sock = self._new_conn() 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s 310s def _new_conn(self) -> socket.socket: 310s """Establish a socket connection and set nodelay settings on it. 310s 310s :return: New socket connection. 310s """ 310s try: 310s sock = connection.create_connection( 310s (self._dns_host, self.port), 310s self.timeout, 310s source_address=self.source_address, 310s socket_options=self.socket_options, 310s ) 310s except socket.gaierror as e: 310s raise NameResolutionError(self.host, self, e) from e 310s except SocketTimeout as e: 310s > raise ConnectTimeoutError( 310s self, 310s f"Connection to {self.host} timed out. (connect timeout={self.timeout})", 310s ) from e 310s E urllib3.exceptions.ConnectTimeoutError: (, 'Connection to 10.10.1.10 timed out. (connect timeout=None)') 310s 310s /usr/lib/python3/dist-packages/urllib3/connection.py:212: ConnectTimeoutError 310s 310s The above exception was the direct cause of the following exception: 310s Traceback (most recent call last): 310s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 203, in _new_conn 310s sock = connection.create_connection( 310s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 310s File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 85, in create_connection 310s raise err 310s File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 73, in create_connection 310s sock.connect(sa) 310s TimeoutError: [Errno 110] Connection timed out 310s 310s The above exception was the direct cause of the following exception: 310s 310s Traceback (most recent call last): 310s File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 791, in urlopen 310s response = self._make_request( 310s ^^^^^^^^^^^^^^^^^^^ 310s File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 497, in _make_request 310s conn.request( 310s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 395, in request 310s self.endheaders() 310s File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders 310s self._send_output(message_body, encode_chunked=encode_chunked) 310s File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output 310s self.send(msg) 310s File "/usr/lib/python3.12/http/client.py", line 1035, in send 310s self.connect() 310s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 243, in connect 310s self.sock = self._new_conn() 310s ^^^^^^^^^^^^^^^^ 310s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 212, in _new_conn 310s raise ConnectTimeoutError( 310s urllib3.exceptions.ConnectTimeoutError: (, 'Connection to 10.10.1.10 timed out. (connect timeout=None)') 310s 310s The above exception was the direct cause of the following exception: 310s 310s urllib3.exceptions.ProxyError: ('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)')) 310s 310s The above exception was the direct cause of the following exception: 310s 310s self = 310s request = , stream = False 310s timeout = Timeout(connect=None, read=None, total=None), verify = True 310s cert = None 310s proxies = OrderedDict({'http+unix': 'http://10.10.1.10:1080', 'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s except LocationValueError as e: 310s raise InvalidURL(e, request=request) 310s 310s self.cert_verify(conn, request.url, verify, cert) 310s url = self.request_url(request, proxies) 310s self.add_headers( 310s request, 310s stream=stream, 310s timeout=timeout, 310s verify=verify, 310s cert=cert, 310s proxies=proxies, 310s ) 310s 310s chunked = not (request.body is None or "Content-Length" in request.headers) 310s 310s if isinstance(timeout, tuple): 310s try: 310s connect, read = timeout 310s timeout = TimeoutSauce(connect=connect, read=read) 310s except ValueError: 310s raise ValueError( 310s f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 310s f"or a single float to set both timeouts to the same value." 310s ) 310s elif isinstance(timeout, TimeoutSauce): 310s pass 310s else: 310s timeout = TimeoutSauce(connect=timeout, read=timeout) 310s 310s try: 310s > resp = conn.urlopen( 310s method=request.method, 310s url=url, 310s body=request.body, 310s headers=request.headers, 310s redirect=False, 310s assert_same_host=False, 310s preload_content=False, 310s decode_content=False, 310s retries=self.max_retries, 310s timeout=timeout, 310s chunked=chunked, 310s ) 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:667: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/urllib3/connectionpool.py:845: in urlopen 310s retries = retries.increment( 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = Retry(total=0, connect=None, read=False, redirect=None, status=None) 310s method = 'GET', url = '/path/to/page', response = None 310s error = ProxyError('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)')) 310s _pool = 310s _stacktrace = 310s 310s def increment( 310s self, 310s method: str | None = None, 310s url: str | None = None, 310s response: BaseHTTPResponse | None = None, 310s error: Exception | None = None, 310s _pool: ConnectionPool | None = None, 310s _stacktrace: TracebackType | None = None, 310s ) -> Retry: 310s """Return a new Retry object with incremented retry counters. 310s 310s :param response: A response object, or None, if the server did not 310s return a response. 310s :type response: :class:`~urllib3.response.BaseHTTPResponse` 310s :param Exception error: An error encountered during the request, or 310s None if the response was received successfully. 310s 310s :return: A new ``Retry`` object. 310s """ 310s if self.total is False and error: 310s # Disabled, indicate to re-raise the error. 310s raise reraise(type(error), error, _stacktrace) 310s 310s total = self.total 310s if total is not None: 310s total -= 1 310s 310s connect = self.connect 310s read = self.read 310s redirect = self.redirect 310s status_count = self.status 310s other = self.other 310s cause = "unknown" 310s status = None 310s redirect_location = None 310s 310s if error and self._is_connection_error(error): 310s # Connect retry? 310s if connect is False: 310s raise reraise(type(error), error, _stacktrace) 310s elif connect is not None: 310s connect -= 1 310s 310s elif error and self._is_read_error(error): 310s # Read retry? 310s if read is False or method is None or not self._is_method_retryable(method): 310s raise reraise(type(error), error, _stacktrace) 310s elif read is not None: 310s read -= 1 310s 310s elif error: 310s # Other retry? 310s if other is not None: 310s other -= 1 310s 310s elif response and response.get_redirect_location(): 310s # Redirect retry? 310s if redirect is not None: 310s redirect -= 1 310s cause = "too many redirects" 310s response_redirect_location = response.get_redirect_location() 310s if response_redirect_location: 310s redirect_location = response_redirect_location 310s status = response.status 310s 310s else: 310s # Incrementing because of a server error like a 500 in 310s # status_forcelist and the given method is in the allowed_methods 310s cause = ResponseError.GENERIC_ERROR 310s if response and response.status: 310s if status_count is not None: 310s status_count -= 1 310s cause = ResponseError.SPECIFIC_ERROR.format(status_code=response.status) 310s status = response.status 310s 310s history = self.history + ( 310s RequestHistory(method, url, error, status, redirect_location), 310s ) 310s 310s new_retry = self.new( 310s total=total, 310s connect=connect, 310s read=read, 310s redirect=redirect, 310s status=status_count, 310s other=other, 310s history=history, 310s ) 310s 310s if new_retry.is_exhausted(): 310s reason = error or ResponseError(cause) 310s > raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] 310s E urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='10.10.1.10', port=1080): Max retries exceeded with url: /path/to/page (Caused by ProxyError('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)'))) 310s 310s /usr/lib/python3/dist-packages/urllib3/util/retry.py:515: MaxRetryError 310s 310s During handling of the above exception, another exception occurred: 310s 310s def test_unix_domain_adapter_connection_proxies_error(): 310s session = requests_unixsocket.Session('http+unix://') 310s 310s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 'options']: 310s with pytest.raises(ValueError) as excinfo: 310s > getattr(session, method)( 310s 'http+unix://socket_does_not_exist/path/to/page', 310s proxies={"http+unix": "http://10.10.1.10:1080"}) 310s 310s tests/test_requests_unixsocket.py:86: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 310s return self.request("GET", url, **kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 310s resp = self.send(prep, **send_kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 310s r = adapter.send(request, **kwargs) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request = , stream = False 310s timeout = Timeout(connect=None, read=None, total=None), verify = True 310s cert = None 310s proxies = OrderedDict({'http+unix': 'http://10.10.1.10:1080', 'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s except LocationValueError as e: 310s raise InvalidURL(e, request=request) 310s 310s self.cert_verify(conn, request.url, verify, cert) 310s url = self.request_url(request, proxies) 310s self.add_headers( 310s request, 310s stream=stream, 310s timeout=timeout, 310s verify=verify, 310s cert=cert, 310s proxies=proxies, 310s ) 310s 310s chunked = not (request.body is None or "Content-Length" in request.headers) 310s 310s if isinstance(timeout, tuple): 310s try: 310s connect, read = timeout 310s timeout = TimeoutSauce(connect=connect, read=read) 310s except ValueError: 310s raise ValueError( 310s f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 310s f"or a single float to set both timeouts to the same value." 310s ) 310s elif isinstance(timeout, TimeoutSauce): 310s pass 310s else: 310s timeout = TimeoutSauce(connect=timeout, read=timeout) 310s 310s try: 310s resp = conn.urlopen( 310s method=request.method, 310s url=url, 310s body=request.body, 310s headers=request.headers, 310s redirect=False, 310s assert_same_host=False, 310s preload_content=False, 310s decode_content=False, 310s retries=self.max_retries, 310s timeout=timeout, 310s chunked=chunked, 310s ) 310s 310s except (ProtocolError, OSError) as err: 310s raise ConnectionError(err, request=request) 310s 310s except MaxRetryError as e: 310s if isinstance(e.reason, ConnectTimeoutError): 310s # TODO: Remove this in 3.0.0: see #2811 310s if not isinstance(e.reason, NewConnectionError): 310s raise ConnectTimeout(e, request=request) 310s 310s if isinstance(e.reason, ResponseError): 310s raise RetryError(e, request=request) 310s 310s if isinstance(e.reason, _ProxyError): 310s > raise ProxyError(e, request=request) 310s E requests.exceptions.ProxyError: HTTPConnectionPool(host='10.10.1.10', port=1080): Max retries exceeded with url: /path/to/page (Caused by ProxyError('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)'))) 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:694: ProxyError 310s _____________________ test_unix_domain_adapter_monkeypatch _____________________ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s > conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:633: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 310s conn = self.poolmanager.connection_from_host( 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 310s return self.connection_from_context(request_context) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': '%2Ftmp%2Ftest_requests.520571_2793_124a0122', 'maxsize': 10, ...} 310s 310s def connection_from_context( 310s self, request_context: dict[str, typing.Any] 310s ) -> HTTPConnectionPool: 310s """ 310s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 310s 310s ``request_context`` must at least contain the ``scheme`` key and its 310s value must be a key in ``key_fn_by_scheme`` instance variable. 310s """ 310s if "strict" in request_context: 310s warnings.warn( 310s "The 'strict' parameter is no longer needed on Python 3+. " 310s "This will raise an error in urllib3 v2.1.0.", 310s DeprecationWarning, 310s ) 310s request_context.pop("strict") 310s 310s scheme = request_context["scheme"].lower() 310s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 310s if not pool_key_constructor: 310s > raise URLSchemeUnknown(scheme) 310s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 310s 310s During handling of the above exception, another exception occurred: 310s 310s def test_unix_domain_adapter_monkeypatch(): 310s with UnixSocketServerThread() as usock_thread: 310s with requests_unixsocket.monkeypatch('http+unix://'): 310s urlencoded_usock = requests.compat.quote_plus(usock_thread.usock) 310s url = 'http+unix://%s/path/to/page' % urlencoded_usock 310s 310s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 310s 'options']: 310s logger.debug('Calling session.%s(%r) ...', method, url) 310s > r = getattr(requests, method)(url) 310s 310s tests/test_requests_unixsocket.py:102: 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s /usr/lib/python3/dist-packages/requests_unixsocket/__init__.py:51: in get 310s return request('get', url, **kwargs) 310s /usr/lib/python3/dist-packages/requests_unixsocket/__init__.py:46: in request 310s return session.request(method=method, url=url, **kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 310s resp = self.send(prep, **send_kwargs) 310s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 310s r = adapter.send(request, **kwargs) 310s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 310s 310s self = 310s request = , stream = False, timeout = None, verify = True 310s cert = None 310s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 310s 310s def send( 310s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 310s ): 310s """Sends PreparedRequest object. Returns Response object. 310s 310s :param request: The :class:`PreparedRequest ` being sent. 310s :param stream: (optional) Whether to stream the request content. 310s :param timeout: (optional) How long to wait for the server to send 310s data before giving up, as a float, or a :ref:`(connect timeout, 310s read timeout) ` tuple. 310s :type timeout: float or tuple or urllib3 Timeout object 310s :param verify: (optional) Either a boolean, in which case it controls whether 310s we verify the server's TLS certificate, or a string, in which case it 310s must be a path to a CA bundle to use 310s :param cert: (optional) Any user-provided SSL certificate to be trusted. 310s :param proxies: (optional) The proxies dictionary to apply to the request. 310s :rtype: requests.Response 310s """ 310s 310s try: 310s conn = self.get_connection_with_tls_context( 310s request, verify, proxies=proxies, cert=cert 310s ) 310s except LocationValueError as e: 310s > raise InvalidURL(e, request=request) 310s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 310s 310s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 310s =========================== short test summary info ============================ 310s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_ok - reque... 310s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_url_with_query_params 310s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_error 310s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_proxies_error 310s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_monkeypatch 310s ======================== 5 failed in 133.87s (0:02:13) ========================= 311s autopkgtest [12:20:29]: test python3-requests-unixsocket: -----------------------] 312s python3-requests-unixsocket FAIL non-zero exit status 1 312s autopkgtest [12:20:30]: test python3-requests-unixsocket: - - - - - - - - - - results - - - - - - - - - - 312s autopkgtest [12:20:30]: @@@@@@@@@@@@@@@@@@@@ summary 312s python3-requests-unixsocket FAIL non-zero exit status 1 324s nova [W] Using flock in scalingstack-bos02-ppc64el 324s flock: timeout while waiting to get lock 324s Creating nova instance adt-oracular-ppc64el-python-requests-unixsocket-20240629-121518-juju-7f2275-prod-proposed-migration-environment-2-293dcfdf-3273-4d9f-95d2-6e2c4b3aca16 from image adt/ubuntu-oracular-ppc64el-server-20240629.img (UUID 96a73ab0-fc7e-4493-8860-649617ec8826)...