Merge pull request #16342 from whiteinge/wildcard-eauth-check

Removed duplicate eauth name checks
This commit is contained in:
Thomas S Hatch 2014-10-03 00:14:44 -06:00
commit e41c5c2f52
5 changed files with 36 additions and 25 deletions

View File

@ -982,13 +982,10 @@ class LocalFuncs(object):
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
if token['name'] not in self.opts['external_auth'][token['eauth']]:
msg = 'Authentication failure of type "token" occurred.'
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
good = self.ckminions.runner_check(
self.opts['external_auth'][token['eauth']][token['name']] if token['name'] in self.opts['external_auth'][token['eauth']] else self.opts['external_auth'][token['eauth']]['*'],
self.opts['external_auth'][token['eauth']][token['name']]
if token['name'] in self.opts['external_auth'][token['eauth']]
else self.opts['external_auth'][token['eauth']]['*'],
load['fun'])
if not good:
msg = ('Authentication failure of type "token" occurred for '
@ -1094,11 +1091,6 @@ class LocalFuncs(object):
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
if token['name'] not in self.opts['external_auth'][token['eauth']]:
msg = 'Authentication failure of type "token" occurred.'
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
good = self.ckminions.wheel_check(
self.opts['external_auth'][token['eauth']][token['name']]
if token['name'] in self.opts['external_auth'][token['eauth']]

View File

@ -1728,13 +1728,11 @@ class ClearFuncs(object):
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
if token['name'] not in self.opts['external_auth'][token['eauth']]:
msg = 'Authentication failure of type "token" occurred.'
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
good = self.ckminions.runner_check(
self.opts['external_auth'][token['eauth']][token['name']] if token['name'] in self.opts['external_auth'][token['eauth']] else self.opts['external_auth'][token['eauth']]['*'],
self.opts['external_auth'][token['eauth']][token['name']]
if token['name'] in self.opts['external_auth'][token['eauth']]
else self.opts['external_auth'][token['eauth']]['*'],
clear_load['fun'])
if not good:
msg = ('Authentication failure of type "token" occurred for '
@ -1786,7 +1784,9 @@ class ClearFuncs(object):
return dict(error=dict(name='EauthAuthenticationError',
message=msg))
good = self.ckminions.runner_check(
self.opts['external_auth'][clear_load['eauth']][name] if name in self.opts['external_auth'][clear_load['eauth']] else self.opts['external_auth'][clear_load['eauth']]['*'],
self.opts['external_auth'][clear_load['eauth']][name]
if name in self.opts['external_auth'][clear_load['eauth']]
else self.opts['external_auth'][clear_load['eauth']]['*'],
clear_load['fun'])
if not good:
msg = ('Authentication failure of type "eauth" occurred for '
@ -1840,11 +1840,6 @@ class ClearFuncs(object):
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
if token['name'] not in self.opts['external_auth'][token['eauth']]:
msg = 'Authentication failure of type "token" occurred.'
log.warning(msg)
return dict(error=dict(name='TokenAuthenticationError',
message=msg))
good = self.ckminions.wheel_check(
self.opts['external_auth'][token['eauth']][token['name']]
if token['name'] in self.opts['external_auth'][token['eauth']]

View File

@ -40,6 +40,10 @@ external_auth:
- '@wheel'
- '@runner'
- test.*
'*':
- '@wheel'
- '@runner'
- test.*
master_tops:
master_tops_test: True

View File

@ -89,6 +89,16 @@ class RunnerModuleTest(integration.ClientCase):
self.assertEqual(ret['kwargs']['foo'], 'Foo!')
self.assertEqual(ret['kwargs']['bar'], 'Bar!')
def test_wildcard_auth(self):
low = {
'username': 'the_s0und_of_t3ch',
'password': 'willrockyou',
'eauth': 'auto',
'fun': 'test.arg',
'foo': 'Foo!',
'bar': 'Bar!',
}
self.runner.cmd_sync(low)
if __name__ == '__main__':
from integration import run_tests

View File

@ -57,6 +57,16 @@ class WheelModuleTest(integration.ClientCase):
'token': token['token'],
})
def test_wildcard_auth(self):
low = {
'username': 'the_s0und_of_t3ch',
'password': 'willrockyou',
'eauth': 'auto',
'fun': 'key.list_all',
}
self.wheel.cmd_sync(low)
if __name__ == '__main__':
from integration import run_tests
run_tests(WheelModuleTest, needs_daemon=True)