Get a list of all golang packages for all available branches

def getGolangPackages(self):
		"""Get a list of all golang packages for all available branches
		"""

		packages = {}

		# get all packages
		url = "%s/packages" % self.base_url
		params = {"pattern": "golang-*", "limit": 200}
		response = requests.get(url, params=params)
		if response.status_code != requests.codes.ok:
			return {}

		data = response.json()
		for package in data["packages"]:
			packages[package["name"]] = self._processPackageData(package)

		# accumulate packages from all pages
		for page in range(2, data["page_total"] + 1):
			params = {"pattern": "golang-*", "limit": 200, "page": page}
			response = requests.get(url, params=params)
			if response.status_code != requests.codes.ok:
				continue

			data = response.json()
			for package in data["packages"]:
				packages[package["name"]] = self._processPackageData(package)

		# get branches of all packages
		MAX_LEN = 30
		# break the list of packages into lists of at most 50 packages
		package_names = packages.keys()

		packages_total = len(package_names)
		packages_counter = 0
		logger.info("%s packages to process" % packages_total)

		for i in range(0, packages_total, MAX_LEN):
			sublist = package_names[i:i+MAX_LEN]
			branches = self._getPackageBranches(sublist)
			for package in sublist:
				packages[package]["branches"] = branches[package]

			packages_counter = packages_counter + len(branches)
			logger.info("%s/%s packages processed" % (packages_counter, packages_total))

		return packages