Пример #1
0
	def generate_payload(self):
		"""
		Generate self.payload.
		"""

		env = Environment()

		self.set_data(self.payload, 'ENV', 'PLATFORM', env.get_platform)
		self.set_data(self.payload, 'ENV', 'LASTSYNC', env.get_last_sync)
		self.set_data(self.payload, 'ENV', 'PROFILE', env.get_profile)

		for var in ['ARCH', 'CHOST', 'CTARGET', 'CFLAGS', 'CXXFLAGS', 'FFLAGS',
				'LDFLAGS', 'ACCEPT_LICENSE', 'MAKEOPTS', 'EMERGE_DEFAULT_OPTS',
				'PORTAGE_RSYNC_EXTRA_OPTS', 'SYNC', 'LANG']:
			self.set_data(self.payload, 'ENV', var, env.get_var, var)

		for var in ['ACCEPT_KEYWORDS', 'GENTOO_MIRRORS', 'FEATURES', 'USE']:
			self.set_data(self.payload, 'ENV', var, lambda x: env.get_var(x).split(), var)

		# Only bother calling get_installed_CPVs() if any of the following is
		# enabled:
		if self.any_one_is_enabled('PACKAGES',
				['BUILD_TIME', 'KEYWORD', 'REPO',
				'SIZE', 'IUSE', 'PKGUSE', 'USE']):
			self.analyse_packages()

		self.set_data(self.payload, 'PACKAGES', 'WORLDSET', Packages.get_set, "world")