def backup(): isfile = os.path.exists(NAME_FILE + ".dt") if isfile: new_name_file = NAME_FILE + " " + str(datetime.datetime.today().strftime("%d_%m_%Y %H_%M_%S")) + ".dt" os.rename(NAME_FILE + ".dt", new_name_file) args = shlex.split(SCRIPT_FILE) p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) p.communicate() if os.path.exists(NAME_FILE + ".dt"): add_record_register() new_name_file = NAME_FILE + " " + str(datetime.datetime.today().strftime("%d_%m_%Y %H_%M_%S")) + ".dt" os.rename(NAME_FILE + ".dt", new_name_file) try: from YaDiskClient import YaDisk disk = YaDisk(YA_USER, YA_PASS) disk.upload(new_name_file, '/' + new_name_file) except: add_record_logs(u'Ошибка отправки файла на Яндекс.Диск') if os.path.exists(NAME_FILE_LOG + ".txt"): try: # TODO доделать f = open(NAME_FILE_LOG + ".txt") r = f.read().decode('windows-1251') f.close() add_record_logs(r) os.remove(NAME_FILE_LOG + ".txt") except: pass
def backup(): isfile = os.path.exists(NAME_FILE + ".dt") if isfile: new_name_file = NAME_FILE + " " + str( datetime.datetime.today().strftime("%d_%m_%Y %H_%M_%S")) + ".dt" os.rename(NAME_FILE + ".dt", new_name_file) args = shlex.split(SCRIPT_FILE) p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) p.communicate() if os.path.exists(NAME_FILE + ".dt"): add_record_register() new_name_file = NAME_FILE + " " + str( datetime.datetime.today().strftime("%d_%m_%Y %H_%M_%S")) + ".dt" os.rename(NAME_FILE + ".dt", new_name_file) try: from YaDiskClient import YaDisk disk = YaDisk(YA_USER, YA_PASS) disk.upload(new_name_file, '/' + new_name_file) except: add_record_logs(u'Ошибка отправки файла на Яндекс.Диск') if os.path.exists(NAME_FILE_LOG + ".txt"): try: # TODO доделать f = open(NAME_FILE_LOG + ".txt") r = f.read().decode('windows-1251') f.close() add_record_logs(r) os.remove(NAME_FILE_LOG + ".txt") except: pass
def upload_to_yadisk(uploads_files, config): if ast.literal_eval(config['yadisk']['on']): yd = YaDisk(config['yadisk']['user'],config['yadisk']['password']) try: yd.mkdir(config['yadisk']['directory']) except Exception as error: print '{0}'.format(error) for file in uploads_files: print 'Upload ' + file + ' to YaDisk' try: yd.upload(file, '%s/%s' % ( config['yadisk']['directory'], os.path.basename(os.path.abspath(file)))) print 'Upload ' + file + ' successful!' logging.info('Upload ' + '{0}' + ' successful finished'.format(file)) except Exception as error: print 'Upload error...' + '\n' + '{0}'.format(error) logging.error('upload to YaDisk error...' + '{0}'.format(error)) sys.exit()
def test_yadisk_connection(self, cr, uid, ids, context=None): res = {} context = dict(context or {}) yadisk_obj = self.pool.get('yadisk.odoo.connector') yadisk_data = yadisk_obj.browse(cr, uid, ids, context=context) ya_username = yadisk_data.yadisk_user ya_passwd = yadisk_data.yadisk_pass disk = YaDisk(ya_username, ya_passwd) #_logger.warning("Yandex Disk: %s", disk ) try: result = disk.df() except Exception, e: error = tools.ustr(e) result = False
def upload_to_yadisk(uploads_files, config): if ast.literal_eval(config['yadisk']['on']): yd = YaDisk(config['yadisk']['user'], config['yadisk']['password']) try: yd.mkdir(config['yadisk']['directory']) except Exception as error: print '{0}'.format(error) for file in uploads_files: print 'Upload ' + file + ' to YaDisk' try: yd.upload( file, '%s/%s' % (config['yadisk']['directory'], os.path.basename(os.path.abspath(file)))) print 'Upload ' + file + ' successful!' logging.info('Upload ' + '{0}' + ' successful finished'.format(file)) except Exception as error: print 'Upload error...' + '\n' + '{0}'.format(error) logging.error('upload to YaDisk error...' + '{0}'.format(error)) sys.exit()
def setUpClass(cls): cls.disk = YaDisk(LOGIN, PASSWORD)
dest_path="Geospot-data/gathering_dump/"+db_name+"/"+coll_name+"/"+hostname time_prefix=str(time.time()).split(".")[0] out_dump_dir=time_prefix+"_dump" #use --out dump_cmd='mongodump --db {0} --collection {1} --out {2}'.format(db_name, coll_name, out_dump_dir) print "running mongodump" print dump_cmd subprocess.check_call(dump_cmd, shell=True,stdout=subprocess.PIPE) dump_path=os.getcwd()+'/'+out_dump_dir+'/{0}/'.format(db_name) dump_files = [ f for f in os.listdir(dump_path) if os.path.isfile(os.path.join(dump_path,f)) ] if len(dump_files) == 0: print "No files to dump for {0}.{1}".format(db_name, coll_name) sys.exit() yadisk_client=YaDisk(LOGIN,PSWD) dest_path_temp="" for dest_path_dir in dest_path.split("/"): dest_path_temp += dest_path_dir+"/" try : yadisk_client.ls(dest_path_temp) except YaDiskException: yadisk_client.mkdir(dest_path_temp) exec_dir=os.getcwd() os.chdir(dump_path) gzipped_dump=time_prefix+".tar.gz" gzip_cmd='tar cfvz {1} {0} '.format(' '.join(dump_files), gzipped_dump) print "archive dumpped files to common tar.gz" print gzip_cmd
import os import shutil from YaDiskClient import YaDisk try: os.remove(os.getenv('YA_DST')) except OSError: pass shutil.rmtree('tmp', ignore_errors=True, onerror=None) disk = YaDisk(os.getenv('YA_LOGIN'), os.getenv('YA_PASS')) disk.download(os.getenv('YA_SRC'), os.getenv('YA_DST'))
path_backup = config['path_backup'] path_webdav = config['path_webdav'] path_backup_today = path_backup + date_today_str +"/" path_webdav_today = path_webdav + date_today_str +"/" backup_sys = config['backup']['sys'] backup_db = config['backup']['db'] backup_files = config['backup']['files'] remove_old_logs = config['remove_old_logs'] store_old = config['store_old'] sleep_time = 2 # кол-во секунд, на которое время от времени засыпать... config_f.close() ######### << disk = YaDisk( yd_u, yd_p ) # Подключаемся к ЯДиску ######### >> Создаем директорию для сегодняшнего бэкапа if not os.path.exists( path_backup_today ): try: os.makedirs( path_backup_today ) except BaseException: print( 'Dir '+ path_backup_today +' already exists' ) os.chdir( path_backup_today ) # переходим в директорию с бекапами ######### << ######### >> Создаём директорию для бекапа на ЯДиске try_ = True try_i = 1
from YaDiskClient import YaDisk, YaDiskException from utils import get_full_pash import config BACKUP_FOLDER = "backup" def make_sql_beckup(): p = subprocess.Popen([get_full_pash('db_tables_backup.sh')], stdout=subprocess.PIPE, stderr=subprocess.PIPE) out, err = p.communicate() files = [] for f in out.split(): gz_name = "%s.gz" % f files.append(gz_name) return files if __name__ == "__main__": disk = YaDisk(token=config.token) for file_path in make_sql_beckup(): db_name = file_path.split("/")[-2] name = file_path.split("/")[-1] server_name = socket.gethostname() folder_path = os.path.join(BACKUP_FOLDER, server_name, db_name) for folder in [BACKUP_FOLDER, os.path.join(BACKUP_FOLDER, server_name), folder_path]: try: disk.mkdir(folder) except YaDiskException as e: print folder, "already exist" disk.upload(file_path, os.path.join(folder_path, name))
date_today_str = str(date_today) path_backup = config['path_backup'] path_webdav = config['path_webdav'] path_backup_today = path_backup + date_today_str + "/" path_webdav_today = path_webdav + date_today_str + "/" backup_sys = config['backup']['sys'] backup_db = config['backup']['db'] backup_files = config['backup']['files'] remove_old_logs = config['remove_old_logs'] store_old = config['store_old'] sleep_time = 2 # кол-во секунд, на которое время от времени засыпать... config_f.close() ######### << disk = YaDisk(yd_u, yd_p) # Подключаемся к ЯДиску ######### >> Создаем директорию для сегодняшнего бэкапа if not os.path.exists(path_backup_today): try: os.makedirs(path_backup_today) except BaseException: print('Dir ' + path_backup_today + ' already exists') os.chdir(path_backup_today) # переходим в директорию с бекапами ######### << ######### >> Создаём директорию для бекапа на ЯДиске try_ = True try_i = 1