Files
studio-admin-fe/src/types/application.ts
T
chyoo ecbf57d978
ci/woodpecker/push/woodpecker Pipeline was successful
connect tailscale node status through platform gateway
2026-07-08 18:13:55 +09:00

94 lines
2.0 KiB
TypeScript

import type { ApiApp, ApiAppComponent } from './runtime';
export type ComponentType = 'ELECTRON' | 'CONTAINER' | 'STATIC_WEB' | 'DATABASE' | 'MIGRATION';
export type JobStatus = 'PENDING' | 'RUNNING' | 'SUCCEEDED' | 'FAILED' | 'CANCELED';
export type AppWithComponents = ApiApp & {
description?: string | null;
createdAt?: string;
updatedAt?: string;
components?: ApiAppComponent[];
};
export type SourceComponent = ApiAppComponent & {
app: ApiApp;
buildJobs?: BuildJob[];
};
export type BuildJob = {
id: string;
componentId: string;
branch: string;
commitSha?: string | null;
artifact?: string | null;
image?: string | null;
status: JobStatus;
logs?: string | null;
startedAt?: string | null;
finishedAt?: string | null;
createdAt: string;
component: ApiAppComponent & { app: ApiApp };
};
export type AppRelease = {
id: string;
appId: string;
version: string;
branch: string;
commitSha?: string | null;
artifact?: string | null;
imageTags?: unknown;
status: JobStatus;
logs?: string | null;
createdAt: string;
updatedAt?: string;
app: ApiApp;
};
export type DeploymentJob = {
id: string;
appId: string;
releaseId?: string | null;
environment: string;
namespace: string;
status: JobStatus;
requestedBy?: string | null;
logs?: string | null;
startedAt?: string | null;
finishedAt?: string | null;
createdAt: string;
app: ApiApp;
release?: AppRelease | null;
};
export type RuntimeControlJob = {
id: string;
namespace: string;
kind: string;
name: string;
action: string;
status: JobStatus;
requestedBy?: string | null;
request?: Record<string, unknown> | null;
result?: Record<string, unknown> | null;
logs?: string | null;
startedAt?: string | null;
finishedAt?: string | null;
createdAt: string;
};
export type GiteaRepo = {
id?: number;
name: string;
full_name: string;
fullName?: string;
html_url?: string;
htmlUrl?: string;
clone_url?: string;
cloneUrl?: string;
ssh_url?: string;
sshUrl?: string;
private?: boolean;
owner?: { login: string };
};