# CMS SetUp Tool使用教學
v2026.04.02
適用非虛擬環境CMS版本
Ubuntu22.04 ok
## 安裝步驟
```bash
curl -sSL https://raw.githubusercontent.com/TYCheng31/CMSSetUpTool/master/install.sh | bash
```
## 工具介面

## 功能介紹
- 按鈕1 參數設定
修改全域設定檔(管理介面帳號密碼、contest名稱、task名稱、task相關設定等)

可修改項目
- `LOGIN_URL` CMS主機的IP (如果是本機執行就不用修改)
- `ADMIN_USERNAME` 管理介面帳號(:8889)
- `ADMIN_PASSWORD` 管理介面密碼(:8889)
- `CONTEST_NAME` Contest名稱
- `TASK_NAMES` Task名稱(逗號分隔)
- `MIN_SUBMISSION_INTERVAL` 同題繳交間隔時間
- `TIME_LIMIT` 程式執行時間限制
- `MEMORY_LIMIT` 程式執行記憶體限制
- `SCORE_PER_TASK` 每個測資占分
- `HEADLESS_MODE` 勾選代表爬蟲會隱藏網頁操作,沒勾則會顯示操作行為

- 按鈕2 初始化並建立全新CMS
把資料庫及所有設定檔初始化後
- 建立contest (名稱預設NCUE)
- 建立task (名稱預設Q1-Q5)
- 建立user並加進contest中 (名稱預設S01-S90)

- 按鈕3
- 建立contest (名稱預設NCUE)
- 建立task (名稱預設Q1-Q5)

- 按鈕4
配置每個task的設定 (按鈕2參數設定可以修改)
- 繳交間隔時間 (預設30秒)
- score mode (預設IOI2013-2016)
- 程式執行時間 (預設5.0秒)
- 程式占用空間 (預設512MB)
- 每個測資得分 (預設4分)

彈出提示勾選需要設定的題目

## 上傳題目、測資
將題目statements、測資testcases統一放在`task_file`裡面
### 命名規則
可以參考task_file範例檔案
假設現在要新增題目名稱為example的題目

題目敘述(statements)要取名叫example.pdf
測資(testcases)壓縮檔案要取名叫example.zip
壓縮檔案中的測資固定名稱:Q1_in1.txt ~ Q1_inN.txt、Q1_out1.txt ~ Q1_outN.txt(共N個測資)