Beispiel #1
0
    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
Beispiel #2
0
    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
Beispiel #3
0
    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)