def getAllPackageFolderInfos(self, projectName): folderInfos = [] self.setPathsForProject(projectName) projConfig = self._schemaLoader.loadProjectConfig(projectName) for packageFolder in projConfig.packageFolders: folderInfo = PackageFolderInfo() folderInfo.path = packageFolder if self._sys.directoryExists(packageFolder): for packageName in self._sys.walkDir(packageFolder): packageDirPath = os.path.join(packageFolder, packageName) if not self._sys.IsDir(packageDirPath): continue installInfoFilePath = os.path.join(packageDirPath, InstallInfoFileName) packageInfo = PackageInfo() packageInfo.name = packageName if self._sys.fileExists(installInfoFilePath): installInfo = YamlSerializer.deserialize(self._sys.readFileAsText(installInfoFilePath)) packageInfo.installInfo = installInfo folderInfo.packages.append(packageInfo) folderInfos.append(folderInfo) return folderInfos
def _loadProjectConfig(self, projectName): configPath = self._getProjectConfigPath(projectName) yamlData = YamlSerializer.deserialize(self._sys.readFileAsText(configPath)) result = ProjectConfig() for pair in yamlData.__dict__.items(): result.__dict__[pair[0]] = pair[1] return result
def _loadProjectConfig(self, projectName): configPath = self._getProjectConfigPath(projectName) yamlData = YamlSerializer.deserialize( self._sys.readFileAsText(configPath)) result = ProjectConfig() for pair in yamlData.__dict__.items(): result.__dict__[pair[0]] = pair[1] return result
def init(self): with self._log.heading("Initializing remote server release source"): self._log.debug("Initializing remote server release source with URL '{0}'", self._manifestUrl) response = urllib.request.urlopen(self._manifestUrl) manifestData = response.read().decode('utf-8') self._log.debug("Got manifest with data: \n{0}".format(manifestData)) self._manifest = YamlSerializer.deserialize(manifestData) for info in self._manifest.releases: info.url = urllib.parse.urljoin(self._manifestUrl, info.localPath) info.localPath = None self._releaseInfos.append(info)
def init(self): with self._log.heading("Initializing remote server release source"): self._log.debug( "Initializing remote server release source with URL '{0}'", self._manifestUrl) response = urllib.request.urlopen(self._manifestUrl) manifestData = response.read().decode('utf-8') self._log.debug( "Got manifest with data: \n{0}".format(manifestData)) self._manifest = YamlSerializer.deserialize(manifestData) for info in self._manifest.releases: info.url = urllib.parse.urljoin(self._manifestUrl, info.localPath) info.localPath = None self._releaseInfos.append(info)