refactor(release-cleanup): 將清理邏輯由 bash 改寫為 Node.js #6
@@ -58,6 +58,12 @@ export async function cleanupReleases(client, config) {
|
|||||||
const toDelete = selectReleasesToDelete(releases, config.keepCount)
|
const toDelete = selectReleasesToDelete(releases, config.keepCount)
|
||||||
|
|
||||||
for (const release of toDelete) {
|
for (const release of toDelete) {
|
||||||
|
// 防禦非預期結構(null/非物件),避免解構時拋出未捕捉例外。
|
||||||
|
if (release === null || typeof release !== 'object') {
|
||||||
|
warn('略過格式異常的成品項目')
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
const { id, tag_name: tag, name } = release
|
const { id, tag_name: tag, name } = release
|
||||||
|
|
||||||
// 要求 id 為正整數(Gitea release id 本即正整數);非整數一律略過,不僅依賴 URL 編碼防護。
|
// 要求 id 為正整數(Gitea release id 本即正整數);非整數一律略過,不僅依賴 URL 編碼防護。
|
||||||
|
|||||||
Reference in New Issue
Block a user