コード例 #1
0
ファイル: CollectApi.py プロジェクト: kim3163/kimjoon.github
    def _getScriptFiles(self, yyyyMMdd, workId, scriptFileList):
        if not scriptFileList:
            __LOG__.Trace('scriptFileList({}) is empty'.format(scriptFileList))
            return

        try:
            tacsWorkInfoPath = os.path.join(self.workInfoBaseDir, yyyyMMdd,
                                            workId)
            self._mkdirs(tacsWorkInfoPath)

            sftpClient = SFTPClient.SftpClient(self.host, self.port, self.user,
                                               self.passwd)
            for oneScriptFileDict in scriptFileList:
                remoteFilepath = oneScriptFileDict['remoteFilepath']
                remoteFilename = oneScriptFileDict['remoteFilename']

                sftpClient.download(remoteFilepath, remoteFilename,
                                    tacsWorkInfoPath)
                __LOG__.Trace(
                    'scriptFile from({}) -> to({}) download succeed'.format(
                        os.path.join(remoteFilepath, remoteFilename),
                        os.path.join(tacsWorkInfoPath, remoteFilename)))

            sftpClient.close()
        except Exception as ex:
            __LOG__.Trace('scriptFile download proccess failed {}'.format(ex))
            if not self.migration:
                self.writeErrFile()
            else:
                self.migrationSucWorkCnt -= 1

            self._removeCompleteWorkInfo(workId)
            raise ex
コード例 #2
0
    def _uploadWorkFiles(self, emsIp, workId):
        __LOG__.Trace('emsIp({}), workId({})'.format(emsIp, workId))
        sftpClient = None
        try:
            #########################################
            sftpClient = SFTPClient.SftpClient(emsIp, self.port, self.user,
                                               self.passwd)
            #			sftpClient = SFTPClient.SftpClient(emsIp, self.port, 'root','!hello.root0')
            ##########################################
            enmWorkInfoPath = os.path.join(self.enmWorkInfoBaseDir, workId)
            sftpClient.mkdirs(enmWorkInfoPath)

            emsWorkInfoPath = os.path.join(self.emsWorkInfoBaseDir, emsIp,
                                           workId)
            for oneFile in os.listdir(emsWorkInfoPath):
                if oneFile.startswith('.') or not os.path.isfile(
                        os.path.join(emsWorkInfoPath, oneFile)):
                    continue

                sftpClient.upload(os.path.join(emsWorkInfoPath, oneFile),
                                  os.path.join(enmWorkInfoPath, oneFile))
        except Exception as ex:
            __LOG__.Trace('uploadWorkFiles process failed. {}'.format(ex))
            raise ex
        finally:
            if sftpClient: sftpClient.close()