An open API service indexing awesome lists of open source software.

https://github.com/dextiles/files-auto-synchronizer

The service for automatically synchronizing a specified directory on the machine with the cloud storage
https://github.com/dextiles/files-auto-synchronizer

cloud-synchronization dropbox google-cloud icloud-drive outlook python synchronization yandex-cloud

Last synced: about 1 month ago
JSON representation

The service for automatically synchronizing a specified directory on the machine with the cloud storage

Awesome Lists containing this project

README

        

## Сервис автоматической синхронизации файлов
### Описание
1) Связывание указанной папки на локальном компьютере и в облачном хранилище
2) Отслеживание изменений в файлах на локальном компьютере и внесение изменений в облачном хранилище

### Развертывание и использование
1) Скопировать репозиторий
```
$ git clone https://github.com/Dextiles/Files-Auto-Synchronizer
```
2) Установить необходимые зависимости
```
$ pip install -r requirements.txt
```
3) Создать файл config.ini и настроить его ([подробнее](#настройка))
4) Запустить исполняемый файл
```
$ python3 main.py
```
5) Для остановки скрипта необходимо нажать Enter в терминале рабочего скрипта
6) Логи можно посмотреть в папке logs/ корневого раздела проекта ([подробнее](#логирование))

### Настройка

Для использования сервиса необходимо провести его первичную настройку,
для этого необходимо создать файл config.ini

1. Инициализировать 2 заголовка: [SERVICE] и [PARAMS]
2. В [SERVICE] необходимо создать 2 параметра:
+ service_token - содержит рабочий токен облачного сервиса
+ service_type - указание типа облачного сервиса
3. В [PARAMS] необходимо создать 3 параметра:
+ local_folder - полный путь к отслеживаемой папке
+ service_folder - название папки в облачном хранилище, где будут храниться файлы
+ sync_interval - интервал обновления

Пример config.ini файла

Пример config.ini файла
Пример config.ini файла

> В случае отсутствия config.ini файла или его неправильной настройки программа не запуститься

Доступные облачные сервисы



Название
Сылка
Название для config.ini
Статус




1
Яндекс.Диск
disk.yandex.ru
YandexDrive
✔ Внедрен


2
Google Drive
www.google.ru/drive
GoogleDrive
✖ В разработке


3
Dropbox
www.dropbox.com
Dropbox
✖ В разработке


4
iCloud
www.icloud.com
iCloud
✖ В разработке


5
OneDrive
onedrive.live.com
OneDrive
✖ В разработке

### Логирование

Для отслеживания всех процессов, происходящих в сервисе предусмотрено логирование

В логах создано 2 уровня:

INFO - для отображения процессов работы с облачным хранилищем

ERROR - для отображения всех отловленных ошибок

Лог-файл располагается в корневой директории проекта в папке /logs/

Полный путь (относительно проекта) для него будет таким:

/logs/logs.log

Пример logs.log файла

Пример config.ini файла
Пример лог файла