mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
ipalib: Fix skip_version_check option
This reverts commit ea7f392bb9
.
The option can be either set in IPA config file or specified as
'ipa -e skip_version_check=1 [COMMAND]'.
https://fedorahosted.org/freeipa/ticket/4768
Reviewed-By: Martin Basti <mbasti@redhat.com>
This commit is contained in:
parent
bf6df3df9b
commit
232458a222
@ -166,6 +166,9 @@ Specifies how the expiration of a session is computed. With \fBinactivity_timeou
|
|||||||
.B server <hostname>
|
.B server <hostname>
|
||||||
Specifies the IPA Server hostname.
|
Specifies the IPA Server hostname.
|
||||||
.TP
|
.TP
|
||||||
|
.B skip_version_check <boolean>
|
||||||
|
Skip client vs. server API version checking. Can lead to errors/strange behavior when newer clients talk to older servers. Use with caution.
|
||||||
|
.TP
|
||||||
.B startup_timeout <time in seconds>
|
.B startup_timeout <time in seconds>
|
||||||
Controls the amount of time waited when starting a service. The default value is 120 seconds.
|
Controls the amount of time waited when starting a service. The default value is 120 seconds.
|
||||||
.TP
|
.TP
|
||||||
|
@ -26,6 +26,7 @@ from distutils import version
|
|||||||
|
|
||||||
from ipapython.version import API_VERSION
|
from ipapython.version import API_VERSION
|
||||||
from ipapython.ipa_log_manager import root_logger
|
from ipapython.ipa_log_manager import root_logger
|
||||||
|
from ipalib.capabilities import VERSION_WITHOUT_CAPABILITIES
|
||||||
from base import NameSpace
|
from base import NameSpace
|
||||||
from plugable import Plugin
|
from plugable import Plugin
|
||||||
from parameters import create_param, Param, Str, Flag, Password
|
from parameters import create_param, Param, Str, Flag, Password
|
||||||
@ -423,7 +424,9 @@ class Command(HasParam):
|
|||||||
version_provided = 'version' in options
|
version_provided = 'version' in options
|
||||||
if version_provided:
|
if version_provided:
|
||||||
self.verify_client_version(unicode(options['version']))
|
self.verify_client_version(unicode(options['version']))
|
||||||
elif self.api.env.in_server or not self.api.env.skip_version_check:
|
elif self.api.env.skip_version_check and not self.api.env.in_server:
|
||||||
|
options['version'] = VERSION_WITHOUT_CAPABILITIES
|
||||||
|
else:
|
||||||
options['version'] = API_VERSION
|
options['version'] = API_VERSION
|
||||||
params = self.args_options_2_params(*args, **options)
|
params = self.args_options_2_params(*args, **options)
|
||||||
self.debug(
|
self.debug(
|
||||||
@ -451,7 +454,7 @@ class Command(HasParam):
|
|||||||
):
|
):
|
||||||
ret['summary'] = self.get_summary_default(ret)
|
ret['summary'] = self.get_summary_default(ret)
|
||||||
if self.use_output_validation and (self.output or ret is not None):
|
if self.use_output_validation and (self.output or ret is not None):
|
||||||
self.validate_output(ret, options.get('version', API_VERSION))
|
self.validate_output(ret, options['version'])
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
def soft_validate(self, values):
|
def soft_validate(self, values):
|
||||||
|
@ -484,12 +484,6 @@ class API(ReadOnly):
|
|||||||
dest='fallback',
|
dest='fallback',
|
||||||
help='Only use the server configured in /etc/ipa/default.conf'
|
help='Only use the server configured in /etc/ipa/default.conf'
|
||||||
)
|
)
|
||||||
parser.add_option(
|
|
||||||
'--skip-version-check',
|
|
||||||
action='store_true',
|
|
||||||
dest='skip_version_check',
|
|
||||||
help=optparse.SUPPRESS_HELP
|
|
||||||
)
|
|
||||||
|
|
||||||
return parser
|
return parser
|
||||||
|
|
||||||
@ -509,7 +503,7 @@ class API(ReadOnly):
|
|||||||
pass
|
pass
|
||||||
overrides[str(key.strip())] = value.strip()
|
overrides[str(key.strip())] = value.strip()
|
||||||
for key in ('conf', 'debug', 'verbose', 'prompt_all', 'interactive',
|
for key in ('conf', 'debug', 'verbose', 'prompt_all', 'interactive',
|
||||||
'fallback', 'delegate', 'skip_version_check'):
|
'fallback', 'delegate'):
|
||||||
value = getattr(options, key, None)
|
value = getattr(options, key, None)
|
||||||
if value is not None:
|
if value is not None:
|
||||||
overrides[key] = value
|
overrides[key] = value
|
||||||
|
Loading…
Reference in New Issue
Block a user