From 429f331c212d598b0d7ff44f20f75cf007bcf32b Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Thu, 03 Aug 2023 03:53:13 +0000
Subject: [PATCH] make ci also run on windows, re-add css minification
---
quartz/build.ts | 12 +++++++-----
.github/workflows/ci.yaml | 2 +-
quartz/bootstrap-cli.mjs | 11 ++++++++++-
3 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 41c6023..8960865 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -7,7 +7,7 @@
jobs:
build-and-test:
- runs-on: ubuntu-22.04
+ runs-on: [windows-latest, macos-13, ubuntu-22.04]
permissions:
contents: write
steps:
diff --git a/quartz/bootstrap-cli.mjs b/quartz/bootstrap-cli.mjs
index 75f646b..0bf27aa 100755
--- a/quartz/bootstrap-cli.mjs
+++ b/quartz/bootstrap-cli.mjs
@@ -11,7 +11,7 @@
import { rimraf } from "rimraf"
import prettyBytes from "pretty-bytes"
import { spawnSync } from "child_process"
-import { transform } from "lightningcss"
+import { transform as cssTransform } from "lightningcss"
const UPSTREAM_NAME = "upstream"
const QUARTZ_SOURCE_BRANCH = "v4-alpha"
@@ -115,6 +115,7 @@
}
async function popContentFolder(contentFolder) {
+ await fs.promises.rm(contentFolder, { force: true, recursive: true })
await fs.promises.cp(contentCacheFolder, contentFolder, {
force: true,
recursive: true,
@@ -304,6 +305,14 @@
sassPlugin({
type: "css-text",
cssImports: true,
+ async transform(css) {
+ const { code } = cssTransform({
+ filename: "style.css",
+ code: Buffer.from(css),
+ minify: true,
+ })
+ return code.toString()
+ },
}),
{
name: "inline-script-loader",
diff --git a/quartz/build.ts b/quartz/build.ts
index 093025a..9bd1e67 100644
--- a/quartz/build.ts
+++ b/quartz/build.ts
@@ -42,11 +42,13 @@
console.log(`Cleaned output directory \`${output}\` in ${perf.timeSince("clean")}`)
perf.addEvent("glob")
- const fps = (await globby("**/*.md", {
- cwd: argv.directory,
- ignore: cfg.configuration.ignorePatterns,
- gitignore: true,
- })).map(fp => fp.split(path.sep).join(path.posix.sep))
+ const fps = (
+ await globby("**/*.md", {
+ cwd: argv.directory,
+ ignore: cfg.configuration.ignorePatterns,
+ gitignore: true,
+ })
+ ).map((fp) => fp.split(path.sep).join(path.posix.sep))
console.log(
`Found ${fps.length} input files from \`${argv.directory}\` in ${perf.timeSince("glob")}`,
)
--
Gitblit v1.10.0