Fix compression of hassio builds (#21869)

This commit is contained in:
Joakim Sørensen 2024-09-04 10:01:58 +02:00 committed by GitHub
parent 2f9b6d000b
commit b69f0964c9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -15,23 +15,29 @@ const brotliOptions = {
}; };
const zopfliOptions = { threshold: 150 }; const zopfliOptions = { threshold: 150 };
const compressDistBrotli = (rootDir, modernDir) => const compressDistBrotli = (rootDir, modernDir, compressServiceWorker = true) =>
gulp gulp
.src([`${modernDir}/**/${filesGlob}`, `${rootDir}/sw-modern.js`], { .src(
base: rootDir, [
}) `${modernDir}/**/${filesGlob}`,
compressServiceWorker ? `${rootDir}/sw-modern.js` : undefined,
].filter(Boolean),
{
base: rootDir,
}
)
.pipe(brotli(brotliOptions)) .pipe(brotli(brotliOptions))
.pipe(gulp.dest(rootDir)); .pipe(gulp.dest(rootDir));
const compressDistZopfli = (rootDir, modernDir) => const compressDistZopfli = (rootDir, modernDir, compressModern = false) =>
gulp gulp
.src( .src(
[ [
`${rootDir}/**/${filesGlob}`, `${rootDir}/**/${filesGlob}`,
`!${modernDir}/**/${filesGlob}`, compressModern ? undefined : `!${modernDir}/**/${filesGlob}`,
`!${rootDir}/{sw-modern,service_worker}.js`, `!${rootDir}/{sw-modern,service_worker}.js`,
`${rootDir}/{authorize,onboarding}.html`, `${rootDir}/{authorize,onboarding}.html`,
], ].filter(Boolean),
{ base: rootDir } { base: rootDir }
) )
.pipe(zopfli(zopfliOptions)) .pipe(zopfli(zopfliOptions))
@ -40,12 +46,20 @@ const compressDistZopfli = (rootDir, modernDir) =>
const compressAppBrotli = () => const compressAppBrotli = () =>
compressDistBrotli(paths.app_output_root, paths.app_output_latest); compressDistBrotli(paths.app_output_root, paths.app_output_latest);
const compressHassioBrotli = () => const compressHassioBrotli = () =>
compressDistBrotli(paths.hassio_output_root, paths.hassio_output_latest); compressDistBrotli(
paths.hassio_output_root,
paths.hassio_output_latest,
false
);
const compressAppZopfli = () => const compressAppZopfli = () =>
compressDistZopfli(paths.app_output_root, paths.app_output_latest); compressDistZopfli(paths.app_output_root, paths.app_output_latest);
const compressHassioZopfli = () => const compressHassioZopfli = () =>
compressDistZopfli(paths.hassio_output_root, paths.hassio_output_latest); compressDistZopfli(
paths.hassio_output_root,
paths.hassio_output_latest,
true
);
gulp.task("compress-app", gulp.parallel(compressAppBrotli, compressAppZopfli)); gulp.task("compress-app", gulp.parallel(compressAppBrotli, compressAppZopfli));
gulp.task( gulp.task(