def set_versiondata(self, metadata): """ register metadata. Raises ValueError in case of metadata errors. """ validate_metadata(metadata) name = metadata["name"] # check if the project exists already under its normalized projectname = self.get_projectname(name) log = thread_current_log() if projectname is not None and projectname != name: log.error("project %r has other name %r in stage %s" % (name, projectname, self.name)) raise self.RegisterNameConflict(projectname) self._set_versiondata(metadata)
def set_versiondata(self, metadata): """ register metadata. Raises ValueError in case of metadata errors. """ validate_metadata(metadata) name = metadata["name"] # check if the project exists already under its normalized projectname = self.get_projectname(name) log = thread_current_log() if projectname is not None and projectname != name: log.error("project %r has other name %r in stage %s" %( name, projectname, self.name)) raise self.RegisterNameConflict(projectname) self._set_versiondata(metadata)
def set_versiondata(self, metadata): """ register metadata. Raises ValueError in case of metadata errors. """ validate_metadata(metadata) name = metadata["name"] # check if the project exists already under its normalized projectname = self.get_projectname(name) log = thread_current_log() if projectname is not None and projectname != name: log.warn("using already registered name %r for submitted %r " "in stage %r" %( projectname, name, self.name)) metadata["name"] = projectname self._set_versiondata(metadata)
def register_metadata(self, metadata): """ register metadata. Raises ValueError in case of metadata errors. """ validate_metadata(metadata) name = metadata["name"] # check if the project exists already under its normalized info = self.get_project_info(name) if info: log.info("got project info with name %r" % info.name) else: log.debug("project %r does not exist, good", name) if info is not None and info.name != name: log.error("project %r has other name %r in stage %s" % (name, info.name, self.name)) raise self.RegisterNameConflict(info) self._register_metadata(metadata)
def register_metadata(self, metadata): """ register metadata. Raises ValueError in case of metadata errors. """ validate_metadata(metadata) name = metadata["name"] # check if the project exists already under its normalized info = self.get_project_info(name) if info: log.info("got project info with name %r" % info.name) else: log.debug("project %r does not exist, good", name) if info is not None and info.name != name: log.error("project %r has other name %r in stage %s" %( name, info.name, self.name)) raise self.RegisterNameConflict(info) self._register_metadata(metadata)
def validate_meta_data(meta_data): """ Use devpi-common's metadata validation routines Arguments: meta_data (PackageFileMetaData): meta data to validate. Raises: Exception: If invalid """ _LOGGER.debug("Begin validating meta data") isinstance(meta_data, PackageFileMetaData) raw_meta_data = { 'name': meta_data.project_name, 'version': meta_data.version, } try: dc_validation.validate_metadata(raw_meta_data) except Exception as error: _LOGGER.exception( "Meta data from failed validation by devpi-common %s", str(raw_meta_data)) raise AssertionError("Invalid meta-data, see logs for details") else: _LOGGER.debug("Finished validating meta data")
def set_versiondata(self, metadata): """ register metadata. Raises ValueError in case of metadata errors. """ validate_metadata(metadata) self._set_versiondata(metadata)
def test_invalid(self, name): pytest.raises( ValueError, lambda: validate_metadata(data=dict(name=name, version="1.0")))
def test_valid_names(self, name): validate_metadata(data=dict(name=name, version="1.0"))