gulp-zip создает разные двоичные zip-файлы, даже если исходный код тот же

Я использую gulp-zip, чтобы заархивировать некоторые исходные файлы в ZIP-файл, который затем развертывается в AWS Lambda. Проблема в том, что каждый zip-файл выглядит немного по-разному с точки зрения двоичного кода, хотя исходные файлы не изменились:

Пример использования: скопируйте исходные файлы в каталог сборки zip-файла A.zip

Снова скопируйте исходные файлы в каталог (более поздние временные метки, но содержимое такое же), создайте zip-файл B.zip

Когда я запускаю diff A.zip B.zip, я получаю: Двоичные файлы A.zip и B.zip отличаются. Размеры файлов zip идентичны.

Я ожидаю, что A.zip и B.zip будут идентичными, если единственное различие будет заключаться во времени, когда исходные файлы копируются в каталог для архивирования. Я предполагаю, что отметки времени в файлах создают разницу.

Есть ли способ настроить gulp-zip так, чтобы он каждый раз создавал идентичный zip-файл, если исходные файлы не менялись?

Вот как я сейчас использую gulp-zip:

gulp.task('copySrcFiles', () => {
  return gulp.src(
    [
      `${SRC_DIR}/**/*`
    ],

  ).pipe(gulp.dest(`${DIST_DIR}`));
});

gulp.task('createZip', () => {
  return gulp.src(`${DIST_DIR}/**/*`)
         .pipe(zip(OUTPUT_FILE_NAME))
         .pipe(gulp.dest(`${TARGET_DIR}`));
});

0 ответов

Другие вопросы по тегам