Module rugged.lib.validate
Functions
def validate_keys() ‑> None
-
Expand source code
def validate_keys() -> None: """ Validate TUF repository keys. """ key_validator = KeyValidator() try: key_validator.validate_config_keys() log.info("All expected keys are present.") except RuggedKeyError as e: log_exception(e) log.error("An expected key was not found. Check logs for details.") sys.exit(os.EX_DATAERR) try: key_validator.validate_storage_keys() log.info("Only expected keys are present.") except RuggedKeyError as e: log_exception(e) log.error("An unexpected key was found. Check logs for details.") sys.exit(os.EX_DATAERR) try: key_validator.validate_repo_keys() log.info("All keys in repository are valid.") except RuggedKeyError as e: log_exception(e) log.error("An invalid key was found in the repository. Check logs for details.") sys.exit(os.EX_DATAERR)
Validate TUF repository keys.
def validate_metadata() ‑> None
-
Expand source code
def validate_metadata() -> None: """ Validate TUF repository metadata. """ metadata_validator = MetadataValidator() # The order that top-level metadata is loaded is important. role_validation_callbacks = { 'root': 'validate_root', 'timestamp': 'validate_timestamp', 'snapshot': 'validate_snapshot', 'targets': 'validate_targets', } if hashed_bins_is_enabled(): role_validation_callbacks['bins'] = 'validate_hashed_bins' for role, callback in role_validation_callbacks.items(): log.debug(f"Calling '{callback}()' to validate {role} metadata.") func = getattr(metadata_validator, callback) try: func() log.info(f"Metadata for the '{role}' role is valid.") except RuggedMetadataError: log.error(f"Metadata for the '{role}' role is not valid.") sys.exit(os.EX_DATAERR)
Validate TUF repository metadata.