Example #1
0
 def create_repo(self, repo: AnyRepository) -> AnyRepositoryResponse:
     """
     Creates a local, virtual or remote repository
     :param repo: Either a local, virtual or remote repository
     :return: LocalRepositoryResponse, VirtualRepositoryResponse or RemoteRepositoryResponse object
     """
     repo_name = repo.key
     try:
         self.get_repo(repo_name)
         logger.error("Repository %s already exists", repo_name)
         raise RepositoryAlreadyExistsException(
             f"Repository {repo_name} already exists"
         )
     except RepositoryNotFoundException:
         self._put(f"api/{self._uri}/{repo_name}", json=repo.dict())
         logger.debug("Repository %s successfully created", repo_name)
         return self.get_repo(repo_name)
 def create_remote_repo(self,
                        repo: RemoteRepository) -> RemoteRepositoryResponse:
     """
     Creates a new local repository
     :param repo: RemoteRepository object
     :return: RemoteRepositoryResponse object
     """
     repo_name = repo.key
     try:
         self.get_remote_repo(repo_name)
         logging.error(f"Repository {repo_name} already exists")
         raise RepositoryAlreadyExistsException(
             f"Repository {repo_name} already exists")
     except RepositoryNotFoundException:
         self._put(f"api/{self._uri}/{repo_name}", json=repo.dict())
         logging.debug(f"Repository {repo_name} successfully created")
         return self.get_remote_repo(repo_name)
Example #3
0
 def create_remote_repo(self,
                        repo: RemoteRepository) -> RemoteRepositoryResponse:
     """
     Creates a new local repository
     :param repo: RemoteRepository object
     :return: RemoteRepositoryResponse object
     """
     warnings.warn(
         "`create_remote_repo()` is deprecated, use `create_repo` instead",
         DeprecationWarning,
     )
     repo_name = repo.key
     try:
         self.get_remote_repo(repo_name)
         logger.error("Repository %s already exists", repo_name)
         raise RepositoryAlreadyExistsException(
             f"Repository {repo_name} already exists")
     except RepositoryNotFoundException:
         self._put(f"api/{self._uri}/{repo_name}", json=repo.dict())
         logger.debug("Repository %s successfully created", repo_name)
         return self.get_remote_repo(repo_name)
Example #4
0
 def create_repo(self, repo: AnyRepository) -> AnyRepositoryResponse:
     """
     Creates a local, virtual or remote repository
     :param repo: Either a local, virtual or remote repository
     :return: LocalRepositoryResponse, VirtualRepositoryResponse or RemoteRepositoryResponse object
     """
     repo_name = repo.key
     try:
         self.get_repo(repo_name)
         logger.error("Repository %s already exists", repo_name)
         raise RepositoryAlreadyExistsException(
             f"Repository {repo_name} already exists")
     except RepositoryNotFoundException:
         data = json.dumps(repo, default=custom_encoder)
         self._put(
             f"api/{self._uri}/{repo_name}",
             headers={"Content-Type": "application/json"},
             data=data,
         )
         logger.debug("Repository %s successfully created", repo_name)
         return self.get_repo(repo_name)