def get_relative_time_option(self, input_string, input_name): """Return an ASN1 formatted string if a relative timespec or an ASN1 formatted string is provided.""" result = input_string if result.startswith("+") or result.startswith("-"): result = crypto_utils.convert_relative_to_datetime( result).strftime("%Y%m%d%H%M%SZ") if result is None: raise CertificateError( 'The timespec "%s" for %s is not valid' % input_string, input_name) return result
def convert_to_datetime(self, module, timestring): if self.is_relative(timestring): result = convert_relative_to_datetime(timestring) if result is None: module.fail_json( msg="'%s' is not a valid time format." % timestring) else: return result else: formats = ["%Y-%m-%d", "%Y-%m-%d %H:%M:%S", "%Y-%m-%dT%H:%M:%S", ] for fmt in formats: try: return datetime.strptime(timestring, fmt) except ValueError: pass module.fail_json(msg="'%s' is not a valid time format" % timestring)
def get_relative_time_option(self, input_string, input_name): """Return an ASN1 formatted string if a relative timespec or an ASN1 formatted string is provided.""" result = to_native(input_string) if result is None: raise CRLError( 'The timespec "%s" for %s is not valid' % input_string, input_name) if result.startswith("+") or result.startswith("-"): return crypto_utils.convert_relative_to_datetime(result) for date_fmt in [ '%Y%m%d%H%M%SZ', '%Y%m%d%H%MZ', '%Y%m%d%H%M%S%z', '%Y%m%d%H%M%z' ]: try: return datetime.datetime.strptime(result, date_fmt) except ValueError: pass raise CRLError('The time spec "%s" for %s is invalid' % (input_string, input_name))
def get_relative_time_option(input_string, input_name): """Return an ASN1 formatted string if a relative timespec or an ASN1 formatted string is provided.""" result = input_string if result.startswith("+") or result.startswith("-"): return crypto_utils.convert_relative_to_datetime(result) if result is None: raise crypto_utils.OpenSSLObjectError( 'The timespec "%s" for %s is not valid' % input_string, input_name) for date_fmt in ['%Y%m%d%H%M%SZ', '%Y%m%d%H%MZ', '%Y%m%d%H%M%S%z', '%Y%m%d%H%M%z']: try: result = datetime.datetime.strptime(input_string, date_fmt) break except ValueError: pass if not isinstance(result, datetime.datetime): raise crypto_utils.OpenSSLObjectError( 'The time spec "%s" for %s is invalid' % (input_string, input_name) ) return result