==> Building on vanillite ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list created directory packages/awxkit ./ .SRCINFO 1,009 100% 0.00kB/s 0:00:00 1,009 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=3/5) .nvchecker.toml 67 100% 65.43kB/s 0:00:00 67 100% 65.43kB/s 0:00:00 (xfr#2, to-chk=2/5) PKGBUILD 1,552 100% 1.48MB/s 0:00:00 1,552 100% 1.48MB/s 0:00:00 (xfr#3, to-chk=1/5) awxkit-24.6.1-2.log 242 100% 236.33kB/s 0:00:00 242 100% 236.33kB/s 0:00:00 (xfr#4, to-chk=0/5) sent 1,771 bytes received 133 bytes 3,808.00 bytes/sec total size is 2,824 speedup is 1.48 ==> Running extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg on remote host... ]2;🔵 Container arch-nspawn-411207 on vanillite.felixc.at\[?25l:: Synchronizing package databases... core downloading... extra downloading... error: restricting filesystem access failed because landlock is not supported by the kernel! :: Starting full system upgrade... there is nothing to do [?25h==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [felix]...done ==> Making package: awxkit 24.6.1-2 (Sun Dec 29 11:50:57 2024) ==> Retrieving sources...  -> Cloning awx git repo... Cloning into bare repository '/home/felix/packages/awxkit/awx'... remote: Enumerating objects: 403521, done. remote: Counting objects: 0% (1/238) remote: Counting objects: 1% (3/238) remote: Counting objects: 2% (5/238) remote: Counting objects: 3% (8/238) remote: Counting objects: 4% (10/238) remote: Counting objects: 5% (12/238) remote: Counting objects: 6% (15/238) remote: Counting objects: 7% (17/238) remote: Counting objects: 8% (20/238) remote: Counting objects: 9% (22/238) remote: Counting objects: 10% (24/238) remote: Counting objects: 11% (27/238) remote: Counting objects: 12% (29/238) remote: Counting objects: 13% (31/238) remote: Counting objects: 14% (34/238) remote: Counting objects: 15% (36/238) remote: Counting objects: 16% (39/238) remote: Counting objects: 17% (41/238) remote: Counting objects: 18% (43/238) remote: Counting objects: 19% (46/238) remote: Counting objects: 20% (48/238) remote: Counting objects: 21% (50/238) remote: Counting objects: 22% (53/238) remote: Counting objects: 23% (55/238) remote: Counting objects: 24% (58/238) remote: Counting objects: 25% (60/238) remote: Counting objects: 26% (62/238) remote: Counting objects: 27% (65/238) remote: Counting objects: 28% (67/238) remote: Counting objects: 29% (70/238) remote: Counting objects: 30% (72/238) remote: Counting objects: 31% (74/238) remote: Counting objects: 32% (77/238) remote: Counting objects: 33% (79/238) remote: Counting objects: 34% (81/238) remote: Counting objects: 35% (84/238) remote: Counting objects: 36% (86/238) remote: Counting objects: 37% (89/238) remote: Counting objects: 38% (91/238) remote: Counting objects: 39% (93/238) remote: Counting objects: 40% (96/238) remote: Counting objects: 41% (98/238) remote: Counting objects: 42% (100/238) remote: Counting objects: 43% (103/238) remote: Counting objects: 44% (105/238) remote: Counting objects: 45% (108/238) remote: Counting objects: 46% (110/238) remote: Counting objects: 47% (112/238) remote: Counting objects: 48% (115/238) remote: Counting objects: 49% (117/238) remote: Counting objects: 50% (119/238) remote: Counting objects: 51% (122/238) remote: Counting objects: 52% (124/238) remote: Counting objects: 53% (127/238) remote: Counting objects: 54% (129/238) remote: Counting objects: 55% (131/238) remote: Counting objects: 56% (134/238) remote: Counting objects: 57% (136/238) remote: Counting objects: 58% (139/238) remote: Counting objects: 59% (141/238) remote: Counting objects: 60% (143/238) remote: Counting objects: 61% (146/238) remote: Counting objects: 62% (148/238) remote: Counting objects: 63% (150/238) remote: Counting objects: 64% (153/238) remote: Counting objects: 65% (155/238) remote: Counting objects: 66% (158/238) remote: Counting objects: 67% (160/238) remote: Counting objects: 68% (162/238) remote: Counting objects: 69% (165/238) remote: Counting objects: 70% (167/238) remote: Counting objects: 71% (169/238) remote: Counting objects: 72% (172/238) remote: Counting objects: 73% (174/238) remote: Counting objects: 74% (177/238) remote: Counting objects: 75% (179/238) remote: Counting objects: 76% (181/238) remote: Counting objects: 77% (184/238) remote: Counting objects: 78% (186/238) remote: Counting objects: 79% (189/238) remote: Counting objects: 80% (191/238) remote: Counting objects: 81% (193/238) remote: Counting objects: 82% (196/238) remote: Counting objects: 83% (198/238) remote: Counting objects: 84% (200/238) remote: Counting objects: 85% (203/238) remote: Counting objects: 86% (205/238) remote: Counting objects: 87% (208/238) remote: Counting objects: 88% (210/238) remote: Counting objects: 89% (212/238) remote: Counting objects: 90% (215/238) remote: Counting objects: 91% (217/238) remote: Counting objects: 92% (219/238) remote: Counting objects: 93% (222/238) remote: Counting objects: 94% (224/238) remote: Counting objects: 95% (227/238) remote: Counting objects: 96% (229/238) remote: Counting objects: 97% (231/238) remote: Counting objects: 98% (234/238) remote: Counting objects: 99% (236/238) remote: Counting objects: 100% (238/238) remote: Counting objects: 100% (238/238), done. remote: Compressing objects: 0% (1/175) remote: Compressing objects: 1% (2/175) remote: Compressing objects: 2% (4/175) remote: Compressing objects: 3% (6/175) remote: Compressing objects: 4% (7/175) remote: Compressing objects: 5% (9/175) remote: Compressing objects: 6% (11/175) remote: Compressing objects: 7% (13/175) remote: Compressing objects: 8% (14/175) remote: Compressing objects: 9% (16/175) remote: Compressing objects: 10% (18/175) remote: Compressing objects: 11% (20/175) remote: Compressing objects: 12% (21/175) remote: Compressing objects: 13% (23/175) remote: Compressing objects: 14% (25/175) remote: Compressing objects: 15% (27/175) remote: Compressing objects: 16% (28/175) remote: Compressing objects: 17% (30/175) remote: Compressing objects: 18% (32/175) remote: Compressing objects: 19% (34/175) remote: Compressing objects: 20% (35/175) remote: Compressing objects: 21% (37/175) remote: Compressing objects: 22% (39/175) remote: Compressing objects: 23% (41/175) remote: Compressing objects: 24% (42/175) remote: Compressing objects: 25% (44/175) remote: Compressing objects: 26% (46/175) remote: Compressing objects: 27% (48/175) remote: Compressing objects: 28% (49/175) remote: Compressing objects: 29% (51/175) remote: Compressing objects: 30% (53/175) remote: Compressing objects: 31% (55/175) remote: Compressing objects: 32% (56/175) remote: Compressing objects: 33% (58/175) remote: Compressing objects: 34% (60/175) remote: Compressing objects: 35% (62/175) remote: Compressing objects: 36% (63/175) remote: Compressing objects: 37% (65/175) remote: Compressing objects: 38% (67/175) remote: Compressing objects: 39% (69/175) remote: Compressing objects: 40% (70/175) remote: Compressing objects: 41% (72/175) remote: Compressing objects: 42% (74/175) remote: Compressing objects: 43% (76/175) remote: Compressing objects: 44% (77/175) remote: Compressing objects: 45% (79/175) remote: Compressing objects: 46% (81/175) remote: Compressing objects: 47% (83/175) remote: Compressing objects: 48% (84/175) remote: Compressing objects: 49% (86/175) remote: Compressing objects: 50% (88/175) remote: Compressing objects: 51% (90/175) remote: Compressing objects: 52% (91/175) remote: Compressing objects: 53% (93/175) remote: Compressing objects: 54% (95/175) remote: Compressing objects: 55% (97/175) remote: Compressing objects: 56% (98/175) remote: Compressing objects: 57% (100/175) remote: Compressing objects: 58% (102/175) remote: Compressing objects: 59% (104/175) remote: Compressing objects: 60% (105/175) remote: Compressing objects: 61% (107/175) remote: Compressing objects: 62% (109/175) remote: Compressing objects: 63% (111/175) remote: Compressing objects: 64% (112/175) remote: Compressing objects: 65% (114/175) remote: Compressing objects: 66% (116/175) remote: Compressing objects: 67% (118/175) remote: Compressing objects: 68% (119/175) remote: Compressing objects: 69% (121/175) remote: Compressing objects: 70% (123/175) remote: Compressing objects: 71% (125/175) remote: Compressing objects: 72% (126/175) remote: Compressing objects: 73% (128/175) remote: Compressing objects: 74% (130/175) remote: Compressing objects: 75% (132/175) remote: Compressing objects: 76% (133/175) remote: Compressing objects: 77% (135/175) remote: Compressing objects: 78% (137/175) remote: Compressing objects: 79% (139/175) remote: Compressing objects: 80% (140/175) remote: Compressing objects: 81% (142/175) remote: Compressing objects: 82% (144/175) remote: Compressing objects: 83% (146/175) remote: Compressing objects: 84% (147/175) remote: Compressing objects: 85% (149/175) remote: Compressing objects: 86% (151/175) remote: Compressing objects: 87% (153/175) remote: Compressing objects: 88% (154/175) remote: Compressing objects: 89% (156/175) remote: Compressing objects: 90% (158/175) remote: Compressing objects: 91% (160/175) remote: Compressing objects: 92% (161/175) remote: Compressing objects: 93% (163/175) remote: Compressing objects: 94% (165/175) remote: Compressing objects: 95% (167/175) remote: Compressing objects: 96% (168/175) remote: Compressing objects: 97% (170/175) remote: Compressing objects: 98% (172/175) remote: Compressing objects: 99% (174/175) remote: Compressing objects: 100% (175/175) remote: Compressing objects: 100% (175/175), done. Receiving objects: 0% (1/403521) Receiving objects: 1% (4036/403521) Receiving objects: 2% (8071/403521), 3.80 MiB | 7.58 MiB/s Receiving objects: 3% (12106/403521), 3.80 MiB | 7.58 MiB/s Receiving objects: 3% (16000/403521), 3.80 MiB | 7.58 MiB/s Receiving objects: 4% (16141/403521), 8.26 MiB | 8.25 MiB/s Receiving objects: 5% (20177/403521), 8.26 MiB | 8.25 MiB/s Receiving objects: 6% (24212/403521), 8.26 MiB | 8.25 MiB/s Receiving objects: 7% (28247/403521), 11.93 MiB | 7.95 MiB/s Receiving objects: 8% (32282/403521), 11.93 MiB | 7.95 MiB/s Receiving objects: 9% (36317/403521), 11.93 MiB | 7.95 MiB/s Receiving objects: 9% (37071/403521), 15.65 MiB | 7.82 MiB/s Receiving objects: 10% (40353/403521), 15.65 MiB | 7.82 MiB/s Receiving objects: 11% (44388/403521), 15.65 MiB | 7.82 MiB/s Receiving objects: 11% (47409/403521), 20.97 MiB | 8.39 MiB/s Receiving objects: 11% (48109/403521), 40.16 MiB | 10.03 MiB/s Receiving objects: 12% (48423/403521), 40.16 MiB | 10.03 MiB/s Receiving objects: 12% (48944/403521), 54.91 MiB | 11.34 MiB/s Receiving objects: 12% (49158/403521), 62.24 MiB | 11.98 MiB/s Receiving objects: 12% (49327/403521), 77.12 MiB | 13.65 MiB/s Receiving objects: 13% (52458/403521), 84.26 MiB | 14.05 MiB/s Receiving objects: 14% (56493/403521), 90.06 MiB | 13.75 MiB/s Receiving objects: 14% (57982/403521), 90.06 MiB | 13.75 MiB/s Receiving objects: 15% (60529/403521), 96.96 MiB | 14.24 MiB/s Receiving objects: 16% (64564/403521), 96.96 MiB | 14.24 MiB/s Receiving objects: 16% (68558/403521), 109.96 MiB | 13.74 MiB/s Receiving objects: 17% (68599/403521), 109.96 MiB | 13.74 MiB/s Receiving objects: 18% (72634/403521), 109.96 MiB | 13.74 MiB/s Receiving objects: 19% (76669/403521), 115.69 MiB | 13.47 MiB/s Receiving objects: 19% (80685/403521), 115.69 MiB | 13.47 MiB/s Receiving objects: 20% (80705/403521), 115.69 MiB | 13.47 MiB/s Receiving objects: 21% (84740/403521), 122.39 MiB | 13.27 MiB/s Receiving objects: 22% (88775/403521), 128.86 MiB | 13.12 MiB/s Receiving objects: 23% (92810/403521), 128.86 MiB | 13.12 MiB/s Receiving objects: 24% (96846/403521), 128.86 MiB | 13.12 MiB/s Receiving objects: 24% (98017/403521), 128.86 MiB | 13.12 MiB/s Receiving objects: 25% (100881/403521), 135.35 MiB | 12.84 MiB/s Receiving objects: 26% (104916/403521), 142.00 MiB | 12.74 MiB/s Receiving objects: 27% (108951/403521), 142.00 MiB | 12.74 MiB/s Receiving objects: 28% (112986/403521), 142.00 MiB | 12.74 MiB/s Receiving objects: 29% (117022/403521), 142.00 MiB | 12.74 MiB/s Receiving objects: 29% (119767/403521), 142.00 MiB | 12.74 MiB/s Receiving objects: 30% (121057/403521), 142.00 MiB | 12.74 MiB/s Receiving objects: 31% (125092/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 32% (129127/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 33% (133162/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 34% (137198/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 35% (141233/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 36% (145268/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 37% (149303/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 38% (153338/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 39% (157374/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 40% (161409/403521), 148.43 MiB | 12.88 MiB/s Receiving objects: 41% (165444/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 42% (169479/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 43% (173515/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 44% (177550/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 45% (181585/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 46% (185620/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 46% (188376/403521), 154.18 MiB | 12.62 MiB/s Receiving objects: 47% (189655/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 48% (193691/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 49% (197726/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 50% (201761/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 51% (205796/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 52% (209831/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 53% (213867/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 54% (217902/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 55% (221937/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 56% (225972/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 57% (230007/403521), 159.79 MiB | 12.30 MiB/s Receiving objects: 58% (234043/403521), 165.17 MiB | 12.21 MiB/s Receiving objects: 59% (238078/403521), 165.17 MiB | 12.21 MiB/s Receiving objects: 59% (240664/403521), 165.17 MiB | 12.21 MiB/s Receiving objects: 60% (242113/403521), 170.36 MiB | 12.09 MiB/s Receiving objects: 61% (246148/403521), 170.36 MiB | 12.09 MiB/s Receiving objects: 62% (250184/403521), 170.36 MiB | 12.09 MiB/s Receiving objects: 63% (254219/403521), 170.36 MiB | 12.09 MiB/s Receiving objects: 64% (258254/403521), 170.36 MiB | 12.09 MiB/s Receiving objects: 65% (262289/403521), 175.60 MiB | 11.82 MiB/s Receiving objects: 66% (266324/403521), 175.60 MiB | 11.82 MiB/s Receiving objects: 67% (270360/403521), 175.60 MiB | 11.82 MiB/s Receiving objects: 67% (270548/403521), 175.60 MiB | 11.82 MiB/s Receiving objects: 68% (274395/403521), 184.23 MiB | 10.86 MiB/s Receiving objects: 68% (274881/403521), 184.23 MiB | 10.86 MiB/s Receiving objects: 68% (276283/403521), 202.13 MiB | 10.65 MiB/s Receiving objects: 68% (276307/403521), 214.57 MiB | 10.98 MiB/s Receiving objects: 68% (276345/403521), 226.41 MiB | 11.27 MiB/s Receiving objects: 69% (278430/403521), 226.41 MiB | 11.27 MiB/s Receiving objects: 70% (282465/403521), 226.41 MiB | 11.27 MiB/s Receiving objects: 71% (286500/403521), 226.41 MiB | 11.27 MiB/s Receiving objects: 72% (290536/403521), 232.19 MiB | 11.60 MiB/s Receiving objects: 72% (292007/403521), 237.59 MiB | 11.83 MiB/s Receiving objects: 72% (293233/403521), 247.33 MiB | 11.58 MiB/s Receiving objects: 73% (294571/403521), 247.33 MiB | 11.58 MiB/s Receiving objects: 74% (298606/403521), 247.33 MiB | 11.58 MiB/s Receiving objects: 75% (302641/403521), 247.33 MiB | 11.58 MiB/s Receiving objects: 75% (303787/403521), 252.20 MiB | 11.03 MiB/s Receiving objects: 75% (303796/403521), 267.48 MiB | 10.33 MiB/s Receiving objects: 76% (306676/403521), 272.60 MiB | 10.14 MiB/s Receiving objects: 76% (309095/403521), 278.03 MiB | 10.02 MiB/s Receiving objects: 77% (310712/403521), 283.31 MiB | 10.00 MiB/s Receiving objects: 77% (311250/403521), 289.06 MiB | 10.14 MiB/s Receiving objects: 77% (311278/403521), 294.62 MiB | 10.38 MiB/s Receiving objects: 77% (313591/403521), 304.77 MiB | 10.47 MiB/s Receiving objects: 78% (314747/403521), 315.59 MiB | 10.54 MiB/s Receiving objects: 78% (315234/403521), 321.12 MiB | 10.63 MiB/s Receiving objects: 78% (315244/403521), 333.11 MiB | 10.95 MiB/s Receiving objects: 79% (318782/403521), 333.11 MiB | 10.95 MiB/s Receiving objects: 80% (322817/403521), 333.11 MiB | 10.95 MiB/s Receiving objects: 81% (326853/403521), 333.11 MiB | 10.95 MiB/s Receiving objects: 82% (330888/403521), 337.35 MiB | 10.52 MiB/s Receiving objects: 82% (332554/403521), 337.35 MiB | 10.52 MiB/s Receiving objects: 83% (334923/403521), 337.35 MiB | 10.52 MiB/s Receiving objects: 84% (338958/403521), 341.49 MiB | 10.21 MiB/s Receiving objects: 85% (342993/403521), 341.49 MiB | 10.21 MiB/s Receiving objects: 86% (347029/403521), 341.49 MiB | 10.21 MiB/s Receiving objects: 86% (348036/403521), 347.42 MiB | 10.40 MiB/s Receiving objects: 87% (351064/403521), 353.00 MiB | 10.53 MiB/s Receiving objects: 87% (354600/403521), 358.25 MiB | 10.48 MiB/s Receiving objects: 88% (355099/403521), 358.25 MiB | 10.48 MiB/s Receiving objects: 89% (359134/403521), 358.25 MiB | 10.48 MiB/s Receiving objects: 90% (363169/403521), 364.61 MiB | 10.75 MiB/s Receiving objects: 91% (367205/403521), 364.61 MiB | 10.75 MiB/s Receiving objects: 92% (371240/403521), 364.61 MiB | 10.75 MiB/s Receiving objects: 93% (375275/403521), 364.61 MiB | 10.75 MiB/s Receiving objects: 94% (379310/403521), 364.61 MiB | 10.75 MiB/s Receiving objects: 95% (383345/403521), 370.43 MiB | 10.82 MiB/s Receiving objects: 95% (384957/403521), 370.43 MiB | 10.82 MiB/s Receiving objects: 96% (387381/403521), 374.43 MiB | 10.52 MiB/s Receiving objects: 97% (391416/403521), 374.43 MiB | 10.52 MiB/s Receiving objects: 98% (395451/403521), 374.43 MiB | 10.52 MiB/s Receiving objects: 99% (399486/403521), 374.43 MiB | 10.52 MiB/s remote: Total 403521 (delta 159), reused 67 (delta 63), pack-reused 403283 (from 2) Receiving objects: 100% (403521/403521), 381.05 MiB | 10.52 MiB/s Receiving objects: 100% (403521/403521), 381.94 MiB | 11.29 MiB/s, done. Resolving deltas: 0% (0/310420) Resolving deltas: 1% (3105/310420) Resolving deltas: 1% (3839/310420) Resolving deltas: 1% (5994/310420) Resolving deltas: 2% (6209/310420) Resolving deltas: 2% (7603/310420) Resolving deltas: 3% (9313/310420) Resolving deltas: 4% (12417/310420) Resolving deltas: 4% (13456/310420) Resolving deltas: 5% (15521/310420) Resolving deltas: 5% (17003/310420) Resolving deltas: 6% (18626/310420) Resolving deltas: 7% (21730/310420) Resolving deltas: 8% (24834/310420) Resolving deltas: 9% (27938/310420) Resolving deltas: 9% (30887/310420) Resolving deltas: 10% (31042/310420) Resolving deltas: 11% (34147/310420) Resolving deltas: 12% (37251/310420) Resolving deltas: 13% (40355/310420) Resolving deltas: 13% (40872/310420) Resolving deltas: 14% (43459/310420) Resolving deltas: 15% (46563/310420) Resolving deltas: 15% (46786/310420) Resolving deltas: 16% (49668/310420) Resolving deltas: 17% (52773/310420) Resolving deltas: 18% (55876/310420) Resolving deltas: 19% (58980/310420) Resolving deltas: 20% (62084/310420) Resolving deltas: 20% (63688/310420) Resolving deltas: 21% (65189/310420) Resolving deltas: 22% (68293/310420) Resolving deltas: 23% (71397/310420) Resolving deltas: 24% (74501/310420) Resolving deltas: 25% (77605/310420) Resolving deltas: 26% (80710/310420) Resolving deltas: 26% (81132/310420) Resolving deltas: 26% (83281/310420) Resolving deltas: 27% (83814/310420) Resolving deltas: 28% (86918/310420) Resolving deltas: 28% (89242/310420) Resolving deltas: 29% (90022/310420) Resolving deltas: 30% (93126/310420) Resolving deltas: 31% (96231/310420) Resolving deltas: 32% (99335/310420) Resolving deltas: 33% (102439/310420) Resolving deltas: 34% (105543/310420) Resolving deltas: 35% (108648/310420) Resolving deltas: 36% (111752/310420) Resolving deltas: 36% (112068/310420) Resolving deltas: 37% (114856/310420) Resolving deltas: 38% (117960/310420) Resolving deltas: 39% (121064/310420) Resolving deltas: 40% (124168/310420) Resolving deltas: 41% (127273/310420) Resolving deltas: 42% (130377/310420) Resolving deltas: 42% (131021/310420) Resolving deltas: 43% (133481/310420) Resolving deltas: 44% (136585/310420) Resolving deltas: 45% (139689/310420) Resolving deltas: 46% (142794/310420) Resolving deltas: 47% (145898/310420) Resolving deltas: 48% (149002/310420) Resolving deltas: 49% (152106/310420) Resolving deltas: 50% (155210/310420) Resolving deltas: 51% (158315/310420) Resolving deltas: 52% (161419/310420) Resolving deltas: 52% (162434/310420) Resolving deltas: 53% (164523/310420) Resolving deltas: 54% (167627/310420) Resolving deltas: 55% (170731/310420) Resolving deltas: 56% (173836/310420) Resolving deltas: 57% (176940/310420) Resolving deltas: 58% (180044/310420) Resolving deltas: 59% (183148/310420) Resolving deltas: 60% (186252/310420) Resolving deltas: 61% (189357/310420) Resolving deltas: 62% (192461/310420) Resolving deltas: 62% (192753/310420) Resolving deltas: 63% (195565/310420) Resolving deltas: 64% (198669/310420) Resolving deltas: 65% (201773/310420) Resolving deltas: 66% (204878/310420) Resolving deltas: 67% (207982/310420) Resolving deltas: 68% (211086/310420) Resolving deltas: 69% (214190/310420) Resolving deltas: 70% (217294/310420) Resolving deltas: 71% (220399/310420) Resolving deltas: 71% (221233/310420) Resolving deltas: 72% (223503/310420) Resolving deltas: 73% (226607/310420) Resolving deltas: 74% (229711/310420) Resolving deltas: 75% (232815/310420) Resolving deltas: 76% (235920/310420) Resolving deltas: 77% (239024/310420) Resolving deltas: 78% (242128/310420) Resolving deltas: 78% (242338/310420) Resolving deltas: 79% (245232/310420) Resolving deltas: 80% (248336/310420) Resolving deltas: 81% (251441/310420) Resolving deltas: 82% (254545/310420) Resolving deltas: 83% (257649/310420) Resolving deltas: 84% (260753/310420) Resolving deltas: 85% (263857/310420) Resolving deltas: 85% (265987/310420) Resolving deltas: 86% (266962/310420) Resolving deltas: 87% (270066/310420) Resolving deltas: 88% (273170/310420) Resolving deltas: 89% (276274/310420) Resolving deltas: 90% (279378/310420) Resolving deltas: 91% (282483/310420) Resolving deltas: 92% (285587/310420) Resolving deltas: 92% (286150/310420) Resolving deltas: 93% (288691/310420) Resolving deltas: 94% (291795/310420) Resolving deltas: 95% (294899/310420) Resolving deltas: 96% (298004/310420) Resolving deltas: 97% (301108/310420) Resolving deltas: 98% (304212/310420) Resolving deltas: 99% (307316/310420) Resolving deltas: 99% (308529/310420) Resolving deltas: 100% (310420/310420) Resolving deltas: 100% (310420/310420), done. ==> Validating source files with sha512sums... awx ... Passed ]2;🔵 Container arch-nspawn-412189 on vanillite.felixc.at\==> Making package: awxkit 24.6.1-2 (Sun Dec 29 11:52:23 2024) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (22) New Version Net Change Download Size extra/libyaml 0.2.5-3 0.16 MiB extra/mpdecimal 4.0.0-2 0.29 MiB extra/python-autocommand 2.2.2-7 0.08 MiB extra/python-charset-normalizer 3.4.0-5 0.44 MiB extra/python-idna 3.10-2 0.88 MiB extra/python-iniconfig 2.0.0-6 0.04 MiB extra/python-jaraco.collections 5.0.1-2 0.10 MiB extra/python-jaraco.context 5.3.0-3 0.04 MiB extra/python-jaraco.functools 4.1.0-1 0.07 MiB extra/python-jaraco.text 4.0.0-2 0.08 MiB extra/python-more-itertools 10.5.0-1 0.64 MiB extra/python-packaging 24.2-3 0.66 MiB extra/python-platformdirs 4.3.6-2 0.24 MiB extra/python-pluggy 1.5.0-3 0.20 MiB extra/python-urllib3 1.26.20-4 1.27 MiB extra/python-wheel 0.45.0-3 0.28 MiB core/python 3.13.1-1 108.57 MiB extra/python-pytest 1:8.3.4-1 3.92 MiB extra/python-requests 2.32.3-4 0.60 MiB extra/python-setuptools 1:75.2.0-4 8.05 MiB extra/python-websocket-client 1.8.0-2 0.63 MiB 0.11 MiB extra/python-yaml 6.0.2-2 0.91 MiB 0.19 MiB Total Download Size: 0.30 MiB Total Installed Size: 128.15 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-yaml-6.0.2-2-riscv64 downloading... python-websocket-client-1.8.0-2-any downloading... error: restricting filesystem access failed because landlock is not supported by the kernel! checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing mpdecimal... installing python... Optional dependencies for python python-setuptools: for building Python packages using tooling that is usually bundled with Python [pending] python-pip: for installing Python packages using tooling that is usually bundled with Python python-pipx: for installing Python software not packaged on Arch Linux sqlite: for a default database integration [installed] xz: for lzma [installed] tk: for tkinter installing python-iniconfig... installing python-packaging... installing python-pluggy... installing python-pytest... installing libyaml... installing python-yaml... installing python-charset-normalizer... installing python-idna... installing python-urllib3... Optional dependencies for python-urllib3 python-brotli: Brotli support python-certifi: security support python-cryptography: security support python-idna: security support [installed] python-pyopenssl: security support python-pysocks: SOCKS support installing python-requests... Optional dependencies for python-requests python-chardet: alternative character encoding library python-pysocks: SOCKS proxy support installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-jaraco.text... Optional dependencies for python-jaraco.text python-inflect: for show-newlines script installing python-jaraco.collections... installing python-platformdirs... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures python-setuptools: for legacy bdist_wheel subcommand [pending] installing python-setuptools... installing python-websocket-client... :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (13) New Version Net Change Download Size extra/oniguruma 6.9.9-1 0.82 MiB extra/perl-error 0.17029-7 0.04 MiB extra/perl-mailtools 2.22-1 0.10 MiB extra/perl-timedate 2.33-7 0.08 MiB extra/python-cffi 1.17.1-2 1.35 MiB extra/python-pycparser 2.22-3 1.69 MiB extra/python-pyproject-hooks 1.2.0-3 0.10 MiB extra/git 2.47.1-1 27.20 MiB extra/jq 1.7.1-2 0.71 MiB extra/python-build 1.2.2-3 0.20 MiB extra/python-cryptography 44.0.0-1 5.12 MiB 1.29 MiB extra/python-installer 0.7.0-10 0.17 MiB extra/python-setuptools-scm 8.1.0-3 0.37 MiB Total Download Size: 1.29 MiB Total Installed Size: 37.95 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-cryptography-44.0.0-1-riscv64 downloading... error: restricting filesystem access failed because landlock is not supported by the kernel! checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing perl-error... installing perl-timedate... installing perl-mailtools... installing git... Optional dependencies for git tk: gitk and git gui openssh: ssh transport and crypto perl-libwww: git svn perl-term-readkey: git svn and interactive.singlekey setting perl-io-socket-ssl: git send-email TLS support perl-authen-sasl: git send-email TLS support perl-mediawiki-api: git mediawiki support perl-datetime-format-iso8601: git mediawiki support perl-lwp-protocol-https: git mediawiki https support perl-cgi: gitweb (web interface) support python: git svn & git p4 [installed] subversion: git svn org.freedesktop.secrets: keyring credential helper libsecret: libsecret credential helper [installed] installing python-pyproject-hooks... installing python-build... Optional dependencies for python-build python-pip: to use as the Python package installer (default) python-uv: to use as the Python package installer python-virtualenv: to use virtualenv for build isolation installing python-installer... installing python-setuptools-scm... installing oniguruma... installing jq... installing python-pycparser... installing python-cffi... Optional dependencies for python-cffi python-setuptools: "limited api" version checking in cffi.setuptools_ext [installed] installing python-cryptography... :: Running post-transaction hooks... (1/4) Creating system user accounts... Creating group 'git' with GID 972. Creating user 'git' (git daemon user) with UID 972 and GID 972. (2/4) Reloading system manager configuration... Skipped: Current root is not booted. (3/4) Arming ConditionNeedsUpdate... (4/4) Warn about old perl modules [?25h==> Retrieving sources... ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Creating working copy of awx git repo... Cloning into 'awx'... done. Updating files: 75% (2285/3040) Updating files: 76% (2311/3040) Updating files: 77% (2341/3040) Updating files: 78% (2372/3040) Updating files: 79% (2402/3040) Updating files: 80% (2432/3040) Updating files: 81% (2463/3040) Updating files: 82% (2493/3040) Updating files: 83% (2524/3040) Updating files: 84% (2554/3040) Updating files: 85% (2584/3040) Updating files: 86% (2615/3040) Updating files: 87% (2645/3040) Updating files: 88% (2676/3040) Updating files: 89% (2706/3040) Updating files: 90% (2736/3040) Updating files: 91% (2767/3040) Updating files: 92% (2797/3040) Updating files: 93% (2828/3040) Updating files: 94% (2858/3040) Updating files: 95% (2888/3040) Updating files: 96% (2919/3040) Updating files: 97% (2949/3040) Updating files: 98% (2980/3040) Updating files: 99% (3010/3040) Updating files: 100% (3040/3040) Updating files: 100% (3040/3040), done. Switched to a new branch 'makepkg' ==> Starting build()... * Getting build dependencies for wheel... * Building wheel... WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section' Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject section = defn.get("tool", {})[tool_name] ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ KeyError: 'setuptools_scm' running bdist_wheel running build running build_py creating build/lib/awxkit copying awxkit/yaml_file.py -> build/lib/awxkit copying awxkit/config.py -> build/lib/awxkit copying awxkit/exceptions.py -> build/lib/awxkit copying awxkit/ws.py -> build/lib/awxkit copying awxkit/__init__.py -> build/lib/awxkit copying awxkit/words.py -> build/lib/awxkit creating build/lib/awxkit/scripts copying awxkit/scripts/basic_session.py -> build/lib/awxkit/scripts copying awxkit/scripts/__init__.py -> build/lib/awxkit/scripts creating build/lib/awxkit/awx copying awxkit/awx/inventory.py -> build/lib/awxkit/awx copying awxkit/awx/__init__.py -> build/lib/awxkit/awx copying awxkit/awx/utils.py -> build/lib/awxkit/awx creating build/lib/awxkit/utils copying awxkit/utils/toposort.py -> build/lib/awxkit/utils copying awxkit/utils/__init__.py -> build/lib/awxkit/utils creating build/lib/awxkit/cli copying awxkit/cli/resource.py -> build/lib/awxkit/cli copying awxkit/cli/custom.py -> build/lib/awxkit/cli copying awxkit/cli/options.py -> build/lib/awxkit/cli copying awxkit/cli/format.py -> build/lib/awxkit/cli copying awxkit/cli/client.py -> build/lib/awxkit/cli copying awxkit/cli/sphinx.py -> build/lib/awxkit/cli copying awxkit/cli/__init__.py -> build/lib/awxkit/cli copying awxkit/cli/stdout.py -> build/lib/awxkit/cli copying awxkit/cli/utils.py -> build/lib/awxkit/cli creating build/lib/awxkit/api copying awxkit/api/resources.py -> build/lib/awxkit/api copying awxkit/api/registry.py -> build/lib/awxkit/api copying awxkit/api/client.py -> build/lib/awxkit/api copying awxkit/api/__init__.py -> build/lib/awxkit/api copying awxkit/api/utils.py -> build/lib/awxkit/api creating build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_notifications.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_create.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_copy.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_survey.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_status.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_instance_groups.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/__init__.py -> build/lib/awxkit/api/mixins copying awxkit/api/mixins/has_variables.py -> build/lib/awxkit/api/mixins creating build/lib/awxkit/api/pages copying awxkit/api/pages/ad_hoc_commands.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/credential_input_sources.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/base.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/system_job_templates.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/subscriptions.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/roles.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/survey_spec.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/workflow_approvals.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/bulk.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/users.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/page.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/host_metrics.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/organizations.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/notifications.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/projects.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/applications.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/system_jobs.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/instances.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/workflow_job_nodes.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/inventory.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/config.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/ping.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/dashboard.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/activity_stream.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/metrics.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/labels.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/unified_jobs.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/authtoken.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/notification_templates.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/workflow_jobs.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/access_list.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/workflow_job_template_nodes.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/settings.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/execution_environments.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/jobs.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/api.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/instance_groups.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/workflow_job_templates.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/__init__.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/schedules.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/credentials.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/job_templates.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/mesh_visualizer.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/teams.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/workflow_approval_templates.py -> build/lib/awxkit/api/pages copying awxkit/api/pages/unified_job_templates.py -> build/lib/awxkit/api/pages running egg_info creating awxkit.egg-info writing awxkit.egg-info/PKG-INFO writing dependency_links to awxkit.egg-info/dependency_links.txt writing entry points to awxkit.egg-info/entry_points.txt writing requirements to awxkit.egg-info/requires.txt writing top-level names to awxkit.egg-info/top_level.txt writing manifest file 'awxkit.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'VERSION' warning: no files found matching '*.yml' under directory 'awxkit' warning: no files found matching '*.yml' under directory 'test' warning: no files found matching '*.md' under directory 'test' writing manifest file 'awxkit.egg-info/SOURCES.txt' /usr/lib/python3.13/site-packages/setuptools/command/build_py.py:218: _Warning: Package 'awxkit.cli.docs' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'awxkit.cli.docs' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'awxkit.cli.docs' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'awxkit.cli.docs' to be distributed and are already explicitly excluding 'awxkit.cli.docs' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) /usr/lib/python3.13/site-packages/setuptools/command/build_py.py:218: _Warning: Package 'awxkit.cli.docs.source' is absent from the `packages` configuration. !! ******************************************************************************** ############################ # Package would be ignored # ############################ Python recognizes 'awxkit.cli.docs.source' as an importable package[^1], but it is absent from setuptools' `packages` configuration. This leads to an ambiguous overall configuration. If you want to distribute this package, please make sure that 'awxkit.cli.docs.source' is explicitly added to the `packages` configuration field. Alternatively, you can also rely on setuptools' discovery methods (for example by using `find_namespace_packages(...)`/`find_namespace:` instead of `find_packages(...)`/`find:`). You can read more about "package discovery" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html If you don't want 'awxkit.cli.docs.source' to be distributed and are already explicitly excluding 'awxkit.cli.docs.source' via `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`, you can try to use `exclude_package_data`, or `include-package-data=False` in combination with a more fine grained `package-data` configuration. You can read more about "package data files" on setuptools documentation page: - https://setuptools.pypa.io/en/latest/userguide/datafiles.html [^1]: For Python, any directory (with suitable naming) can be imported, even if it does not contain any `.py` files. On the other hand, currently there is no concept of package data directory, all directories are treated like packages. ******************************************************************************** !! check.warn(importable) creating build/lib/awxkit/cli/docs copying awxkit/cli/docs/Makefile -> build/lib/awxkit/cli/docs copying awxkit/cli/docs/README.md -> build/lib/awxkit/cli/docs copying awxkit/cli/docs/make.bat -> build/lib/awxkit/cli/docs creating build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/authentication.rst -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/conf.py -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/examples.rst -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/index.rst -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/install.rst -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/output.rst -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/reference.rst -> build/lib/awxkit/cli/docs/source copying awxkit/cli/docs/source/usage.rst -> build/lib/awxkit/cli/docs/source installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/awxkit creating build/bdist.linux-riscv64/wheel/awxkit/scripts copying build/lib/awxkit/scripts/basic_session.py -> build/bdist.linux-riscv64/wheel/./awxkit/scripts copying build/lib/awxkit/scripts/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/scripts creating build/bdist.linux-riscv64/wheel/awxkit/awx copying build/lib/awxkit/awx/inventory.py -> build/bdist.linux-riscv64/wheel/./awxkit/awx copying build/lib/awxkit/awx/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/awx copying build/lib/awxkit/awx/utils.py -> build/bdist.linux-riscv64/wheel/./awxkit/awx creating build/bdist.linux-riscv64/wheel/awxkit/utils copying build/lib/awxkit/utils/toposort.py -> build/bdist.linux-riscv64/wheel/./awxkit/utils copying build/lib/awxkit/utils/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/utils copying build/lib/awxkit/yaml_file.py -> build/bdist.linux-riscv64/wheel/./awxkit copying build/lib/awxkit/config.py -> build/bdist.linux-riscv64/wheel/./awxkit copying build/lib/awxkit/exceptions.py -> build/bdist.linux-riscv64/wheel/./awxkit creating build/bdist.linux-riscv64/wheel/awxkit/cli copying build/lib/awxkit/cli/resource.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/custom.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli creating build/bdist.linux-riscv64/wheel/awxkit/cli/docs copying build/lib/awxkit/cli/docs/Makefile -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs copying build/lib/awxkit/cli/docs/make.bat -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs creating build/bdist.linux-riscv64/wheel/awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/index.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/examples.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/output.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/reference.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/usage.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/conf.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/authentication.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/source/install.rst -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs/source copying build/lib/awxkit/cli/docs/README.md -> build/bdist.linux-riscv64/wheel/./awxkit/cli/docs copying build/lib/awxkit/cli/options.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/format.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/client.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/sphinx.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/stdout.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/cli/utils.py -> build/bdist.linux-riscv64/wheel/./awxkit/cli copying build/lib/awxkit/ws.py -> build/bdist.linux-riscv64/wheel/./awxkit copying build/lib/awxkit/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit creating build/bdist.linux-riscv64/wheel/awxkit/api copying build/lib/awxkit/api/resources.py -> build/bdist.linux-riscv64/wheel/./awxkit/api copying build/lib/awxkit/api/registry.py -> build/bdist.linux-riscv64/wheel/./awxkit/api copying build/lib/awxkit/api/client.py -> build/bdist.linux-riscv64/wheel/./awxkit/api creating build/bdist.linux-riscv64/wheel/awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_notifications.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_create.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_copy.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_survey.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_status.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_instance_groups.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins copying build/lib/awxkit/api/mixins/has_variables.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/mixins creating build/bdist.linux-riscv64/wheel/awxkit/api/pages copying build/lib/awxkit/api/pages/ad_hoc_commands.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/credential_input_sources.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/base.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/system_job_templates.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/subscriptions.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/roles.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/survey_spec.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/workflow_approvals.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/bulk.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/users.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/page.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/host_metrics.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/organizations.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/notifications.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/projects.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/applications.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/system_jobs.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/instances.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/workflow_job_nodes.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/inventory.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/config.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/ping.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/dashboard.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/activity_stream.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/metrics.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/labels.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/unified_jobs.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/authtoken.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/notification_templates.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/workflow_jobs.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/access_list.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/workflow_job_template_nodes.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/settings.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/execution_environments.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/jobs.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/api.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/instance_groups.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/workflow_job_templates.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/schedules.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/credentials.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/job_templates.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/mesh_visualizer.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/teams.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/workflow_approval_templates.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/pages/unified_job_templates.py -> build/bdist.linux-riscv64/wheel/./awxkit/api/pages copying build/lib/awxkit/api/__init__.py -> build/bdist.linux-riscv64/wheel/./awxkit/api copying build/lib/awxkit/api/utils.py -> build/bdist.linux-riscv64/wheel/./awxkit/api copying build/lib/awxkit/words.py -> build/bdist.linux-riscv64/wheel/./awxkit running install_egg_info Copying awxkit.egg-info to build/bdist.linux-riscv64/wheel/./awxkit-24.6.1-py3.13.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/awxkit-24.6.1.dist-info/WHEEL creating '/build/awxkit/src/awx/awxkit/dist/.tmp-ssec4v8n/awxkit-24.6.1-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'awxkit/__init__.py' adding 'awxkit/config.py' adding 'awxkit/exceptions.py' adding 'awxkit/words.py' adding 'awxkit/ws.py' adding 'awxkit/yaml_file.py' adding 'awxkit/api/__init__.py' adding 'awxkit/api/client.py' adding 'awxkit/api/registry.py' adding 'awxkit/api/resources.py' adding 'awxkit/api/utils.py' adding 'awxkit/api/mixins/__init__.py' adding 'awxkit/api/mixins/has_copy.py' adding 'awxkit/api/mixins/has_create.py' adding 'awxkit/api/mixins/has_instance_groups.py' adding 'awxkit/api/mixins/has_notifications.py' adding 'awxkit/api/mixins/has_status.py' adding 'awxkit/api/mixins/has_survey.py' adding 'awxkit/api/mixins/has_variables.py' adding 'awxkit/api/pages/__init__.py' adding 'awxkit/api/pages/access_list.py' adding 'awxkit/api/pages/activity_stream.py' adding 'awxkit/api/pages/ad_hoc_commands.py' adding 'awxkit/api/pages/api.py' adding 'awxkit/api/pages/applications.py' adding 'awxkit/api/pages/authtoken.py' adding 'awxkit/api/pages/base.py' adding 'awxkit/api/pages/bulk.py' adding 'awxkit/api/pages/config.py' adding 'awxkit/api/pages/credential_input_sources.py' adding 'awxkit/api/pages/credentials.py' adding 'awxkit/api/pages/dashboard.py' adding 'awxkit/api/pages/execution_environments.py' adding 'awxkit/api/pages/host_metrics.py' adding 'awxkit/api/pages/instance_groups.py' adding 'awxkit/api/pages/instances.py' adding 'awxkit/api/pages/inventory.py' adding 'awxkit/api/pages/job_templates.py' adding 'awxkit/api/pages/jobs.py' adding 'awxkit/api/pages/labels.py' adding 'awxkit/api/pages/mesh_visualizer.py' adding 'awxkit/api/pages/metrics.py' adding 'awxkit/api/pages/notification_templates.py' adding 'awxkit/api/pages/notifications.py' adding 'awxkit/api/pages/organizations.py' adding 'awxkit/api/pages/page.py' adding 'awxkit/api/pages/ping.py' adding 'awxkit/api/pages/projects.py' adding 'awxkit/api/pages/roles.py' adding 'awxkit/api/pages/schedules.py' adding 'awxkit/api/pages/settings.py' adding 'awxkit/api/pages/subscriptions.py' adding 'awxkit/api/pages/survey_spec.py' adding 'awxkit/api/pages/system_job_templates.py' adding 'awxkit/api/pages/system_jobs.py' adding 'awxkit/api/pages/teams.py' adding 'awxkit/api/pages/unified_job_templates.py' adding 'awxkit/api/pages/unified_jobs.py' adding 'awxkit/api/pages/users.py' adding 'awxkit/api/pages/workflow_approval_templates.py' adding 'awxkit/api/pages/workflow_approvals.py' adding 'awxkit/api/pages/workflow_job_nodes.py' adding 'awxkit/api/pages/workflow_job_template_nodes.py' adding 'awxkit/api/pages/workflow_job_templates.py' adding 'awxkit/api/pages/workflow_jobs.py' adding 'awxkit/awx/__init__.py' adding 'awxkit/awx/inventory.py' adding 'awxkit/awx/utils.py' adding 'awxkit/cli/__init__.py' adding 'awxkit/cli/client.py' adding 'awxkit/cli/custom.py' adding 'awxkit/cli/format.py' adding 'awxkit/cli/options.py' adding 'awxkit/cli/resource.py' adding 'awxkit/cli/sphinx.py' adding 'awxkit/cli/stdout.py' adding 'awxkit/cli/utils.py' adding 'awxkit/cli/docs/Makefile' adding 'awxkit/cli/docs/README.md' adding 'awxkit/cli/docs/make.bat' adding 'awxkit/cli/docs/source/authentication.rst' adding 'awxkit/cli/docs/source/conf.py' adding 'awxkit/cli/docs/source/examples.rst' adding 'awxkit/cli/docs/source/index.rst' adding 'awxkit/cli/docs/source/install.rst' adding 'awxkit/cli/docs/source/output.rst' adding 'awxkit/cli/docs/source/reference.rst' adding 'awxkit/cli/docs/source/usage.rst' adding 'awxkit/scripts/__init__.py' adding 'awxkit/scripts/basic_session.py' adding 'awxkit/utils/__init__.py' adding 'awxkit/utils/toposort.py' adding 'awxkit-24.6.1.dist-info/METADATA' adding 'awxkit-24.6.1.dist-info/WHEEL' adding 'awxkit-24.6.1.dist-info/entry_points.txt' adding 'awxkit-24.6.1.dist-info/top_level.txt' adding 'awxkit-24.6.1.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel Successfully built awxkit-24.6.1-py3-none-any.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python cachedir: .pytest_cache rootdir: /build/awxkit/src/awx/awxkit configfile: tox.ini collecting ... collected 237 items / 1 deselected / 236 selected test/cli/test_client.py::test_help[-h] FAILED [ 0%] test/cli/test_client.py::test_help[--help] FAILED [ 0%] test/cli/test_client.py::test_connection_error FAILED [ 1%] test/cli/test_client.py::test_list_resources[] FAILED [ 1%] test/cli/test_client.py::test_list_resources[invalid] FAILED [ 2%] test/cli/test_config.py::test_host_from_environment FAILED [ 2%] test/cli/test_config.py::test_host_from_argv FAILED [ 2%] test/cli/test_config.py::test_username_and_password_from_environment FAILED [ 3%] test/cli/test_config.py::test_username_and_password_argv FAILED [ 3%] test/cli/test_config.py::test_config_precedence FAILED [ 4%] test/cli/test_config.py::test_config_file_precedence FAILED [ 4%] test/cli/test_config.py::test_config_file_precedence_2 FAILED [ 5%] test/cli/test_config.py::test_config_file FAILED [ 5%] test/cli/test_format.py::test_json_empty_list FAILED [ 5%] test/cli/test_format.py::test_yaml_empty_list FAILED [ 6%] test/cli/test_format.py::test_json_list FAILED [ 6%] test/cli/test_format.py::test_yaml_list FAILED [ 7%] test/cli/test_format.py::test_yaml_import FAILED [ 7%] test/cli/test_options.py::TestOptions::test_boolean_argument FAILED [ 8%] test/cli/test_options.py::TestOptions::test_choices FAILED [ 8%] test/cli/test_options.py::TestOptions::test_creation_optional_argument FAILED [ 8%] test/cli/test_options.py::TestOptions::test_creation_required_argument FAILED [ 9%] test/cli/test_options.py::TestOptions::test_integer_argument FAILED [ 9%] test/cli/test_options.py::TestOptions::test_list FAILED [ 10%] test/cli/test_options.py::TestOptions::test_list_filtering FAILED [ 10%] test/cli/test_options.py::TestOptions::test_list_not_filterable FAILED [ 11%] test/cli/test_options.py::TestSettingsOptions::test_list FAILED [ 11%] test/test_credentials.py::test_get_payload_field_and_value_from_config_cred[field-ssh-config_cred0-field-123] PASSED [ 11%] test/test_credentials.py::test_get_payload_field_and_value_from_config_cred[subscription-azure-config_cred1-subscription-123] PASSED [ 12%] test/test_credentials.py::test_get_payload_field_and_value_from_config_cred[project_id-gce-config_cred2-project-123] PASSED [ 12%] test/test_credentials.py::test_get_payload_field_and_value_from_config_cred[authorize_password-net-config_cred3-authorize_password-123] PASSED [ 13%] test/test_credentials.py::test_get_payload_field_and_value_from_kwarg[field-ssh-kwargs0-field-123] PASSED [ 13%] test/test_credentials.py::test_get_payload_field_and_value_from_kwarg[subscription-azure-kwargs1-subscription-123] PASSED [ 13%] test/test_credentials.py::test_get_payload_field_and_value_from_kwarg[project_id-gce-kwargs2-project-123] PASSED [ 14%] test/test_credentials.py::test_get_payload_field_and_value_from_kwarg[authorize_password-net-kwargs3-authorize_password-123] PASSED [ 14%] test/test_dependency_resolver.py::test_dependency_graph_single_page PASSED [ 15%] test/test_dependency_resolver.py::test_dependency_graph_page_with_optional PASSED [ 15%] test/test_dependency_resolver.py::test_dependency_graph_page_with_additionals PASSED [ 16%] test/test_dependency_resolver.py::test_optional_dependency_graph_single_page PASSED [ 16%] test/test_dependency_resolver.py::test_optional_dependency_graph_with_additional PASSED [ 16%] test/test_dependency_resolver.py::test_creation_order PASSED [ 17%] test/test_dependency_resolver.py::test_creation_order_with_loop PASSED [ 17%] test/test_dependency_resolver.py::test_separate_async_optionals_none_exist PASSED [ 18%] test/test_dependency_resolver.py::test_separate_async_optionals_two_exist PASSED [ 18%] test/test_dependency_resolver.py::test_separate_async_optionals_three_exist PASSED [ 19%] test/test_dependency_resolver.py::test_separate_async_optionals_not_has_create PASSED [ 19%] test/test_dependency_resolver.py::test_page_creation_order_single_page PASSED [ 19%] test/test_dependency_resolver.py::test_page_creation_order_optionals_provided PASSED [ 20%] test/test_dependency_resolver.py::test_page_creation_order_additionals_provided PASSED [ 20%] test/test_dependency_resolver.py::test_all_instantiated_dependencies_single_page PASSED [ 21%] test/test_dependency_resolver.py::test_all_instantiated_dependencies_single_page_are_ordered PASSED [ 21%] test/test_dependency_resolver.py::test_all_instantiated_dependencies_optionals PASSED [ 22%] test/test_dependency_resolver.py::test_all_instantiated_dependencies_optionals_are_ordered PASSED [ 22%] test/test_dependency_resolver.py::test_dependency_resolution_complete PASSED [ 22%] test/test_dependency_resolver.py::test_ds_mapping PASSED [ 23%] test/test_dependency_resolver.py::test_ds_multiple_word_class_and_attribute_name PASSED [ 23%] test/test_dependency_resolver.py::test_ds_missing_dependency PASSED [ 24%] test/test_dependency_resolver.py::test_teardown_calls_silent_cleanup PASSED [ 24%] test/test_dependency_resolver.py::test_teardown_dependency_store_cleared PASSED [ 25%] test/test_dependency_resolver.py::test_idempotent_teardown_dependency_store_cleared PASSED [ 25%] test/test_dependency_resolver.py::test_teardown_ds_cleared PASSED [ 25%] test/test_dependency_resolver.py::test_single_kwargs_class_in_create_and_update_dependencies PASSED [ 26%] test/test_dependency_resolver.py::test_no_tuple_for_class_arg_causes_shared_dependencies_staggered PASSED [ 26%] test/test_dependency_resolver.py::test_no_tuple_for_class_arg_causes_shared_dependencies_nested_staggering PASSED [ 27%] test/test_dependency_resolver.py::test_tuple_for_class_arg_causes_unshared_dependencies_when_downstream PASSED [ 27%] test/test_dependency_resolver.py::test_tuples_for_class_arg_cause_unshared_dependencies_when_downstream PASSED [ 27%] test/test_dependency_resolver.py::test_not_has_create_default_dependency PASSED [ 28%] test/test_dependency_resolver.py::test_not_has_create_passed_dependency PASSED [ 28%] test/test_dependency_resolver.py::test_has_create_stored_as_parent_dependency PASSED [ 29%] test/test_dependency_resolver.py::test_subclass_or_parent_dynamic_not_has_create_dependency_declaration[mixinusera-MixinUserA] PASSED [ 29%] test/test_dependency_resolver.py::test_subclass_or_parent_dynamic_not_has_create_dependency_declaration[mixinuserb-MixinUserB] PASSED [ 30%] test/test_dependency_resolver.py::test_subclass_or_parent_dynamic_not_has_create_dependency_declaration[mixinuserc-MixinUserC] PASSED [ 30%] test/test_dependency_resolver.py::test_subclass_or_parent_dynamic_has_create_dependency_declaration[mixinuserb-MixinUserB] PASSED [ 30%] test/test_dependency_resolver.py::test_subclass_or_parent_dynamic_has_create_dependency_declaration[mixinuserc-MixinUserC] PASSED [ 31%] test/test_dependency_resolver.py::test_subclass_or_parent_dynamic_has_create_dependency_declaration[mixinuserd-MixinUserD] PASSED [ 31%] test/test_registry.py::test_url_pattern PASSED [ 32%] test/test_registry.py::test_methodless_get_from_empty_registry PASSED [ 32%] test/test_registry.py::test_method_get_from_empty_registry PASSED [ 33%] test/test_registry.py::test_methodless_setdefault_methodless_get PASSED [ 33%] test/test_registry.py::test_methodless_setdefault_method_get PASSED [ 33%] test/test_registry.py::test_method_setdefault_methodless_get PASSED [ 34%] test/test_registry.py::test_method_setdefault_matching_method_get PASSED [ 34%] test/test_registry.py::test_method_setdefault_nonmatching_method_get PASSED [ 35%] test/test_registry.py::test_multimethod_setdefault_matching_method_get PASSED [ 35%] test/test_registry.py::test_multimethod_setdefault_nonmatching_method_get PASSED [ 36%] test/test_registry.py::test_wildcard_setdefault_methodless_get PASSED [ 36%] test/test_registry.py::test_wildcard_setdefault_method_get PASSED [ 36%] test/test_registry.py::test_regex_method_setdefaults_over_wildcard_method_get PASSED [ 37%] test/test_registry.py::test_methodless_registration_with_matching_path_methodless_get PASSED [ 37%] test/test_registry.py::test_methodless_registraion_with_nonmatching_path_methodless_get PASSED [ 38%] test/test_registry.py::test_methodless_registration_with_matching_path_nonmatching_method_get PASSED [ 38%] test/test_registry.py::test_method_registration_with_matching_path_matching_method_get PASSED [ 38%] test/test_registry.py::test_method_registration_with_matching_path_nonmatching_method_get PASSED [ 39%] test/test_registry.py::test_multimethod_registration_with_matching_path_matching_method_get PASSED [ 39%] test/test_registry.py::test_multimethod_registration_with_path_matching_method_get PASSED [ 40%] test/test_registry.py::test_multipath_methodless_registration_with_matching_path_methodless_get PASSED [ 40%] test/test_registry.py::test_multipath_methodless_registration_with_matching_path_nonmatching_method_get PASSED [ 41%] test/test_registry.py::test_multipath_method_registration_with_matching_path_matching_method_get PASSED [ 41%] test/test_registry.py::test_multipath_partial_method_registration_with_matching_path_matching_method_get PASSED [ 41%] test/test_registry.py::test_wildcard_method_registration_with_methodless_get PASSED [ 42%] test/test_registry.py::test_wildcard_method_registration_with_method_get PASSED [ 42%] test/test_registry.py::test_wildcard_and_specific_method_registration_acts_as_default PASSED [ 43%] test/test_registry.py::test_multiple_method_registrations_disallowed_for_single_path_single_registration[method] PASSED [ 43%] test/test_registry.py::test_multiple_method_registrations_disallowed_for_single_path_single_registration[.*] PASSED [ 44%] test/test_registry.py::test_multiple_method_registrations_disallowed_for_single_path_multiple_registrations[method] PASSED [ 44%] test/test_registry.py::test_multiple_method_registrations_disallowed_for_single_path_multiple_registrations[.*] PASSED [ 44%] test/test_registry.py::test_paths_can_be_patterns PASSED [ 45%] test/test_registry.py::test_mixed_form_single_registration PASSED [ 45%] test/test_registry.py::test_mixed_form_single_registration_with_methodless_default PASSED [ 46%] test/test_registry.py::test_mixed_form_single_registration_with_method_default PASSED [ 46%] test/test_utils.py::test_to_bool[True-True] PASSED [ 47%] test/test_utils.py::test_to_bool[False-False] PASSED [ 47%] test/test_utils.py::test_to_bool[1-True] PASSED [ 47%] test/test_utils.py::test_to_bool[0-False0] PASSED [ 48%] test/test_utils.py::test_to_bool[1.0-True] PASSED [ 48%] test/test_utils.py::test_to_bool[0.0-False] PASSED [ 49%] test/test_utils.py::test_to_bool[TrUe-True] PASSED [ 49%] test/test_utils.py::test_to_bool[FalSe-False] PASSED [ 50%] test/test_utils.py::test_to_bool[yEs-True] PASSED [ 50%] test/test_utils.py::test_to_bool[No-False] PASSED [ 50%] test/test_utils.py::test_to_bool[oN-True] PASSED [ 51%] test/test_utils.py::test_to_bool[oFf-False] PASSED [ 51%] test/test_utils.py::test_to_bool[asdf-True] PASSED [ 52%] test/test_utils.py::test_to_bool[0-False1] PASSED [ 52%] test/test_utils.py::test_to_bool[-False] PASSED [ 52%] test/test_utils.py::test_to_bool[inp15-True] PASSED [ 53%] test/test_utils.py::test_to_bool[inp16-False] PASSED [ 53%] test/test_utils.py::test_to_bool[inp17-True] PASSED [ 54%] test/test_utils.py::test_to_bool[inp18-False] PASSED [ 54%] test/test_utils.py::test_to_bool[inp19-True] PASSED [ 55%] test/test_utils.py::test_to_bool[inp20-False] PASSED [ 55%] test/test_utils.py::test_load_valid_json_or_yaml[{}-out0] PASSED [ 55%] test/test_utils.py::test_load_valid_json_or_yaml[{'null': null}-out1] PASSED [ 56%] test/test_utils.py::test_load_valid_json_or_yaml[{'bool': true}-out2] PASSED [ 56%] test/test_utils.py::test_load_valid_json_or_yaml[{'bool': false}-out3] PASSED [ 57%] test/test_utils.py::test_load_valid_json_or_yaml[{'int': 0}-out4] PASSED [ 57%] test/test_utils.py::test_load_valid_json_or_yaml[{'float': 1.0}-out5] PASSED [ 58%] test/test_utils.py::test_load_valid_json_or_yaml[{'str': 'abc'}-out6] PASSED [ 58%] test/test_utils.py::test_load_valid_json_or_yaml[{'obj': {}}-out7] PASSED [ 58%] test/test_utils.py::test_load_valid_json_or_yaml[{'list': []}-out8] PASSED [ 59%] test/test_utils.py::test_load_valid_json_or_yaml[----None] PASSED [ 59%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'null': null-out10] PASSED [ 60%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'bool': true-out11] PASSED [ 60%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'bool': false-out12] PASSED [ 61%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'int': 0-out13] PASSED [ 61%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'float': 1.0-out14] PASSED [ 61%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'string': 'abc'-out15] PASSED [ 62%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'obj': {}-out16] PASSED [ 62%] test/test_utils.py::test_load_valid_json_or_yaml[---\n'list': []-out17] PASSED [ 63%] test/test_utils.py::test_load_valid_json_or_yaml[-None] PASSED [ 63%] test/test_utils.py::test_load_valid_json_or_yaml['null': null-out19] PASSED [ 63%] test/test_utils.py::test_load_valid_json_or_yaml['bool': true-out20] PASSED [ 64%] test/test_utils.py::test_load_valid_json_or_yaml['bool': false-out21] PASSED [ 64%] test/test_utils.py::test_load_valid_json_or_yaml['int': 0-out22] PASSED [ 65%] test/test_utils.py::test_load_valid_json_or_yaml['float': 1.0-out23] PASSED [ 65%] test/test_utils.py::test_load_valid_json_or_yaml['string': 'abc'-out24] PASSED [ 66%] test/test_utils.py::test_load_valid_json_or_yaml['obj': {}-out25] PASSED [ 66%] test/test_utils.py::test_load_valid_json_or_yaml['list': []-out26] PASSED [ 66%] test/test_utils.py::test_load_invalid_json_or_yaml[True] PASSED [ 67%] test/test_utils.py::test_load_invalid_json_or_yaml[False] PASSED [ 67%] test/test_utils.py::test_load_invalid_json_or_yaml[0] PASSED [ 68%] test/test_utils.py::test_load_invalid_json_or_yaml[1.0] PASSED [ 68%] test/test_utils.py::test_load_invalid_json_or_yaml[inp4] PASSED [ 69%] test/test_utils.py::test_load_invalid_json_or_yaml[inp5] PASSED [ 69%] test/test_utils.py::test_load_invalid_json_or_yaml[None] PASSED [ 69%] test/test_utils.py::test_random_titles_are_unicode[True] PASSED [ 70%] test/test_utils.py::test_random_titles_are_unicode[False] PASSED [ 70%] test/test_utils.py::test_random_titles_generates_correct_characters[True] PASSED [ 71%] test/test_utils.py::test_random_titles_generates_correct_characters[False] PASSED [ 71%] test/test_utils.py::test_class_name_to_kw_arg[ClassNameShouldChange-class_name_should_change] PASSED [ 72%] test/test_utils.py::test_class_name_to_kw_arg[classnameshouldntchange-classnameshouldntchange] PASSED [ 72%] test/test_utils.py::test_class_name_to_kw_arg[Classspacingshouldntchange-classspacingshouldntchange] PASSED [ 72%] test/test_utils.py::test_class_name_to_kw_arg[Class1Name2Should3Change-class_1_name_2_should_3_change] PASSED [ 73%] test/test_utils.py::test_class_name_to_kw_arg[Class123name234should345change456-class_123_name_234_should_345_change_456] PASSED [ 73%] test/test_utils.py::test_are_same_endpoint[/api/v2/resources/-/api/v2/resources/-True] PASSED [ 74%] test/test_utils.py::test_are_same_endpoint[/api/v2/resources/-/api/v2/resources/?test=ignored-True] PASSED [ 74%] test/test_utils.py::test_are_same_endpoint[/api/v2/resources/?one=ignored-/api/v2/resources/?two=ignored-True] PASSED [ 75%] test/test_utils.py::test_are_same_endpoint[http://one.com-http://one.com-True] PASSED [ 75%] test/test_utils.py::test_are_same_endpoint[http://one.com-http://www.one.com-True] PASSED [ 75%] test/test_utils.py::test_are_same_endpoint[http://one.com-http://one.com?test=ignored-True] PASSED [ 76%] test/test_utils.py::test_are_same_endpoint[http://one.com-http://www.one.com?test=ignored-True] PASSED [ 76%] test/test_utils.py::test_are_same_endpoint[http://one.com-https://one.com-False] PASSED [ 77%] test/test_utils.py::test_are_same_endpoint[http://one.com-https://one.com?test=ignored-False] PASSED [ 77%] test/test_utils.py::test_version_from_endpoint[/api/v2/resources/-v2] PASSED [ 77%] test/test_utils.py::test_version_from_endpoint[/api/v2000/resources/-v2000] PASSED [ 78%] test/test_utils.py::test_version_from_endpoint[/api/-common] PASSED [ 78%] test/test_utils.py::test_filter_by_class_with_subclass_class PASSED [ 79%] test/test_utils.py::test_filter_by_class_with_subclass_instance PASSED [ 79%] test/test_utils.py::test_filter_by_class_no_arg_tuples PASSED [ 80%] test/test_utils.py::test_filter_by_class_with_arg_tuples_containing_class PASSED [ 80%] test/test_utils.py::test_filter_by_class_with_arg_tuples_containing_subclass PASSED [ 80%] test/test_utils.py::test_filter_by_class_with_arg_tuples_containing_truthy[True] PASSED [ 81%] test/test_utils.py::test_filter_by_class_with_arg_tuples_containing_truthy[123] PASSED [ 81%] test/test_utils.py::test_filter_by_class_with_arg_tuples_containing_truthy[yes] PASSED [ 82%] test/test_utils.py::test_seconds_since_date_string[2017-12-20T00:00:01.5Z-now0-1.25] PASSED [ 82%] test/test_utils.py::test_seconds_since_date_string[2017-12-20T00:00:01.5Z-now1-0.0] PASSED [ 83%] test/test_utils.py::test_seconds_since_date_string[2017-12-20T00:00:01.5Z-now2--1.0] PASSED [ 83%] test/test_utils.py::TestPollUntil::test_callback_called_once_for_non_positive_timeout[0] PASSED [ 83%] test/test_utils.py::TestPollUntil::test_callback_called_once_for_non_positive_timeout[0.0] PASSED [ 84%] test/test_utils.py::TestPollUntil::test_callback_called_once_for_non_positive_timeout[-0.5] PASSED [ 84%] test/test_utils.py::TestPollUntil::test_callback_called_once_for_non_positive_timeout[-1] PASSED [ 85%] test/test_utils.py::TestPollUntil::test_callback_called_once_for_non_positive_timeout[-9999999] PASSED [ 85%] test/test_utils.py::TestPollUntil::test_exc_raised_on_timeout PASSED [ 86%] test/test_utils.py::TestPollUntil::test_non_falsey_callback_value_is_returned[callback_value0] PASSED [ 86%] test/test_utils.py::TestPollUntil::test_non_falsey_callback_value_is_returned[foo] PASSED [ 86%] test/test_utils.py::TestPollUntil::test_non_falsey_callback_value_is_returned[True] PASSED [ 87%] test/test_utils.py::TestPseudoNamespace::test_set_item_check_item PASSED [ 87%] test/test_utils.py::TestPseudoNamespace::test_set_item_check_attr PASSED [ 88%] test/test_utils.py::TestPseudoNamespace::test_set_attr_check_item PASSED [ 88%] test/test_utils.py::TestPseudoNamespace::test_set_attr_check_attr PASSED [ 88%] test/test_utils.py::TestPseudoNamespace::test_auto_dicts_cast PASSED [ 89%] test/test_utils.py::TestPseudoNamespace::test_auto_list_of_dicts_cast PASSED [ 89%] test/test_utils.py::TestPseudoNamespace::test_auto_tuple_of_dicts_cast PASSED [ 90%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_dict PASSED [ 90%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_kwargs PASSED [ 91%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_dict_and_kwargs PASSED [ 91%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_nested_dict PASSED [ 91%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_nested_dict_with_list PASSED [ 92%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_nested_dict_with_lists PASSED [ 92%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_nested_dict_with_tuple PASSED [ 93%] test/test_utils.py::TestPseudoNamespace::test_instantiation_via_nested_dict_with_tuples PASSED [ 93%] test/test_utils.py::TestPseudoNamespace::test_update_with_nested_dict PASSED [ 94%] test/test_utils.py::TestPseudoNamespace::test_update_with_nested_dict_with_lists PASSED [ 94%] test/test_utils.py::TestPseudoNamespace::test_update_with_nested_dict_with_tuples PASSED [ 94%] test/test_utils.py::TestUpdatePayload::test_empty_payload PASSED [ 95%] test/test_utils.py::TestUpdatePayload::test_untouched_payload PASSED [ 95%] test/test_utils.py::TestUpdatePayload::test_overwritten_payload PASSED [ 96%] test/test_utils.py::TestUpdatePayload::test_falsy_kwargs PASSED [ 96%] test/test_utils.py::TestUpdatePayload::test_not_provided_strips_payload PASSED [ 97%] test/test_utils.py::test_to_ical PASSED [ 97%] test/test_ws.py::test_explicit_hostname PASSED [ 97%] test/test_ws.py::test_websocket_suffix PASSED [ 98%] test/test_ws.py::test_urlparsing[https://somename:123-result0] PASSED [ 98%] test/test_ws.py::test_urlparsing[http://othername:456-result1] PASSED [ 99%] test/test_ws.py::test_urlparsing[http://othername-result2] PASSED [ 99%] test/test_ws.py::test_urlparsing[https://othername-result3] PASSED [100%] =================================== FAILURES =================================== ________________________________ test_help[-h] _________________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/cli/__init__.py", line 23, in run cli.parse_args(argv or sys.argv) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_client.py", line 23, in test_help run(['awx {}'.format(help_param)]) ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/__init__.py", line 65, in run if cli.verbose: ^^^^^^^^^^^ AttributeError: 'CLI' object has no attribute 'verbose' ______________________________ test_help[--help] _______________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/cli/__init__.py", line 23, in run cli.parse_args(argv or sys.argv) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_client.py", line 23, in test_help run(['awx {}'.format(help_param)]) ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/__init__.py", line 65, in run if cli.verbose: ^^^^^^^^^^^ AttributeError: 'CLI' object has no attribute 'verbose' ____________________________ test_connection_error _____________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_client.py", line 33, in test_connection_error cli.parse_args(['awx']) ~~~~~~~~~~~~~~^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given ____________________________ test_list_resources[] _____________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_client.py", line 42, in test_list_resources cli.parse_args(['awx {}'.format(resource)]) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _________________________ test_list_resources[invalid] _________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_client.py", line 42, in test_list_resources cli.parse_args(['awx {}'.format(resource)]) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given __________________________ test_host_from_environment __________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 12, in test_host_from_environment cli.parse_args(['awx'], env={'CONTROLLER_HOST': 'https://xyz.local'}) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _____________________________ test_host_from_argv ______________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 20, in test_host_from_argv cli.parse_args(['awx', '--conf.host', 'https://xyz.local']) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _________________ test_username_and_password_from_environment __________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 28, in test_username_and_password_from_environment cli.parse_args(['awx'], env={'CONTROLLER_USERNAME': 'mary', 'CONTROLLER_PASSWORD': 'secret'}) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _______________________ test_username_and_password_argv ________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 38, in test_username_and_password_argv cli.parse_args(['awx', '--conf.username', 'mary', '--conf.password', 'secret']) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given ____________________________ test_config_precedence ____________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 48, in test_config_precedence cli.parse_args(['awx', '--conf.username', 'mary', '--conf.password', 'secret'], env={'CONTROLLER_USERNAME': 'IGNORE', 'CONTROLLER_PASSWORD': 'IGNORE'}) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _________________________ test_config_file_precedence __________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 63, in test_config_file_precedence cli.parse_args( ~~~~~~~~~~~~~~^ ['awx', '--conf.username', 'mary', '--conf.password', 'secret'], ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ...<2 lines>... }, ^^ ) ^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given ________________________ test_config_file_precedence_2 _________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 83, in test_config_file_precedence_2 cli.parse_args(['awx'], env={'AWXKIT_CREDENTIAL_FILE': '/tmp/awx-test/config.json', 'TOWER_USERNAME': 'mary', 'TOWER_PASSWORD': 'secret'}) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _______________________________ test_config_file _______________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_config.py", line 98, in test_config_file cli.parse_args( ~~~~~~~~~~~~~~^ ['awx'], ^^^^^^^^ ...<2 lines>... }, ^^ ) ^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given _____________________________ test_json_empty_list _____________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_format.py", line 14, in test_json_empty_list page = Page.from_json({'results': []}) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' _____________________________ test_yaml_empty_list _____________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_format.py", line 20, in test_yaml_empty_list page = Page.from_json({'results': []}) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' ________________________________ test_json_list ________________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_format.py", line 33, in test_json_list page = Users.from_json(users) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/mixins/has_create.py", line 220, in __init__ super(HasCreate, self).__init__(*a, **kw) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' ________________________________ test_yaml_list ________________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_format.py", line 46, in test_yaml_list page = Users.from_json(users) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/mixins/has_create.py", line 220, in __init__ super(HasCreate, self).__init__(*a, **kw) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' _______________________________ test_yaml_import _______________________________ Traceback (most recent call last): File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 341, in from_call result: TResult | None = func() ~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 242, in lambda: runtest_hook(item=item, **kwds), when=when, reraise=reraise ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 92, in pytest_runtest_call yield from thread_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/threadexception.py", line 68, in thread_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 95, in pytest_runtest_call yield from unraisable_exception_runtest_hook() File "/usr/lib/python3.13/site-packages/_pytest/unraisableexception.py", line 70, in unraisable_exception_runtest_hook yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 846, in pytest_runtest_call yield from self._runtest_for(item, "call") File "/usr/lib/python3.13/site-packages/_pytest/logging.py", line 829, in _runtest_for yield File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/capture.py", line 880, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 122, in _multicall teardown.throw(exception) # type: ignore[union-attr] ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/_pytest/skipping.py", line 257, in pytest_runtest_call return (yield) ^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/runner.py", line 174, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 1627, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_hooks.py", line 513, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 139, in _multicall raise exception.with_traceback(exception.__traceback__) File "/usr/lib/python3.13/site-packages/pluggy/_callers.py", line 103, in _multicall res = hook_impl.function(*args) File "/usr/lib/python3.13/site-packages/_pytest/python.py", line 159, in pytest_pyfunc_call result = testfunction(**testargs) File "/build/awxkit/src/awx/awxkit/test/cli/test_format.py", line 67, in test_yaml_import cli.parse_args(['--conf.format', 'yaml']) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/cli/client.py", line 296, in parse_args self.args = self.parser.parse_known_args(self.argv)[0] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1899, in parse_known_args return self._parse_known_args2(args, namespace, intermixed=False) ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/argparse.py", line 1928, in _parse_known_args2 namespace, args = self._parse_known_args(args, namespace, intermixed) ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given ______________________ TestOptions.test_boolean_argument _______________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 134, in test_boolean_argument page = OptionsPage.from_json( { ...<3 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' ___________________________ TestOptions.test_choices ___________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 150, in test_choices page = OptionsPage.from_json( { ...<15 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' _________________ TestOptions.test_creation_optional_argument __________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 81, in test_creation_optional_argument page = OptionsPage.from_json( { ...<8 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' _________________ TestOptions.test_creation_required_argument __________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 102, in test_creation_required_argument page = OptionsPage.from_json( { ...<3 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' ______________________ TestOptions.test_integer_argument _______________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 118, in test_integer_argument page = OptionsPage.from_json( { ...<3 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' ____________________________ TestOptions.test_list _____________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 35, in test_list page = OptionsPage.from_json( { ...<4 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' _______________________ TestOptions.test_list_filtering ________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 47, in test_list_filtering page = OptionsPage.from_json( { ...<4 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' _____________________ TestOptions.test_list_not_filterable _____________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 64, in test_list_not_filterable page = OptionsPage.from_json( { ...<4 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' ________________________ TestSettingsOptions.test_list _________________________ Traceback (most recent call last): File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 77, in __getattr__ return self.__getitem__(attr) ~~~~~~~~~~~~~~~~^^^^^^ KeyError: 'base_url' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor yield File "/usr/lib/python3.13/unittest/case.py", line 651, in run self._callTestMethod(testMethod) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod if method() is not None: ~~~~~~^^ File "/build/awxkit/src/awx/awxkit/test/cli/test_options.py", line 195, in test_list page = OptionsPage.from_json( { ...<5 lines>... } ) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 155, in from_json return cls(r=resp, connection=connection) File "/build/awxkit/src/awx/awxkit/awxkit/api/pages/page.py", line 99, in __init__ self.connection = connection or Connection(config.base_url, kw.get('verify', not config.assume_untrusted)) ^^^^^^^^^^^^^^^ File "/build/awxkit/src/awx/awxkit/awxkit/utils/__init__.py", line 79, in __getattr__ raise AttributeError("{!r} has no attribute {!r}".format(self.__class__.__name__, attr)) AttributeError: 'PseudoNamespace' has no attribute 'base_url' =============================== warnings summary =============================== awxkit/cli/client.py:5 /build/awxkit/src/awx/awxkit/awxkit/cli/client.py:5: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html import pkg_resources test/test_utils.py::test_to_ical /build/awxkit/src/awx/awxkit/test/test_utils.py:382: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). now = datetime.utcnow() -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED test/cli/test_client.py::test_help[-h] - AttributeError: 'CLI' object has no attribute 'verbose' FAILED test/cli/test_client.py::test_help[--help] - AttributeError: 'CLI' object has no attribute 'verbose' FAILED test/cli/test_client.py::test_connection_error - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_client.py::test_list_resources[] - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_client.py::test_list_resources[invalid] - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_host_from_environment - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_host_from_argv - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_username_and_password_from_environment - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_username_and_password_argv - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_config_precedence - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_config_file_precedence - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_config_file_precedence_2 - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_config.py::test_config_file - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_format.py::test_json_empty_list - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_format.py::test_yaml_empty_list - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_format.py::test_json_list - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_format.py::test_yaml_list - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_format.py::test_yaml_import - TypeError: HelpfulArgumentParser._parse_known_args() takes 3 positional arguments but 4 were given FAILED test/cli/test_options.py::TestOptions::test_boolean_argument - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_choices - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_creation_optional_argument - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_creation_required_argument - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_integer_argument - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_list - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_list_filtering - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestOptions::test_list_not_filterable - AttributeError: 'PseudoNamespace' has no attribute 'base_url' FAILED test/cli/test_options.py::TestSettingsOptions::test_list - AttributeError: 'PseudoNamespace' has no attribute 'base_url' =========== 27 failed, 209 passed, 1 deselected, 2 warnings in 5.81s =========== ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/felix/build [?25h[?25hreceiving incremental file list awxkit-24.6.1-2-riscv64-build.log awxkit-24.6.1-2-riscv64-check.log sent 62 bytes received 10,587 bytes 21,298.00 bytes/sec total size is 164,447 speedup is 15.44