示例#1
0
    def setUp(self):
        self.conan_reference = ConanFileReference.loads("openssl/2.0.3@lasote/testing#%s" %
                                                        DEFAULT_REVISION_V1)

        self.package_reference = PackageReference(self.conan_reference, "123123123",
                                                  DEFAULT_REVISION_V1)
        self.tmp_dir = temp_folder()

        read_perms = [("*/*@*/*", "*")]
        write_perms = []
        authorizer = BasicAuthorizer(read_perms, write_perms)

        self.fake_url = "http://url"
        updown_auth_manager = JWTUpDownAuthManager("secret",
                                                   timedelta(seconds=200))
        adapter = ServerDiskAdapter(self.fake_url, self.tmp_dir, updown_auth_manager)
        self.server_store = ServerStore(storage_adapter=adapter)
        self.service = ConanService(authorizer, self.server_store, "lasote")
        self.search_service = SearchService(authorizer, self.server_store, "lasote")

        files = hello_source_files("test")
        save_files(self.server_store.export(self.conan_reference), files)
        self.server_store.update_last_revision(self.conan_reference)
        self.conan_digest = FileTreeManifest.create(self.server_store.export(self.conan_reference))
        conan_digest_path = os.path.join(self.server_store.export(self.conan_reference), CONAN_MANIFEST)
        save(conan_digest_path, str(self.conan_digest))

        files = hello_source_files("package")
        save_files(self.server_store.package(self.package_reference), files)
示例#2
0
 def search(auth_user):
     pattern = request.params.get("q", None)
     ignorecase = request.params.get("ignorecase", True)
     if isinstance(ignorecase, str):
         ignorecase = False if 'false' == ignorecase.lower() else True
     search_service = SearchService(app.authorizer, app.server_store, auth_user)
     references = [ref.full_repr() for ref in search_service.search(pattern, ignorecase)]
     return {"results": references}
示例#3
0
 def search_packages(conanname, version, username, channel, auth_user):
     query = request.params.get("q", None)
     search_service = SearchService(app.authorizer, app.search_manager,
                                    auth_user)
     conan_reference = ConanFileReference(conanname, version, username,
                                          channel)
     info = search_service.search_packages(conan_reference, query)
     return info
示例#4
0
 def search_packages(name, version, username, channel, auth_user):
     query = request.params.get("q", None)
     search_service = SearchService(app.authorizer, app.server_store,
                                    auth_user)
     conan_reference = ConanFileReference(name, version, username,
                                          channel)
     info = search_service.search_packages(conan_reference,
                                           query,
                                           v2_compatibility_mode=True)
     return info
示例#5
0
 def search_packages(name,
                     version,
                     username,
                     channel,
                     auth_user,
                     revision=None):
     query = request.params.get("q", None)
     search_service = SearchService(app.authorizer, app.server_store,
                                    auth_user)
     ref = ConanFileReference(name, version, username, channel,
                              revision)
     info = search_service.search_packages(ref, query)
     return info
示例#6
0
 def search_packages(name,
                     version,
                     username,
                     channel,
                     auth_user,
                     revision=None):
     v2_compatibility_mode = request.headers.get(
         "V2_COMPATIBILITY_MODE", "0") == "1"
     query = request.params.get("q", None)
     search_service = SearchService(app.authorizer, app.server_store,
                                    auth_user)
     conan_reference = ConanFileReference(name, version, username,
                                          channel, revision)
     info = search_service.search_packages(conan_reference, query,
                                           v2_compatibility_mode)
     return info