async def check_quota(self, provider):
        """Check quota before proceeding with build/launch

        Returns:

        - ServerQuotaCheck on success (None if no quota)

        Raises:

        - LaunchQuotaExceeded if quota exceeded
        """
        # Load the spec-specific configuration if it has been overridden
        repo_config = provider.repo_config(self.settings)

        launch_quota = self.settings["launch_quota"]
        try:
            return await launch_quota.check_repo_quota(
                self.image_name, repo_config, self.repo_url
            )
        except LaunchQuotaExceeded as e:
            LAUNCH_COUNT.labels(
                status=e.status,
                **self.repo_metric_labels,
            ).inc()
            await self.fail(e.message)
            raise
Check quota before proceeding with build/launch

        Returns:

        - ServerQuotaCheck on success (None if no quota)

        Raises:

        - LaunchQuotaExceeded if quota exceeded
        
binderhub/builder.py