Добавить смещение времени для зеркалирования через lftp

Добавить смещение времени для зеркалирования через lftp

Я работаю над CI-раннером в GitLab, который должен передавать измененные файлы по FTP в среду разработки.

lftpМне показалось, что это хорошее решение, поскольку оно простое в использовании и не слишком сложное.

Я использую это для передачи файлов:

lftp -c "set ftp:ssl-allow no; open -u $USERNAME_DEV,$PASSWORD_DEV $HOST_DEV; mirror -Rvpn -O $PATH_DEV --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"

Проблемной частью является -Rvpnнабор параметров, в частности -n. Предполагается, что он будет зеркалировать только новые файлы, что, скорее всего, сработает, если проверить время изменения файлов.

Теперь мой репозиторий использует правильное время, но мой сервер опережает время на час (GMT+2 вместо +1), что приведет к ошибке проверки наличия новых файлов.

Я мог бы удалить, -nно тогда был бы клонирован весь репозиторий, а не только измененные (и, следовательно, более новые) файлы.

Есть ли способ определить смещение времени для lftp, чтобы оно добавляло +1 час к дате изменения файла или что-то подобное? Я проверилруководствоно ничего подобного не нашел.

решение1

Если вы посмотрите на руководство, ссылку на которое вы дали, lftpтам есть опция, которая позволяет вам определить часовой пояс для удаленного сайта. Возможно, стоит попробовать установить его и посмотреть, когда будет lftpкорректная компенсация.

ftp:часовой пояс (строка)

Предполагать этот часовой пояс для времени в листингах, возвращаемых командой LIST. Этот параметр может быть смещением GMT [+|-]HH[:MM[:SS]] или любым допустимым значением TZ (например, Europe/Moscow или MSK-3MSD,M3.5.0,M10.5.0/3). Значение по умолчанию — GMT. Установите пустое значение, чтобы предположить местный часовой пояс, указанный переменной окружения TZ.

Кроме того, в нем есть переключатель, позволяющий игнорировать время ( --ignore-timeчто может позволить вам полагаться только на размер файла), а также некоторые переключатели ( --newer-thanи --older-than) для определения времени, «которое имеет значение», поэтому вы можете настроить его таким образом, чтобы не все файлы передавались.

Связанный контент