rjeffman: idempotence playground. #1190
Build #20231229.2 had test failures
Details
- Failed: 80 (7.80%)
- Passed: 945 (92.20%)
- Other: 0 (0.00%)
- Total: 1,025
Annotations
Check failure on line 1693 in Build log
azure-pipelines / CheckPR
Build log #L1693
Bash exited with code '1'.
Check failure on line 1715 in Build log
azure-pipelines / CheckPR
Build log #L1715
Bash exited with code '1'.
Check failure on line 1714 in Build log
azure-pipelines / CheckPR
Build log #L1714
Bash exited with code '1'.
Check failure on line 1693 in Build log
azure-pipelines / CheckPR
Build log #L1693
Bash exited with code '1'.
Check failure on line 1 in test_idoverrideuser_client_context
azure-pipelines / CheckPR
test_idoverrideuser_client_context
AssertionError: ns)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1577, in execute
raise e
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1574, in execute
self._exc_wrapper(keys, options, ldap.update_entry)(update)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
return func(*call_args, **call_kwargs)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1216, in exc_func
self, keys, options, e, call_func, *args, **kwargs)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1619, in exc_callback
raise exc
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
return func(*call_args, **call_kwargs)
File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1896, in update_entry
super(LDAPCache, self).update_entry(entry)
File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1700, in update_entry
raise errors.EmptyModlist()
fatal: [c8s]: FAILED! => {
"changed": false,
"failed_when_result": true,
"invocation": {
"module_args": {
"action": "idoverrideuser",
"anchor": [
"test_user1"
],
"certificate": null,
"delete_continue": null,
"description": null,
"fallback_to_ldap": null,
"gecos": null,
"gidnumber": null,
"homedir": null,
"idview": "test_idview",
"ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
"ipaadmin_principal": "admin",
"ipaapi_context": null,
"ipaapi_ldap_cache": true,
"name": null,
"nomembers": null,
"shell": null,
"sshpubkey": null,
"state": "present",
"uid": "20001"
}
},
"msg": "idoverrideuser_mod: test_idview: no modifications to be performed"
}
PLAY RECAP *********************************************************************
c8s : ok=25 changed=13 unreachable=0 failed=1 skipped=3 rescued=0 ignored=0
------------------------------ Captured stderr ------------------------------
[WARNING]: Could not match supplied host pattern, ignoring: ipaclients
------------------------------ Playbook Return Code ------------------------------
ansible-playbook return code: 2
Raw output
self = <test_playbook_runs.idoverrideuser testMethod=test_idoverrideuser_client_context>
test_path = '/home/vsts/work/1/s/tests/idoverrideuser/test_idoverrideuser_client_context.yml'
test_name = 'test_idoverrideuser_client_context'
@pytest.mark.playbook
@prepare_test(test_name, test_path)
def method(self, test_path, test_name):
> run_playbook(test_path)
tests/test_playbook_runs.py:73:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
playbook = '/home/vsts/work/1/s/tests/idoverrideuser/test_idoverrideuser_client_context.yml'
allow_failures = False
def run_playbook(playbook, allow_failures=False):
"""
Run an Ansible playbook and assert the return code.
Call ansible (using _run_playbook function) and assert the result of
the execution.
In case of failure the tail of the error message will be displayed
as an assertion message.
The full log of the execution will be available in the directory
`tests/logs/`.
"""
result = _run_playbook(playbook)
if allow_failures:
return result
status_code_msg = "ansible-playbook return code: {0}".format(
result.returncode
)
assert_msg = "\n".join(
[
"",
"-" * 30 + " Captured stdout " + "-" * 30,
result.stdout.decode("utf8"),
"-" * 30 + " Captured stderr " + "-" * 30,
result.stderr.decode("utf8"),
"-" * 30 + " Playbook Return Code " + "-" * 30,
status_code_msg,
]
)
# Need to get the last bytes of msg otherwise Azure
# will cut it out.
> assert result.returncode == 0, assert_msg[-2500:]
E AssertionError: ns)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1577, in execute
E raise e
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1574, in execute
E self._exc_wrapper(keys, options, ldap.update_entry)(update)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
E return func(*call_args, **call_kwargs)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1216, in exc_func
E self, keys, options, e, call_func, *args, **kwargs)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1619, in exc_callback
E raise exc
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
E return func(*call_args, **call_kwargs)
E File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1896, in update_entry
E super(LDAPCache, self).update_entry(entry)
E File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1700, in update_entry
E raise errors.EmptyModlist()
E fatal: [c8s]: FAILED! => {
E "changed": false,
E "failed_when_result": true,
E "invocation": {
E "module_args": {
E "action": "idoverrideuser",
E "anchor": [
E "test_user1"
E ],
E "certificate": null,
E "delete_continue": null,
E "description": null,
E "fallback_to_ldap": null,
E "gecos": null,
E "gidnumber": null,
E "homedir": null,
E "idview": "test_idview",
E "ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
E "ipaadmin_principal": "admin",
E "ipaapi_context": null,
E "ipaapi_ldap_cache": true,
E "name": null,
E "nomembers": null,
E
Check failure on line 1 in test_idoverrideuser
azure-pipelines / CheckPR
test_idoverrideuser
AssertionError: b/frontend.py", line 816, in run
return self.execute(*args, **options)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1577, in execute
raise e
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1574, in execute
self._exc_wrapper(keys, options, ldap.update_entry)(update)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
return func(*call_args, **call_kwargs)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1216, in exc_func
self, keys, options, e, call_func, *args, **kwargs)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1619, in exc_callback
raise exc
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
return func(*call_args, **call_kwargs)
File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1896, in update_entry
super(LDAPCache, self).update_entry(entry)
File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1700, in update_entry
raise errors.EmptyModlist()
fatal: [c8s]: FAILED! => {
"changed": false,
"failed_when_result": true,
"invocation": {
"module_args": {
"action": "idoverrideuser",
"anchor": [
"test_user1"
],
"certificate": null,
"delete_continue": null,
"description": null,
"fallback_to_ldap": null,
"gecos": null,
"gidnumber": null,
"homedir": null,
"idview": "test_idview",
"ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
"ipaadmin_principal": "admin",
"ipaapi_context": null,
"ipaapi_ldap_cache": true,
"name": null,
"nomembers": null,
"shell": null,
"sshpubkey": null,
"state": "present",
"uid": "20001"
}
},
"msg": "idoverrideuser_mod: test_idview: no modifications to be performed"
}
PLAY RECAP *********************************************************************
c8s : ok=21 changed=13 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
------------------------------ Captured stderr ------------------------------
------------------------------ Playbook Return Code ------------------------------
ansible-playbook return code: 2
Raw output
self = <test_playbook_runs.idoverrideuser testMethod=test_idoverrideuser>
test_path = '/home/vsts/work/1/s/tests/idoverrideuser/test_idoverrideuser.yml'
test_name = 'test_idoverrideuser'
@pytest.mark.playbook
@prepare_test(test_name, test_path)
def method(self, test_path, test_name):
> run_playbook(test_path)
tests/test_playbook_runs.py:73:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
playbook = '/home/vsts/work/1/s/tests/idoverrideuser/test_idoverrideuser.yml'
allow_failures = False
def run_playbook(playbook, allow_failures=False):
"""
Run an Ansible playbook and assert the return code.
Call ansible (using _run_playbook function) and assert the result of
the execution.
In case of failure the tail of the error message will be displayed
as an assertion message.
The full log of the execution will be available in the directory
`tests/logs/`.
"""
result = _run_playbook(playbook)
if allow_failures:
return result
status_code_msg = "ansible-playbook return code: {0}".format(
result.returncode
)
assert_msg = "\n".join(
[
"",
"-" * 30 + " Captured stdout " + "-" * 30,
result.stdout.decode("utf8"),
"-" * 30 + " Captured stderr " + "-" * 30,
result.stderr.decode("utf8"),
"-" * 30 + " Playbook Return Code " + "-" * 30,
status_code_msg,
]
)
# Need to get the last bytes of msg otherwise Azure
# will cut it out.
> assert result.returncode == 0, assert_msg[-2500:]
E AssertionError: b/frontend.py", line 816, in run
E return self.execute(*args, **options)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1577, in execute
E raise e
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1574, in execute
E self._exc_wrapper(keys, options, ldap.update_entry)(update)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
E return func(*call_args, **call_kwargs)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1216, in exc_func
E self, keys, options, e, call_func, *args, **kwargs)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1619, in exc_callback
E raise exc
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
E return func(*call_args, **call_kwargs)
E File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1896, in update_entry
E super(LDAPCache, self).update_entry(entry)
E File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1700, in update_entry
E raise errors.EmptyModlist()
E fatal: [c8s]: FAILED! => {
E "changed": false,
E "failed_when_result": true,
E "invocation": {
E "module_args": {
E "action": "idoverrideuser",
E "anchor": [
E "test_user1"
E ],
E "certificate": null,
E "delete_continue": null,
E "description": null,
E "fallback_to_ldap": null,
E "gecos": null,
E "gidnumber": null,
E "homedir": null,
E "idview": "test_idview",
E "ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
E "ipaadmin_principal": "admin",
E "ipaapi_context": null,
E "ipaapi_ldap_cache": true,
E "name": null,
E "nomembers": null
Check failure on line 1 in test_sudorule
azure-pipelines / CheckPR
test_sudorule
AssertionError: server/plugins/baseldap.py", line 1574, in execute
self._exc_wrapper(keys, options, ldap.update_entry)(update)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
return func(*call_args, **call_kwargs)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1216, in exc_func
self, keys, options, e, call_func, *args, **kwargs)
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1619, in exc_callback
raise exc
File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
return func(*call_args, **call_kwargs)
File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1896, in update_entry
super(LDAPCache, self).update_entry(entry)
File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1700, in update_entry
raise errors.EmptyModlist()
fatal: [c8s]: FAILED! => {
"changed": false,
"failed_when_result": true,
"invocation": {
"module_args": {
"action": "sudorule",
"allow_sudocmd": null,
"allow_sudocmdgroup": null,
"cmdcategory": null,
"deny_sudocmd": null,
"deny_sudocmdgroup": null,
"description": null,
"group": null,
"host": null,
"hostcategory": null,
"hostgroup": null,
"hostmask": null,
"ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
"ipaadmin_principal": "admin",
"ipaapi_context": null,
"ipaapi_ldap_cache": true,
"name": [
"testrule1"
],
"nomembers": null,
"order": 1,
"runasgroup": null,
"runasgroupcategory": null,
"runasuser": null,
"runasusercategory": null,
"state": "present",
"sudooption": null,
"user": null,
"usercategory": null
}
},
"msg": "sudorule_mod: testrule1: no modifications to be performed"
}
PLAY RECAP *********************************************************************
c8s : ok=49 changed=28 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
------------------------------ Captured stderr ------------------------------
------------------------------ Playbook Return Code ------------------------------
ansible-playbook return code: 2
Raw output
self = <test_playbook_runs.sudorule testMethod=test_sudorule>
test_path = '/home/vsts/work/1/s/tests/sudorule/test_sudorule.yml'
test_name = 'test_sudorule'
@pytest.mark.playbook
@prepare_test(test_name, test_path)
def method(self, test_path, test_name):
> run_playbook(test_path)
tests/test_playbook_runs.py:73:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
playbook = '/home/vsts/work/1/s/tests/sudorule/test_sudorule.yml'
allow_failures = False
def run_playbook(playbook, allow_failures=False):
"""
Run an Ansible playbook and assert the return code.
Call ansible (using _run_playbook function) and assert the result of
the execution.
In case of failure the tail of the error message will be displayed
as an assertion message.
The full log of the execution will be available in the directory
`tests/logs/`.
"""
result = _run_playbook(playbook)
if allow_failures:
return result
status_code_msg = "ansible-playbook return code: {0}".format(
result.returncode
)
assert_msg = "\n".join(
[
"",
"-" * 30 + " Captured stdout " + "-" * 30,
result.stdout.decode("utf8"),
"-" * 30 + " Captured stderr " + "-" * 30,
result.stderr.decode("utf8"),
"-" * 30 + " Playbook Return Code " + "-" * 30,
status_code_msg,
]
)
# Need to get the last bytes of msg otherwise Azure
# will cut it out.
> assert result.returncode == 0, assert_msg[-2500:]
E AssertionError: server/plugins/baseldap.py", line 1574, in execute
E self._exc_wrapper(keys, options, ldap.update_entry)(update)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
E return func(*call_args, **call_kwargs)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1216, in exc_func
E self, keys, options, e, call_func, *args, **kwargs)
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1619, in exc_callback
E raise exc
E File "/usr/lib/python3.6/site-packages/ipaserver/plugins/baseldap.py", line 1207, in wrapped
E return func(*call_args, **call_kwargs)
E File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1896, in update_entry
E super(LDAPCache, self).update_entry(entry)
E File "/usr/lib/python3.6/site-packages/ipapython/ipaldap.py", line 1700, in update_entry
E raise errors.EmptyModlist()
E fatal: [c8s]: FAILED! => {
E "changed": false,
E "failed_when_result": true,
E "invocation": {
E "module_args": {
E "action": "sudorule",
E "allow_sudocmd": null,
E "allow_sudocmdgroup": null,
E "cmdcategory": null,
E "deny_sudocmd": null,
E "deny_sudocmdgroup": null,
E "description": null,
E "group": null,
E "host": null,
E "hostcategory": null,
E "hostgroup": null,
E "hostmask": null,
E "ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
E "ipaadmin_principal": "admin",
E "ipaapi_context": null,
E "ipaapi_ldap_cache": true,
E "name": [
E "testrule1"
E ],
E "nomembers": null,
E "order": 1,
E "runasgroup": null,
E "runasgroupcategory": null,
E "runasuser": null,
E "runasusercategory": null,
E
Check failure on line 1 in test_sudorule_client_context
azure-pipelines / CheckPR
test_sudorule_client_context
AssertionError: urn self.__do_call(*args, **options)
File "/usr/lib/python3.6/site-packages/ipalib/frontend.py", line 499, in __do_call
ret = self.run(*args, **options)
File "/usr/lib/python3.6/site-packages/ipalib/frontend.py", line 817, in run
return self.forward(*args, **options)
File "/usr/lib/python3.6/site-packages/ipalib/frontend.py", line 840, in forward
*args, **kw)
File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1146, in forward
return self._call_command(command, params)
File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1122, in _call_command
return command(*params)
File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1276, in _call
return self.__request(name, args)
File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1270, in __request
raise error_class(**kw)
fatal: [c8s]: FAILED! => {
"changed": false,
"failed_when_result": true,
"invocation": {
"module_args": {
"action": "sudorule",
"allow_sudocmd": null,
"allow_sudocmdgroup": null,
"cmdcategory": null,
"deny_sudocmd": null,
"deny_sudocmdgroup": null,
"description": null,
"group": null,
"host": null,
"hostcategory": null,
"hostgroup": null,
"hostmask": null,
"ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
"ipaadmin_principal": "admin",
"ipaapi_context": "client",
"ipaapi_ldap_cache": true,
"name": [
"testrule1"
],
"nomembers": null,
"order": 1,
"runasgroup": null,
"runasgroupcategory": null,
"runasuser": null,
"runasusercategory": null,
"state": "present",
"sudooption": null,
"user": null,
"usercategory": null
}
},
"msg": "sudorule_mod: testrule1: no modifications to be performed"
}
PLAY RECAP *********************************************************************
c8s : ok=53 changed=30 unreachable=0 failed=1 skipped=3 rescued=0 ignored=0
------------------------------ Captured stderr ------------------------------
[WARNING]: Could not match supplied host pattern, ignoring: ipaclients
------------------------------ Playbook Return Code ------------------------------
ansible-playbook return code: 2
Raw output
self = <test_playbook_runs.sudorule testMethod=test_sudorule_client_context>
test_path = '/home/vsts/work/1/s/tests/sudorule/test_sudorule_client_context.yml'
test_name = 'test_sudorule_client_context'
@pytest.mark.playbook
@prepare_test(test_name, test_path)
def method(self, test_path, test_name):
> run_playbook(test_path)
tests/test_playbook_runs.py:73:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
playbook = '/home/vsts/work/1/s/tests/sudorule/test_sudorule_client_context.yml'
allow_failures = False
def run_playbook(playbook, allow_failures=False):
"""
Run an Ansible playbook and assert the return code.
Call ansible (using _run_playbook function) and assert the result of
the execution.
In case of failure the tail of the error message will be displayed
as an assertion message.
The full log of the execution will be available in the directory
`tests/logs/`.
"""
result = _run_playbook(playbook)
if allow_failures:
return result
status_code_msg = "ansible-playbook return code: {0}".format(
result.returncode
)
assert_msg = "\n".join(
[
"",
"-" * 30 + " Captured stdout " + "-" * 30,
result.stdout.decode("utf8"),
"-" * 30 + " Captured stderr " + "-" * 30,
result.stderr.decode("utf8"),
"-" * 30 + " Playbook Return Code " + "-" * 30,
status_code_msg,
]
)
# Need to get the last bytes of msg otherwise Azure
# will cut it out.
> assert result.returncode == 0, assert_msg[-2500:]
E AssertionError: urn self.__do_call(*args, **options)
E File "/usr/lib/python3.6/site-packages/ipalib/frontend.py", line 499, in __do_call
E ret = self.run(*args, **options)
E File "/usr/lib/python3.6/site-packages/ipalib/frontend.py", line 817, in run
E return self.forward(*args, **options)
E File "/usr/lib/python3.6/site-packages/ipalib/frontend.py", line 840, in forward
E *args, **kw)
E File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1146, in forward
E return self._call_command(command, params)
E File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1122, in _call_command
E return command(*params)
E File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1276, in _call
E return self.__request(name, args)
E File "/usr/lib/python3.6/site-packages/ipalib/rpc.py", line 1270, in __request
E raise error_class(**kw)
E fatal: [c8s]: FAILED! => {
E "changed": false,
E "failed_when_result": true,
E "invocation": {
E "module_args": {
E "action": "sudorule",
E "allow_sudocmd": null,
E "allow_sudocmdgroup": null,
E "cmdcategory": null,
E "deny_sudocmd": null,
E "deny_sudocmdgroup": null,
E "description": null,
E "group": null,
E "host": null,
E "hostcategory": null,
E "hostgroup": null,
E "hostmask": null,
E "ipaadmin_password": "VALUE_SPECIFIED_IN_NO_LOG_PARAMETER",
E "ipaadmin_principal": "admin",
E "ipaapi_context": "client",
E "ipaapi_ldap_cache": true,
E "name": [
E "testrule1"
E ],
E "nomembers": null,
E "order": 1,
E "runasgroup": null,
E "runasgroupcategory": null,
E "runasuser": null,
E "runasusercategory": null,
E