def __init__(self, project_options=None): if project_options is None: project_options = snapcraft.ProjectOptions() self.build_tools = [] self._project_options = project_options self._snapcraft_yaml = get_snapcraft_yaml() snapcraft_yaml = _snapcraft_yaml_load(self._snapcraft_yaml) self._validator = Validator(snapcraft_yaml) self._validator.validate() snapcraft_yaml = self._process_remote_parts(snapcraft_yaml) snapcraft_yaml = self._expand_filesets(snapcraft_yaml) self.data = self._expand_env(snapcraft_yaml) self._ensure_no_duplicate_app_aliases() # both confinement type and build quality are optionals _ensure_confinement_default(self.data, self._validator.schema) _ensure_grade_default(self.data, self._validator.schema) self.build_tools = self.data.get('build-packages', []) self.build_tools.extend(project_options.additional_build_packages) self.parts = parts.PartsConfig(self.data, self._project_options, self._validator, self.build_tools, self._snapcraft_yaml) if 'architectures' not in self.data: self.data['architectures'] = [self._project_options.deb_arch]
def __init__(self, project_options=None): if project_options is None: project_options = snapcraft.ProjectOptions() self.build_tools = [] self._project_options = project_options self._snapcraft_yaml = _get_snapcraft_yaml() self.data = _snapcraft_yaml_load(self._snapcraft_yaml) self._validator = Validator(self.data) self._validator.validate() _ensure_confinement_default(self.data, self._validator.schema) self.build_tools = self.data.get('build-packages', []) self.build_tools.extend(project_options.additional_build_packages) self.parts = parts.PartsConfig(self.data.get('parts', {}), self._project_options, self._validator, self.build_tools, self._snapcraft_yaml) if 'architectures' not in self.data: self.data['architectures'] = [self._project_options.deb_arch]