def testSerialize(self): self.packager.add({"os": "Windows", "compiler": "Visual Studio"}, {"option1": "value1", "option2": "value2"}) serial = self.packager.serialize() self.assertEquals(serial, '{"username": "******", "conan_pip_package": null, "args": "--build missing -r conan.io", '\ '"builds": [[{"os": "Windows", "compiler": "Visual Studio"}, '\ '{"option2": "value2", "option1": "value1"}]], "channel": "mychannel"}') mp = ConanMultiPackager.deserialize(serial, username="******") self.assertEqual(mp.conan_pip_package, None) self.packager.conan_pip_package = "conan==0.0.1rc7" serial = self.packager.serialize() mp = ConanMultiPackager.deserialize(serial, username="******") self.assertEqual(mp.conan_pip_package, "conan==0.0.1rc7")
def run(): """Reads environment json to create a ConanMultiPackager, It can run packages with pagination with CONAN_TOTAL_PAGES and CONAN_CURRENT_PAGE""" the_json = os.getenv("CONAN_BUILDER_ENCODED", None) current_page = int(os.getenv("CONAN_CURRENT_PAGE", "1")) total_pages = int(os.getenv("CONAN_TOTAL_PAGES", "1")) builder = ConanMultiPackager.deserialize(the_json) builder.pack(current_page, total_pages)