ansible-core 2.17.12__py3-none-any.whl → 2.17.13rc1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ansible-core might be problematic. Click here for more details.
- ansible/module_utils/ansible_release.py +1 -1
- ansible/modules/user.py +9 -3
- ansible/plugins/list.py +5 -4
- ansible/release.py +1 -1
- {ansible_core-2.17.12.dist-info → ansible_core-2.17.13rc1.dist-info}/METADATA +1 -1
- {ansible_core-2.17.12.dist-info → ansible_core-2.17.13rc1.dist-info}/RECORD +14 -14
- {ansible_core-2.17.12.dist-info → ansible_core-2.17.13rc1.dist-info}/WHEEL +1 -1
- ansible_test/_data/completion/remote.txt +1 -0
- ansible_test/_internal/classification/python.py +6 -0
- ansible_test/_util/target/setup/bootstrap.sh +31 -0
- {ansible_core-2.17.12.data → ansible_core-2.17.13rc1.data}/scripts/ansible-test +0 -0
- {ansible_core-2.17.12.dist-info → ansible_core-2.17.13rc1.dist-info}/entry_points.txt +0 -0
- {ansible_core-2.17.12.dist-info → ansible_core-2.17.13rc1.dist-info}/licenses/COPYING +0 -0
- {ansible_core-2.17.12.dist-info → ansible_core-2.17.13rc1.dist-info}/top_level.txt +0 -0
ansible/modules/user.py
CHANGED
|
@@ -461,6 +461,7 @@ uid:
|
|
|
461
461
|
|
|
462
462
|
|
|
463
463
|
import ctypes.util
|
|
464
|
+
from datetime import datetime
|
|
464
465
|
import grp
|
|
465
466
|
import calendar
|
|
466
467
|
import os
|
|
@@ -1226,11 +1227,16 @@ class User(object):
|
|
|
1226
1227
|
env=env)
|
|
1227
1228
|
out_buffer = b''
|
|
1228
1229
|
err_buffer = b''
|
|
1230
|
+
first_prompt = b'Enter passphrase'
|
|
1231
|
+
second_prompt = b'Enter same passphrase again'
|
|
1232
|
+
prompt = first_prompt
|
|
1233
|
+
start = datetime.now()
|
|
1234
|
+
timeout = 900
|
|
1229
1235
|
while p.poll() is None:
|
|
1230
1236
|
r_list = select.select([master_out_fd, master_err_fd], [], [], 1)[0]
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1237
|
+
now = datetime.now()
|
|
1238
|
+
if (now - start).seconds > timeout:
|
|
1239
|
+
return (1, '', f'Timeout after {timeout} while reading passphrase for SSH key')
|
|
1234
1240
|
for fd in r_list:
|
|
1235
1241
|
if fd == master_out_fd:
|
|
1236
1242
|
chunk = os.read(master_out_fd, 10240)
|
ansible/plugins/list.py
CHANGED
|
@@ -42,7 +42,7 @@ def get_composite_name(collection, name, path, depth):
|
|
|
42
42
|
return '.'.join(composite)
|
|
43
43
|
|
|
44
44
|
|
|
45
|
-
def _list_plugins_from_paths(ptype, dirs, collection, depth=0):
|
|
45
|
+
def _list_plugins_from_paths(ptype, dirs, collection, depth=0, docs=False):
|
|
46
46
|
# TODO: update to use importlib.resources
|
|
47
47
|
|
|
48
48
|
plugins = {}
|
|
@@ -77,14 +77,15 @@ def _list_plugins_from_paths(ptype, dirs, collection, depth=0):
|
|
|
77
77
|
continue
|
|
78
78
|
|
|
79
79
|
# actually recurse dirs
|
|
80
|
-
plugins.update(_list_plugins_from_paths(ptype, [to_native(full_path)], collection, depth=depth + 1))
|
|
80
|
+
plugins.update(_list_plugins_from_paths(ptype, [to_native(full_path)], collection, depth=depth + 1, docs=docs))
|
|
81
81
|
else:
|
|
82
82
|
if any([
|
|
83
83
|
plugin in C.IGNORE_FILES, # general files to ignore
|
|
84
84
|
to_native(b_ext) in C.REJECT_EXTS, # general extensions to ignore
|
|
85
|
-
b_ext in (b'.yml', b'.yaml', b'.json'), # ignore docs files
|
|
85
|
+
b_ext in (b'.yml', b'.yaml', b'.json'), # ignore docs files
|
|
86
86
|
plugin in IGNORE.get(bkey, ()), # plugin in reject list
|
|
87
87
|
os.path.islink(full_path), # skip aliases, author should document in 'aliaes' field
|
|
88
|
+
not docs and b_ext in (b''), # ignore no ext when looking for docs files
|
|
88
89
|
]):
|
|
89
90
|
continue
|
|
90
91
|
|
|
@@ -147,7 +148,7 @@ def list_collection_plugins(ptype, collections, search_paths=None):
|
|
|
147
148
|
|
|
148
149
|
# raise Exception('bad acr for %s, %s' % (collection, ptype))
|
|
149
150
|
|
|
150
|
-
plugins.update(_list_plugins_from_paths(ptype, dirs, collection))
|
|
151
|
+
plugins.update(_list_plugins_from_paths(ptype, dirs, collection, docs=True))
|
|
151
152
|
|
|
152
153
|
# return plugin and it's class object, None for those not verifiable or failing
|
|
153
154
|
if ptype in ('module',):
|
ansible/release.py
CHANGED
|
@@ -3,7 +3,7 @@ ansible/__main__.py,sha256=EnLcULXNtSXkuJ8igEHPPLBTZKAwqXv4PvMEhvzp2Oo,1430
|
|
|
3
3
|
ansible/constants.py,sha256=vRwEcoynqtuKDPKsxKUY94XzrTSV3J0y1slb907DioU,9140
|
|
4
4
|
ansible/context.py,sha256=oKYyfjfWpy8vDeProtqfnqSmuij_t75_5e5t0U_hQ1g,1933
|
|
5
5
|
ansible/keyword_desc.yml,sha256=vE9joFgSeHR4Djl7Bd-HHVCrGByRCrTUmWYZ8LKPZKk,7412
|
|
6
|
-
ansible/release.py,sha256=
|
|
6
|
+
ansible/release.py,sha256=Q-TERToixG2swT8doxEg0dJU0XnVhrRi-6iNjeizmLk,836
|
|
7
7
|
ansible/_vendor/__init__.py,sha256=2QBeBwT7uG7M3Aw-pIdCpt6XPtHMCpbEKfACYKA7xIg,2033
|
|
8
8
|
ansible/cli/__init__.py,sha256=fzgR82NIGBH3GujIMehhAaP4KYszn4uztuCaFYRUpGk,28718
|
|
9
9
|
ansible/cli/adhoc.py,sha256=quJ9WzRzf3dz_dtDGmahNMffqyNVy1jzQCMo21YL5Qg,8194
|
|
@@ -140,7 +140,7 @@ ansible/inventory/host.py,sha256=PDb5OTplhfpUIvdHiP2BckUOB1gUl302N-3sW0_sTyg,503
|
|
|
140
140
|
ansible/inventory/manager.py,sha256=45mHgZTAkQ3IjAtrgsNzJXvynC-HIEor-JJE-V3xXN4,29454
|
|
141
141
|
ansible/module_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
142
142
|
ansible/module_utils/_text.py,sha256=VkWgAnSNVCbTQqZgllUObBFsH3uM4EUW5srl1UR9t1g,544
|
|
143
|
-
ansible/module_utils/ansible_release.py,sha256=
|
|
143
|
+
ansible/module_utils/ansible_release.py,sha256=Q-TERToixG2swT8doxEg0dJU0XnVhrRi-6iNjeizmLk,836
|
|
144
144
|
ansible/module_utils/api.py,sha256=DWIuLW5gDWuyyDHLLgGnub42Qa8kagDdkf1xDeLAFl4,5784
|
|
145
145
|
ansible/module_utils/basic.py,sha256=UcDamm_6bkL3HXxKvQcSUlzDOHkIlvd8AYGuqJNmZeI,86113
|
|
146
146
|
ansible/module_utils/connection.py,sha256=q_BdUaST6E44ltHsWPOFOheXK9vKmzaJvP-eQOrOrmE,8394
|
|
@@ -340,7 +340,7 @@ ansible/modules/tempfile.py,sha256=lA9e8lyFXf9J5ud0R6Jkt8sIFyRcOwzhc9Jz-5_HOZQ,3
|
|
|
340
340
|
ansible/modules/template.py,sha256=D1sm36GB_mEimH0CfWq1cJ4w1eRvpcsHwZ-ufVzC_Gs,4537
|
|
341
341
|
ansible/modules/unarchive.py,sha256=hlRAn2Ma36rmeQ4-OldGLPnHu3w8rlxlvLovQ2pYg5c,44880
|
|
342
342
|
ansible/modules/uri.py,sha256=WgJA04YvgKTpQsMJFWAg9ITbj8cpIYwZD_tPlD_hcz4,28203
|
|
343
|
-
ansible/modules/user.py,sha256=
|
|
343
|
+
ansible/modules/user.py,sha256=Z-xMH_KSB3f2SInP6wy3C7yeDkcs5GfeNvEFbOi_of0,119011
|
|
344
344
|
ansible/modules/validate_argument_spec.py,sha256=epLh4EUaoDLvhdVszRM68Q2QdicK-3jxhMA530dQaIE,3044
|
|
345
345
|
ansible/modules/wait_for.py,sha256=rsx_PR73-BRImLNErVUM1o9wRdPlXkGu5y6FhJ8wLcY,27355
|
|
346
346
|
ansible/modules/wait_for_connection.py,sha256=lHgsuyw3oel1pqXlLCls7KSF1PJaSU0RKGGE6ewbQQY,3326
|
|
@@ -388,7 +388,7 @@ ansible/playbook/role/include.py,sha256=9e4IvnD3JXqJUV-hB7riGgq0SjrqQGQHDg-cuJ1v
|
|
|
388
388
|
ansible/playbook/role/metadata.py,sha256=HUuR5wCKAw-6urkAR4DKxUeOVsqFflSDHjZuWdBCmxo,5074
|
|
389
389
|
ansible/playbook/role/requirement.py,sha256=CNgLa0J6zZk2YQ_aeALnjQvehkkFXhrK8LQQZs7Ztzc,4173
|
|
390
390
|
ansible/plugins/__init__.py,sha256=y4dYcAW6qvj2eaFQKxsJc2J5TXPPiXzXpVznk--Z0n0,5725
|
|
391
|
-
ansible/plugins/list.py,sha256=
|
|
391
|
+
ansible/plugins/list.py,sha256=GWo9sm_uKqu_LiBMfbHIOmmFYnXDYN05uckZcPJbCow,9054
|
|
392
392
|
ansible/plugins/loader.py,sha256=BMUcCe2CltI95l3q56bEz_EjvaKLWB9XxthRCORFFJ0,75837
|
|
393
393
|
ansible/plugins/action/__init__.py,sha256=_APvyMyF7A0hfMgwe4VZggQEerCfC14dRe9aLr3opuc,69216
|
|
394
394
|
ansible/plugins/action/add_host.py,sha256=GtwF4uEDrjcFluIi7ql7AkatYOboJGIp4sH10cqPPHo,3579
|
|
@@ -678,14 +678,14 @@ ansible/vars/hostvars.py,sha256=o11xrzDVYn23renGbb3lx3R-nH9qOjLFju5IYJanDxg,5324
|
|
|
678
678
|
ansible/vars/manager.py,sha256=Yuo51lu4UVfzxMS63zYtZMcI8iFYgLXtg0p8fnq3Y7E,38871
|
|
679
679
|
ansible/vars/plugins.py,sha256=RsRU9fiLcJwPIAyTYnmVZglsiEOMCIgQskflavE-XnE,4546
|
|
680
680
|
ansible/vars/reserved.py,sha256=Tsc4m2UwVce3dOvSWrjT2wB3lpNJtUyNZn45zNhsW0I,2869
|
|
681
|
-
ansible_core-2.17.
|
|
682
|
-
ansible_core-2.17.
|
|
681
|
+
ansible_core-2.17.13rc1.data/scripts/ansible-test,sha256=dyY2HtRZotRQO3b89HGXY_KnJgBvgsm4eLIe4B2LUoA,1637
|
|
682
|
+
ansible_core-2.17.13rc1.dist-info/licenses/COPYING,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
683
683
|
ansible_test/__init__.py,sha256=20VPOj11c6Ut1Av9RaurgwJvFhMqkWG3vAvcCbecNKw,66
|
|
684
684
|
ansible_test/_data/ansible.cfg,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
685
685
|
ansible_test/_data/coveragerc,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
686
686
|
ansible_test/_data/completion/docker.txt,sha256=ddsWorTETn1pF9n5coT-tVRC1Hizf9vp6_q0t28S3I0,642
|
|
687
687
|
ansible_test/_data/completion/network.txt,sha256=BxVN0UxlVkRUrPi9MBArQOe6nR8exaow0oCAznUdfKQ,100
|
|
688
|
-
ansible_test/_data/completion/remote.txt,sha256=
|
|
688
|
+
ansible_test/_data/completion/remote.txt,sha256=cEpnoSjuxrIk8rgxRninhOjtWrYJ3UergVZA29Xibfk,918
|
|
689
689
|
ansible_test/_data/completion/windows.txt,sha256=LunFLE7xMeoS9TVDuE58nUBVzsz-Wh-9wfL80mGiUmo,147
|
|
690
690
|
ansible_test/_data/playbooks/posix_coverage_setup.yml,sha256=PgQNVzVTsNmfnu0sT2SAYiWtkMSOppfmh0oVmAsb7TQ,594
|
|
691
691
|
ansible_test/_data/playbooks/posix_coverage_teardown.yml,sha256=xHci5QllwJymFtig-hsOXm-Wdrxz063JH14aIyRXhyc,212
|
|
@@ -778,7 +778,7 @@ ansible_test/_internal/classification/__init__.py,sha256=ZhYq3YHtd5iO8yFWcnWqwg_
|
|
|
778
778
|
ansible_test/_internal/classification/common.py,sha256=jd5VLRegcOX-GNTZqN_7PBzwKF6akFQYsPEltfynGtU,894
|
|
779
779
|
ansible_test/_internal/classification/csharp.py,sha256=3QpVZjamTTG7h86oeVm7d4UMbyojPbBALHVqCpxS1ic,3241
|
|
780
780
|
ansible_test/_internal/classification/powershell.py,sha256=i8t8LxG_-wDPpz1VlnvqAPpRGgVJsuA_xglMtCpibCc,3053
|
|
781
|
-
ansible_test/_internal/classification/python.py,sha256=
|
|
781
|
+
ansible_test/_internal/classification/python.py,sha256=0jWx8x6_UirsPIdCqPiMZTBS8-DrIEsHHsX57l69q8I,13885
|
|
782
782
|
ansible_test/_internal/cli/__init__.py,sha256=kTB7TfN12k_VJGMXEuOSlu3huruIUTb8UIFkaFyMr_I,1427
|
|
783
783
|
ansible_test/_internal/cli/actions.py,sha256=D3z2FdpJC1dpQR9Vu1662wW28_iqPpWeAC3rizzjVAA,3366
|
|
784
784
|
ansible_test/_internal/cli/compat.py,sha256=U0JGicJeKB7eA0RqX9P_P_P9CZ860u-1EjPtGKXCaqc,23101
|
|
@@ -959,7 +959,7 @@ ansible_test/_util/target/pytest/plugins/ansible_pytest_collections.py,sha256=vn
|
|
|
959
959
|
ansible_test/_util/target/pytest/plugins/ansible_pytest_coverage.py,sha256=RAEMJ4N88UhwlCcD3gRG78ERb12uW2FMYI4j1tOiEhU,1546
|
|
960
960
|
ansible_test/_util/target/sanity/compile/compile.py,sha256=iTRgiZHNO8DwjSqHBw8gPBbFtWnr-Zbd_ybymeazdtA,1302
|
|
961
961
|
ansible_test/_util/target/sanity/import/importer.py,sha256=BLQN6NmdaMgbI6mu_AdkL4AeD5LxYUi-JXEBGJTuhnU,25148
|
|
962
|
-
ansible_test/_util/target/setup/bootstrap.sh,sha256=
|
|
962
|
+
ansible_test/_util/target/setup/bootstrap.sh,sha256=X95GFGRuW9cPBMUgZDH4L_0QMWnrOoqBjCRl0L3rt3M,13299
|
|
963
963
|
ansible_test/_util/target/setup/check_systemd_cgroup_v1.sh,sha256=Aq0T62x_KLtkGaWzYqWjvhchTqYFflrTbQET3h6xrT0,395
|
|
964
964
|
ansible_test/_util/target/setup/probe_cgroups.py,sha256=wUHvjW_GXpcyMGw308w26T09cOtBW5EU7i9WagGDQ7o,659
|
|
965
965
|
ansible_test/_util/target/setup/quiet_pip.py,sha256=d3bvh9k2XI_z8-vb3ZoI4lwL8LaFkwvjJE7PpApBlcw,1979
|
|
@@ -980,8 +980,8 @@ ansible_test/config/cloud-config-vultr.ini.template,sha256=XLKHk3lg_8ReQMdWfZzhh
|
|
|
980
980
|
ansible_test/config/config.yml,sha256=wb3knoBmZewG3GWOMnRHoVPQWW4vPixKLPMNS6vJmTc,2620
|
|
981
981
|
ansible_test/config/inventory.networking.template,sha256=bFNSk8zNQOaZ_twaflrY0XZ9mLwUbRLuNT0BdIFwvn4,1335
|
|
982
982
|
ansible_test/config/inventory.winrm.template,sha256=1QU8W-GFLnYEw8yY9bVIvUAVvJYPM3hyoijf6-M7T00,1098
|
|
983
|
-
ansible_core-2.17.
|
|
984
|
-
ansible_core-2.17.
|
|
985
|
-
ansible_core-2.17.
|
|
986
|
-
ansible_core-2.17.
|
|
987
|
-
ansible_core-2.17.
|
|
983
|
+
ansible_core-2.17.13rc1.dist-info/METADATA,sha256=g1dSnlWTSzMpDIuKRw4a-nUOCVnCiqVlGzL-8GYLIPM,6991
|
|
984
|
+
ansible_core-2.17.13rc1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
985
|
+
ansible_core-2.17.13rc1.dist-info/entry_points.txt,sha256=0mpmsrIhODChxKl3eS-NcVQCaMetBn8KdPLtVxQgR64,453
|
|
986
|
+
ansible_core-2.17.13rc1.dist-info/top_level.txt,sha256=IFbRLjAvih1DYzJWg3_F6t4sCzEMxRO7TOMNs6GkYHo,21
|
|
987
|
+
ansible_core-2.17.13rc1.dist-info/RECORD,,
|
|
@@ -8,6 +8,7 @@ freebsd python_dir=/usr/local/bin become=su_sudo provider=aws arch=x86_64
|
|
|
8
8
|
macos/14.3 python=3.11 python_dir=/usr/local/bin become=sudo provider=parallels arch=x86_64
|
|
9
9
|
macos python_dir=/usr/local/bin become=sudo provider=parallels arch=x86_64
|
|
10
10
|
rhel/9.3 python=3.9,3.11 become=sudo provider=aws arch=x86_64
|
|
11
|
+
rhel/10.0 python=3.12 become=sudo provider=aws arch=x86_64
|
|
11
12
|
rhel become=sudo provider=aws arch=x86_64
|
|
12
13
|
ubuntu/22.04 python=3.10 become=sudo provider=aws arch=x86_64
|
|
13
14
|
ubuntu become=sudo provider=aws arch=x86_64
|
|
@@ -220,6 +220,12 @@ def relative_to_absolute(name: str, level: int, module: str, path: str, lineno:
|
|
|
220
220
|
else:
|
|
221
221
|
parts = module.split('.')
|
|
222
222
|
|
|
223
|
+
if path.endswith('/__init__.py'):
|
|
224
|
+
# Ensure the correct relative module is calculated for both not_init.py and __init__.py:
|
|
225
|
+
# a/b/not_init.py -> a.b.not_init # used as-is
|
|
226
|
+
# a/b/__init__.py -> a.b # needs "__init__" part appended to ensure relative imports work
|
|
227
|
+
parts.append('__init__')
|
|
228
|
+
|
|
223
229
|
if level >= len(parts):
|
|
224
230
|
display.warning('Cannot resolve relative import "%s%s" above module "%s" at %s:%d' % ('.' * level, name, module, path, lineno))
|
|
225
231
|
absolute_name = 'relative.abovelevel'
|
|
@@ -299,10 +299,41 @@ bootstrap_remote_rhel_9()
|
|
|
299
299
|
done
|
|
300
300
|
}
|
|
301
301
|
|
|
302
|
+
bootstrap_remote_rhel_10()
|
|
303
|
+
{
|
|
304
|
+
py_pkg_prefix="python3"
|
|
305
|
+
|
|
306
|
+
packages="
|
|
307
|
+
gcc
|
|
308
|
+
${py_pkg_prefix}-devel
|
|
309
|
+
${py_pkg_prefix}-pip
|
|
310
|
+
"
|
|
311
|
+
|
|
312
|
+
if [ "${controller}" ]; then
|
|
313
|
+
packages="
|
|
314
|
+
${packages}
|
|
315
|
+
${py_pkg_prefix}-cryptography
|
|
316
|
+
${py_pkg_prefix}-jinja2
|
|
317
|
+
${py_pkg_prefix}-packaging
|
|
318
|
+
${py_pkg_prefix}-pyyaml
|
|
319
|
+
${py_pkg_prefix}-resolvelib
|
|
320
|
+
"
|
|
321
|
+
fi
|
|
322
|
+
|
|
323
|
+
while true; do
|
|
324
|
+
# shellcheck disable=SC2086
|
|
325
|
+
dnf install -q -y ${packages} \
|
|
326
|
+
&& break
|
|
327
|
+
echo "Failed to install packages. Sleeping before trying again..."
|
|
328
|
+
sleep 10
|
|
329
|
+
done
|
|
330
|
+
}
|
|
331
|
+
|
|
302
332
|
bootstrap_remote_rhel()
|
|
303
333
|
{
|
|
304
334
|
case "${platform_version}" in
|
|
305
335
|
9.*) bootstrap_remote_rhel_9 ;;
|
|
336
|
+
10.*) bootstrap_remote_rhel_10 ;;
|
|
306
337
|
esac
|
|
307
338
|
}
|
|
308
339
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|