fix: 修复普通成员发布页加载
This commit is contained in:
@@ -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),
|
||||
|
||||
Reference in New Issue
Block a user