feat: restart to apply update, privileged helper, rollback
This commit is contained in:
1 parent
70460e4170
commit
54e8fd5fed
63 files changed
+8635
-164
No files matched your search
@@ -14,6 +14,7 @@ export const NOTE_ITEMS = [
|
||||
export const STATUS_PATH = '/v1/system/update'
|
||||
export const CHECK_PATH = '/v1/system/update/check'
|
||||
export const DOWNLOAD_PATH = '/v1/system/update/download'
|
||||
export const RESTART_PATH = '/v1/system/update/restart'
|
||||
|
||||
export const BOARD_TOTAL_BYTES = 27262976
|
||||
export const BOARD_DONE_BYTES = 11534336
|
||||
@@ -35,6 +36,7 @@ export function upToDate(overrides: Partial<UpdateStatus> = {}): UpdateStatus {
|
||||
progress: null,
|
||||
error: null,
|
||||
started_at: null,
|
||||
finished_at: null,
|
||||
...overrides,
|
||||
}
|
||||
}
|
||||
@@ -94,3 +96,40 @@ export function ready(): UpdateStatus {
|
||||
export function failedWith(error: 'download' | 'verification'): UpdateStatus {
|
||||
return startable({ state: 'failed', error, started_at: '2026-09-30T09:51:00Z' })
|
||||
}
|
||||
|
||||
export const RESTART_STARTED_AT = '2026-09-30T09:51:00Z'
|
||||
export const RESTART_FINISHED_AT = '2026-09-30T09:52:00Z'
|
||||
|
||||
export function restarting(): UpdateStatus {
|
||||
return startable({ state: 'restarting', started_at: RESTART_STARTED_AT })
|
||||
}
|
||||
|
||||
export function updateSucceeded(): UpdateStatus {
|
||||
return upToDate({
|
||||
current: NEW_TAG,
|
||||
latest: NEW_TAG,
|
||||
available: false,
|
||||
can_apply: true,
|
||||
state: 'succeeded',
|
||||
started_at: RESTART_STARTED_AT,
|
||||
finished_at: RESTART_FINISHED_AT,
|
||||
})
|
||||
}
|
||||
|
||||
export function rolledBack(error: 'rolled_back' | 'install' = 'rolled_back'): UpdateStatus {
|
||||
return startable({
|
||||
state: 'failed',
|
||||
error,
|
||||
started_at: RESTART_STARTED_AT,
|
||||
finished_at: RESTART_FINISHED_AT,
|
||||
})
|
||||
}
|
||||
|
||||
export function plainRestartDone(): UpdateStatus {
|
||||
return upToDate({
|
||||
can_apply: true,
|
||||
state: 'idle',
|
||||
started_at: null,
|
||||
finished_at: RESTART_FINISHED_AT,
|
||||
})
|
||||
}
|
||||
Reference in new issue
Block a user