Apache SpamAssassin 專案在其開發過程中使用了 subversion 儲存庫。該儲存庫的唯讀鏡像在 GitHub 上維護。
包含此 README 檔案的 .github 目錄不是 Apache SpamAssassin 發行包的一部分。此目錄中的文件旨在供開發人員使用 GitHub 託管運行器上的 GitHub 操作工具執行測試。
Apache SpamAssassin 專案管理委員會尚未做出任何安排來使用 GitHub 分配給 Apache 軟體基金會的資源來執行建置和測試。此目錄中定義的操作可供任何人(包括 SpamAssassin 的活躍開發人員)在其個人 GitHub 儲存庫分支中執行。但是,將文件包含在此儲存庫中並不意味著該軟體正式向公眾發布。
您提交的工作流程運作將為前三個輸入框中的每個有效值組合指派一個作業。
第四個輸入框可讓您輸入要執行的測試,格式與 make test 命令列中的 TEST_FILES 所使用的格式相同。如果留空,則表示執行所有測試。
無論在測試框中輸入什麼,使用 SQL 的測試都只會在資料庫指定為 postgres 或 mysql 的作業中執行。此外,垃圾郵件壓力測試和根測試永遠不會運行。
GitHub 對可以在各個平台上同時運行的作業數量有限制。您提交的超過該限制的作業將排隊等待其他作業完成後開始。
點擊左側邊欄中列出的作業將開啟一個窗格,顯示作業的日誌輸出。以錯誤結束的作業將帶有紅色 X 圖示。您可以檢查日誌輸出以了解詳細資訊。某些錯誤會導致 t/log 目錄內容被壓縮為可以下載的工件。當您查看日誌窗格時,請按一下左側邊欄上方的「摘要」圖標,如果有任何要下載的工件,您可以在「工件」標題下按一下數字。
執行的作業數是您在三個輸入框中指定的選項的乘積。除非您想在每個可能的 Perl 版本上測試 SpamAssassin(如果您是準備新版本的發布經理,您可能會這樣做),否則您可能只想選擇 Perl 的一個最新版本。
運行程序的選項框僅顯示“-latest”名稱,但您可以輸入他們提供的任何 GitHub 託管運行程序,例如 ubuntu-20.04 或 macos-11。
Windows 使用 Strawberry Perl 進行測試,最新版本為 5.32。如果perl版本清單中有34或36,它們將不會在Windows平台上產生作業。
使用資料庫選項 postgres 或 mysql 運行的作業將只執行各種 sql 測試。使用資料庫的 none 選項執行的作業將執行所有其他測試。
一些測試,尤其是一些依賴網路存取的測試,例如 t/dnsbl.t,似乎偶爾會失敗,特別是當您同時執行許多作業時。工作流程的所有作業完成後,您可以透過點選作業概述頁面中的重新執行作業按鈕,然後選擇重新執行失敗的作業,僅重新執行那些失敗的作業。重複此操作,直到看起來只是間歇性失敗的作業成功通過。