Fastly CLI 是 Fastly 提供的推薦工具,用於從命令列與 Fastly API 進行互動。它是開發人員在持續整合管道中使用的開源工具,用於代表 Fastly 帳戶執行各種操作,包括建立服務、管理後端和網域以及部署計算包。如果您正在 JavaScript 中使用 Fastly Compute,我們有一個令人興奮的消息,讓 Fastly CLI 離您更近了 – Fastly CLI 現已作為 npm 上的軟體包提供。
自從我們宣布 Fastly Compute 邊緣平台支援 JavaScript 以來,已經過去了令人興奮的三年,距離我們發布 JavaScript SDK v1.0 也快兩年了。它是平台上非常流行的語言,也剛好是我個人最喜歡的。使用 JavaScript 進行快速計算開發能夠以快速而有趣的方式創建邊緣應用程序,我們希望將對其的訪問權限擴展到盡可能多的用戶。
作為一家以開發人員為先的公司,我們始終牢記一件事:盡可能消除實際開發中的障礙。也就是說,如何讓開發者能夠少一次點擊、少一次依賴、少安裝一個工具來完成工作?有沒有辦法讓 Compute 上的 JavaScript 開發變得更簡單?這就是我們這次要解決的問題。
Fastly CLI 是一個開源工具,用於使用您的 Fastly 帳戶執行操作。由於它用於運行和發布計算應用程序,因此它是在 JavaScript 中開發快速計算的要求之一,即使只是在本地嘗試。傳統上,這意味著存取 GitHub 儲存庫來取得預先建置的套件,或透過 macOS 上的 Homebrew 安裝它。雖然這些步驟通常是開發人員所熟悉的,但我們希望盡可能降低您涉足計算應用程式開發的障礙。
這就是為什麼從版本 10.14.0 開始,我們決定在 npmjs.org 上發布 Fastly CLI 作為額外的分發途徑。如果您是2024 年的JavaScript 開發人員,您很可能熟悉npmjs.org 作為事實上的軟體包儲存庫,您可以從這裡將軟體包安裝到應用程式中,無論您使用yarn、pnpm 還是值得信賴的舊npm 作為介面。這意味著預設情況下每個人都可以使用 npmjs.org,這使得它成為我們將這個重要工具交到使用者手中的好方法。
npm 的一個方便功能是 npx,它允許您從 npm 套件執行命令,而無需將它們安裝到專案中。只要 Node.js 和 npm 在您的環境中可用,您現在就可以直接呼叫 Fastly CLI,如下所示:
npx @fastly/cli
第一次執行此操作時,npm 會提示您取得套件;這會將其新增至您環境的 npm 快取中,並且它將在將來立即可用。
由於 Fastly CLI 總是使用附加參數來調用,因此您只需像平常一樣指定它們作為命令後面的參數即可。例如,要列出您的 Fastly 帳戶中的服務,您可以輸入:
npx @fastly/cli service list
當然,npmjs.org 上的可用性意味著您現在可以將 Fastly CLI 作為標準依賴項添加到您的計算 JavaScript 應用程式中:
npm install @fastly/cli
或者,您可以將其新增至專案的 package.json 檔案:
{ "dependencies": { "@fastly/cli": "^10.14.0" } }
然後安裝專案的依賴項:
npm install
這會將 @fastly/cli 作為依賴項安裝到專案的 node_modules 目錄中。它可以作為在 node_modules/.bin 子目錄下快速呼叫的程式使用,因此您將能夠像這樣呼叫它:
npx fastly
例如,要在本機開發環境中啟動您的應用程序,請鍵入以下內容:
npx fastly compute serve
此外,package.json 檔案的腳本部分中對 fastly 的任何引用現在都將找到本地安裝的 @fastly/cli 版本,而不需要在系統上全域安裝 Fastly CLI。
{ "scripts": { "build": "js-compute-runtime src/index.js bin/main.wasm", "start": "fastly compute serve", "deploy": "fastly compute publish" } }
傳統上,每個使用 Fastly Compute 的開發人員都需要安裝全域可用的 Fastly CLI 實例來開發應用程式並將其發佈到他們的 Fastly 帳戶,即使是剛開始使用平台進行實驗時也是如此。透過將 Fastly CLI 作為 JavaScript 應用程式的標準依賴項,Fastly Compute 的首次使用者只需克隆其應用程式儲存庫、正常安裝其依賴項並輸入 npm start 即可體驗計算應用程式。事實上,我們已經更新了所有 JavaScript 和 TypeScript 入門套件以採用這種方法,以便更多使用者能夠體驗它們,即使他們之前沒有使用過 Compute 平台的經驗。
團隊合作也很棒。您以及使用您的應用程式的其他開發人員可以獲得您的應用程式的程式碼,使用標準流程安裝其依賴項,然後開始工作(包括電池)。
這種便利性也擴展到您的持續整合 (CI) 管道,使您的應用程式能夠在其建置或測試過程中可靠地存取 Fastly CLI。
Fastly CLI 正在積極開發中,不斷收到新功能和改進。
將 Fastly CLI 指定為套件的標準相依性可讓您使用語意版本控制來指定其版本。這使您的套件可以安全地依賴最近添加的 CLI 功能或其行為可能已更改的功能,而不必擔心使用您的應用程式的其他開發人員是否在其環境中安裝了相容版本的 CLI。
如果您正在編寫要在呼叫 Fastly CLI 的 Node.js 下運行的程式碼(例如在工具或實用程式中),則此套件提供了一種非常簡單且可靠的方法來執行此操作。
@fastly/cli 的預設匯出解析為字串值,表示 Fastly CLI 執行檔的完整路徑,適合作業系統、架構及其安裝方式。它可以直接與Node.js中的spawnSync等函式一起使用。因為可以透過這種方式實現,所以您不需要讓軟體包的使用者在運行程式之前取得 Fastly CLI 的全域安裝。
以下範例 Node.js 程式執行 fastly version 指令:
npx @fastly/cli
如果您確實需要全域安裝 Fastly CLI,此軟體包也可以作為獲取它以供全域使用的一種方法:
npx @fastly/cli service list
安裝後,像傳統方式一樣呼叫它:
{ "dependencies": { "@fastly/cli": "^10.14.0" } }
在底層,這與使用 npx @fastly/cli 呼叫環境中快取的 CLI 副本沒有什麼不同。但是,此過程使命令在系統路徑上盡快可用,使其能夠與希望在那裡找到它的其他工具配合。最終結果實際上與您使用任何傳統的全域安裝方法相同,但此安裝過程是一個方便的替代方案,因為 npm 在許多電腦上廣泛可用。
在 Fastly,我們努力提供工具,讓您能夠在邊緣運行更多程式碼,並使用您熟悉和喜愛的工具進行開發。我們不希望任何事情妨礙這一點。由於 JavaScript 是地球上最受歡迎的語言,npm 上 Fastly CLI 的發布進一步推動了這項使命。
我們很高興聽到我們的用戶充分利用這些工具。取得免費的 Fastly 開發者帳戶,加入我們的 Fastly 社群論壇,並讓我們知道您一直在建立什麼!
以上是npm 上的 Fastly CLI:現在 JavaScript 觸手可及的詳細內容。更多資訊請關注PHP中文網其他相關文章!