系統設定
五個分頁。一次全部儲存,並立即套用到排程、建置與通知——沒有重啟這個步驟。
一般
| 欄位 | 說明 |
|---|---|
| 站台名稱 | 顯示在頁首與通知標題。 |
| 對外網址 | 用來組出通知裡的連結。沒設的話通知連結點了沒用。 |
| 時區 | Cron 運算式依這個時區求值,不是 UTC,也不是瀏覽器的時區。 |
| 介面語系 | 繁體中文、English 或日本語。見語言與翻譯。 |
| 資料庫 | 預設 SQLite,位置以 API content root 為基準。可用 ConnectionStrings:Walis 覆寫,並以 Database__Provider 指定種類(sqlite、postgresql、mysql、sqlserver)。SQLite 以外都能給多個節點共用——見高可用。 |
建置
| 欄位 | 說明 |
|---|---|
| 同時建置上限 | 本機執行器的插槽數。 |
| 預設逾時 | 套用在沒有自訂逾時的任務上。 |
| 紀錄保留天數 | 建置紀錄、產出檔案與稽核紀錄共用。 |
| 預設工作目錄 | 新任務的起始值。 |
| 預設 Shell | 每個步驟執行時所用的 shell。 |
隔離建置
預設開啟,而且只有 macOS 有作用。在 macOS 上每個步驟以 sandbox-exec 包住,不能讀寫 Walis 資料目錄,也不能碰額外禁止存取的路徑列出的位置。Windows 與 Linux 上這個設定不會有作用,那些平台靠的是允許的工作目錄與環境清理。
寫規則之前,路徑會逐段解析符號連結。這件事比聽起來重要:macOS 上 /tmp 與 /var/folders 的連結在路徑中間,針對未解析路徑寫的規則會完全不生效。
允許的工作目錄
一行一個,留空表示不限制。清單非空時,工作目錄不在其中的任務會直接失敗,而不是跑到意料之外的地方。
產出檔案與工作目錄
- 保留建置產出檔案——成功後依任務的產出路徑複製出來,上限 200 檔/64 MB,可在日誌視窗下載。
- 每次建置前清空工作目錄——只刪目錄內容。磁碟根目錄、家目錄與層級過淺的路徑一律拒絕。清空發生在還原快取之前。
備份
見備份與還原。
安全
| 欄位 | 說明 |
|---|---|
| 啟用管理端登入 | 預設關閉。必須先建立管理員帳號,而且最後一個帳號刪不掉。 |
| 要求所有帳號啟用一次性密碼 | 尚未設定的帳號仍可登入,但之後無法自行停用。 |
| 記錄操作稽核紀錄 | 任務、建置、執行器、變數、設定、通知、翻譯。 |
| 在建置輸出中遮蔽機密值 | 預設開啟。關掉會把機密原樣印進會被保留的日誌。 |
| 允許的 CORS 來源 | 一行一個,儲存後立即生效。未設定時退回 127.0.0.1:11124 與 localhost:11124。 |
| Webhook 密鑰 | 設定後,推送請求必須帶 X-Hub-Signature-256、X-Gitlab-Token 或 X-Walis-Token。 |
| 推送 webhook 網址 | 要貼到 GitHub 或 GitLab 的位址,旁邊有複製鈕。 |
稽核
開啟記錄後的操作軌跡。依與建置相同的紀錄保留天數清理——所以為了清乾淨建置紀錄而縮短保留天數,同時也縮短了你能回頭追查的範圍。
設定可攜
匯出把所有任務與自訂動作寫成 JSON,刻意不含識別碼、統計與時間戳——那些描述的是這台機器,不是設定本身。
匯入依名稱比對。overwrite 為 false 時同名略過;為 true 時就地更新,識別碼與建置紀錄保留。
動作流程在匯出檔裡是物件而不是跳脫字串,所以 diff 讀得懂、可以 code review。