OpenPress

CLI · 第二層

輸出目標

產生標準 HTML 套件包以外的特定交付物:逐頁的 PNG 圖片、PDF,以及部署產物。

此文件描述 OpenPress 第二層 CLI 指令,負責產生 HTML 套件包以外的輸出格式(PDF、PNG 圖片)與部署產物。這些指令包裝了依賴項(Chromium、轉接器 SDK)以執行特定任務,獨立於基礎的 build 指令。

Command Impl

# openpress:pdf

透過 Chromium 在本機產生 PDF 輸出。

npm run openpress:pdf

參數 (Flags)

Name Type Default Description
--output string 覆寫輸出路徑。預設為 `config.pdf.filename` 定義的路徑。
--no-build flag 繞過建置階段,重複使用現有的 `dist-react/` 輸出。
--host string "127.0.0.1" 指定 Chromium 列印時連接的靜態伺服器主機 IP。
--port string "5185" 指定靜態伺服器連接埠。
--dry-run flag 僅輸出將要執行的指令序列,不啟動伺服器或調用 Chromium。

範例:輸出 PDF

npm run openpress:pdf
Command Impl

# openpress:image

透過 Chromium 產生逐頁的 PNG 圖片輸出。

npm run openpress:image

參數 (Flags)

Name Type Default Description
--output string 覆寫輸出目錄路徑。預設為 `dist-react/images`。
--no-build flag 繞過建置階段,重複使用現有的 `dist-react/` 輸出。
--host string "127.0.0.1" 指定 Chromium 擷取時連接的靜態伺服器主機 IP。
--port string "5186" 指定靜態伺服器連接埠。
--dry-run flag 僅輸出將要執行的指令序列,不啟動伺服器或調用 Chromium。

範例:輸出圖片

npm run openpress:image
Command Impl

# openpress:deploy

根據指定的轉接器 (Adapter) 執行部署流程。

npm run openpress:deploy

此指令依序執行建置、產生 PDF 階段產物、將部署 metadata 寫入 deploy.json,並調用配置的部署轉接器。

參數 (Flags)

Name Type Default Description
--confirm flag 實際部署發佈之必要參數。繞過互動式提示,適用於 CI 環境。
--dry-run flag 執行飛行前檢查並印出指令序列。不實際進行發佈與上傳。

範例:部署操作

# 預覽部署流程 (Dry run)
npm run openpress:deploy:dry-run

# 實際執行部署 (含確認旗標)
npm run openpress:deploy -- --confirm

部署轉接器 (Adapters)

作用中的轉接器由 package.json 中的 "openpress.deploy.adapter" 屬性決定。

Config Impl

# "cloudflare-pages"

調用 npx wrangler pages deploy。必要屬性:projectName。選擇性屬性:commitDirty。

// package.json
"openpress": {
  "deploy": { "adapter": "cloudflare-pages", "projectName": "...", "source": ".deploy" }
}

Wrangler 環境必須在執行部署命令的機器上預先完成驗證。對於未提供專屬轉接器的主機環境,請直接使用標準的靜態建置輸出。