fix: 修复普通成员发布页加载

This commit is contained in:
湛兮
2026-06-12 02:22:52 +08:00
parent fdd65878f7
commit 39ca8979e7
3 changed files with 40 additions and 11 deletions
+15 -2
View File
@@ -41,6 +41,9 @@ import { http } from './http'
type DataSource = 'backend'
type BackendHealthStatus = 'ok' | 'not_configured' | 'unavailable'
type BackendRunStatus = 'pending' | 'queued' | 'running' | 'success' | 'failed' | 'canceled'
type DashboardOptions = {
includeAdminConfig?: boolean
}
type BackendVariableHelpValue =
| string
| {
@@ -311,12 +314,15 @@ export const devopsApi = {
lastDataSource = 'backend'
},
async getDashboard(): Promise<DashboardSummary> {
async getDashboard(options: DashboardOptions = {}): Promise<DashboardSummary> {
const integrationConfigPromise = options.includeAdminConfig
? fetchIntegrationConfigStatus()
: Promise.resolve(emptyIntegrationConfigStatus())
const [health, backendProjects, backendRuns, integrationConfig] = await Promise.all([
fetchHealth(),
fetchProjects(),
fetchRuns(),
fetchIntegrationConfigStatus(),
integrationConfigPromise,
])
const adaptedProjects = toProjectConfigs(backendProjects)
lastDataSource = 'backend'
@@ -482,6 +488,13 @@ async function fetchIntegrationConfigStatus(): Promise<IntegrationConfigStatus>
return sanitizeIntegrationConfigStatus(data)
}
function emptyIntegrationConfigStatus(): IntegrationConfigStatus {
return {
checkedAt: new Date().toISOString(),
integrations: [],
}
}
function toIntegrationStatuses(health: BackendHealth): IntegrationStatus[] {
return [
toIntegrationStatus('jenkins', 'Jenkins', health),