def find_diff_build()

in libmozdata/phabricator.py [0:0]


    def find_diff_build(self, object_phid, build_plan_phid):
        """
        Find a specific build and its targets for a Diff and an HarborMaster build plan
        """
        assert isinstance(object_phid, str)
        assert object_phid[0:10] in ("PHID-DIFF-", "PHID-DREV-")
        assert build_plan_phid.startswith("PHID-HMCP-")

        # First find the buildable for this diff
        buildables = self.search_buildable(object_phid=object_phid)
        assert len(buildables) == 1
        buildable = buildables[0]
        logger.info(
            "Found HarborMaster buildable id={id} phid={phid}".format(**buildable)
        )

        # Then find the build in that buildable & plan
        builds = self.search_build(
            buildable_phid=buildable["phid"], plans=[build_plan_phid]
        )
        assert len(buildables) == 1
        build = builds[0]
        logger.info("Found HarborMaster build id={id} phid={phid}".format(**build))

        # Finally look for the build targets
        targets = self.search_build_target(build_phid=build["phid"])
        logger.info("Found {} HarborMaster build targets".format(len(targets)))

        return build, targets