diff --git a/.zuul.yaml b/.zuul.yaml index 0a48041fa7..032a0da29d 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -10,7 +10,7 @@ - project: templates: - - openstack-python3-victoria-jobs + - openstack-python3-zed-jobs - build-openstack-docs-pti check: jobs: @@ -19,12 +19,17 @@ irrelevant-files: - ^doc/.*$ - releases-tox-list-changes - - openstack-tox-py36: + - openstack-tox-py38: irrelevant-files: - ^data/.*$ - ^deliverables/.*$ - ^doc/.*$ - - openstack-tox-py37: + - openstack-tox-py39: + irrelevant-files: + - ^data/.*$ + - ^deliverables/.*$ + - ^doc/.*$ + - openstack-tox-py310: irrelevant-files: - ^data/.*$ - ^deliverables/.*$ @@ -46,12 +51,17 @@ timeout: 10800 irrelevant-files: - ^doc/.*$ - - openstack-tox-py36: + - openstack-tox-py38: irrelevant-files: - ^data/.*$ - ^deliverables/.*$ - ^doc/.*$ - - openstack-tox-py37: + - openstack-tox-py39: + irrelevant-files: + - ^data/.*$ + - ^deliverables/.*$ + - ^doc/.*$ + - openstack-tox-py310: irrelevant-files: - ^data/.*$ - ^deliverables/.*$ diff --git a/openstack_releases/cmds/check_schema.py b/openstack_releases/cmds/check_schema.py index 3a2fdb8297..8060b4e365 100644 --- a/openstack_releases/cmds/check_schema.py +++ b/openstack_releases/cmds/check_schema.py @@ -45,20 +45,20 @@ _LIAISONS_SCHEMA = yamlutils.loads( ) -def is_date(validator, value, instance, schema): - if not isinstance(instance, str): - return - try: - return datetime.datetime.strptime(instance, "%Y-%m-%d") - except Exception: - yield jsonschema.ValidationError('Invalid date {!r}'.format(instance)) +def is_date(validator, instance): + return ( + isinstance(instance, datetime.date) and + not isinstance(instance, datetime.datetime) + ) def make_validator_with_date(schema_data): + draft4_validator = jsonschema.Draft4Validator + date_type_checker = draft4_validator.TYPE_CHECKER.redefine("date", is_date) return jsonschema.validators.extend( - validator=jsonschema.Draft4Validator(schema_data), - validators={'date': is_date}, - )(schema_data, types={'date': datetime.date}) + validator=draft4_validator, + type_checker=date_type_checker + )(schema=schema_data) def validate_one_file(filename, schema_data, debug): diff --git a/requirements.txt b/requirements.txt index a567f662cd..c44b27603e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -17,7 +17,7 @@ yamlordereddictloader prompt_toolkit>=2.0.7 tqdm mwclient==0.8.1 -jsonschema<4.0.0,>=3.2.0 +jsonschema>=3.2.0 twine>=1.13.0 wheel>=0.34.2 ruamel.yaml>=0.15