mirror of
https://github.com/Dvorinka/Containr.git
synced 2026-10-28 15:51:26 +00:00
merge: resolve main into feat/app-demo-polish
This commit is contained in:
commit
38e0bc1802
42 files changed
+4125
-585
No files matched your search
@@ -124,6 +124,7 @@ export type TemplateEntity = {
|
||||
variablesRaw: string;
|
||||
isOfficial: boolean;
|
||||
ownerId: string | null;
|
||||
isPublic: boolean;
|
||||
createdAt?: string;
|
||||
updatedAt?: string;
|
||||
};
|
||||
@@ -618,6 +619,7 @@ function normalizeTemplate(template: RawServiceTemplate): TemplateEntity | null
|
||||
variablesRaw: template.variables ?? '',
|
||||
isOfficial: Boolean(template.is_official),
|
||||
ownerId: template.owner_id ?? null,
|
||||
isPublic: Boolean(template.is_public),
|
||||
createdAt: template.created_at,
|
||||
updatedAt: template.updated_at,
|
||||
};
|
||||
@@ -1361,6 +1363,7 @@ export type TemplateWriteInput = {
|
||||
logo?: string;
|
||||
config: Record<string, unknown>;
|
||||
variables?: TemplateVariableEntity[];
|
||||
isPublic?: boolean;
|
||||
};
|
||||
|
||||
function templateWriteBody(input: TemplateWriteInput): string {
|
||||
@@ -1371,6 +1374,7 @@ function templateWriteBody(input: TemplateWriteInput): string {
|
||||
logo: input.logo ?? '',
|
||||
config: input.config,
|
||||
variables: input.variables ?? [],
|
||||
is_public: input.isPublic ?? false,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -26,9 +26,9 @@ export const demoProjects: ProjectEntity[] = [
|
||||
createdAt: '2026-03-12T09:30:00Z',
|
||||
updatedAt: '2026-03-31T09:10:00Z',
|
||||
stats: {
|
||||
service_count: 4,
|
||||
service_count: 5,
|
||||
deployment_count: 27,
|
||||
running_services: 3,
|
||||
running_services: 4,
|
||||
last_deployment: '2026-03-31T08:42:00Z',
|
||||
},
|
||||
},
|
||||
@@ -71,9 +71,11 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'web',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/web:2026.03.31',
|
||||
image: 'ghcr.io/containr/web-react:v42',
|
||||
command: 'npm run serve',
|
||||
gitBranch: 'main',
|
||||
port: 3000,
|
||||
domain: 'web.containr.local',
|
||||
createdAt: '2026-03-12T10:00:00Z',
|
||||
updatedAt: '2026-03-31T08:42:00Z',
|
||||
},
|
||||
@@ -84,9 +86,11 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'web',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/api:2026.03.31',
|
||||
image: 'ghcr.io/containr/api-go:v2.4.1',
|
||||
command: './server',
|
||||
gitBranch: 'main',
|
||||
port: 8080,
|
||||
domain: 'api.containr.local',
|
||||
createdAt: '2026-03-12T10:02:00Z',
|
||||
updatedAt: '2026-03-31T08:43:00Z',
|
||||
},
|
||||
@@ -97,9 +101,10 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'worker',
|
||||
status: 'building',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/worker:2026.03.31',
|
||||
image: 'ghcr.io/containr/worker:edge',
|
||||
command: './worker',
|
||||
gitBranch: 'main',
|
||||
port: 9100,
|
||||
createdAt: '2026-03-12T10:05:00Z',
|
||||
updatedAt: '2026-03-31T08:44:00Z',
|
||||
},
|
||||
@@ -110,12 +115,27 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'database',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'postgres:15-alpine',
|
||||
image: 'postgres:16',
|
||||
command: 'postgres',
|
||||
gitBranch: 'main',
|
||||
port: 5432,
|
||||
createdAt: '2026-03-12T10:08:00Z',
|
||||
updatedAt: '2026-03-31T08:40:00Z',
|
||||
},
|
||||
{
|
||||
id: 'demo-svc-redis',
|
||||
projectId: 'demo-project-core',
|
||||
name: 'Redis Cache',
|
||||
type: 'database',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'dragonfly:1.25',
|
||||
command: 'redis-server',
|
||||
gitBranch: 'main',
|
||||
port: 6379,
|
||||
createdAt: '2026-03-12T10:12:00Z',
|
||||
updatedAt: '2026-03-31T08:40:00Z',
|
||||
},
|
||||
],
|
||||
'demo-project-growth': [
|
||||
{
|
||||
@@ -125,9 +145,11 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'web',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/marketing:latest',
|
||||
command: 'npm run start',
|
||||
image: 'nginx:1.27-alpine',
|
||||
command: 'nginx -g daemon off;',
|
||||
gitBranch: 'main',
|
||||
port: 8080,
|
||||
domain: 'growth.containr.local',
|
||||
createdAt: '2026-03-03T09:00:00Z',
|
||||
updatedAt: '2026-03-30T12:10:00Z',
|
||||
},
|
||||
@@ -138,9 +160,10 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'web',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/campaign-api:latest',
|
||||
image: 'node:20-alpine',
|
||||
command: './api',
|
||||
gitBranch: 'main',
|
||||
port: 3000,
|
||||
createdAt: '2026-03-03T09:04:00Z',
|
||||
updatedAt: '2026-03-30T12:08:00Z',
|
||||
},
|
||||
@@ -151,9 +174,10 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'database',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'redis:7-alpine',
|
||||
image: 'dragonfly:1.25',
|
||||
command: 'redis-server',
|
||||
gitBranch: 'main',
|
||||
port: 6379,
|
||||
createdAt: '2026-03-03T09:07:00Z',
|
||||
updatedAt: '2026-03-30T12:07:00Z',
|
||||
},
|
||||
@@ -166,9 +190,10 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'web',
|
||||
status: 'running',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/inference-api:latest',
|
||||
image: 'python:3.12-slim',
|
||||
command: './serve',
|
||||
gitBranch: 'main',
|
||||
port: 8000,
|
||||
createdAt: '2026-02-18T08:00:00Z',
|
||||
updatedAt: '2026-03-29T18:00:00Z',
|
||||
},
|
||||
@@ -179,7 +204,7 @@ export const demoServicesByProject: Record<string, ServiceEntity[]> = {
|
||||
type: 'worker',
|
||||
status: 'failed',
|
||||
environment: 'production',
|
||||
image: 'ghcr.io/containr/evaluator:latest',
|
||||
image: 'python:3.12-slim',
|
||||
command: './run-jobs',
|
||||
gitBranch: 'main',
|
||||
createdAt: '2026-02-18T08:03:00Z',
|
||||
@@ -211,6 +236,7 @@ export const demoVariablesByProject: Record<string, Record<string, ServiceVariab
|
||||
] satisfies ServiceVariable[]
|
||||
),
|
||||
'demo-svc-postgres': [],
|
||||
'demo-svc-redis': [],
|
||||
},
|
||||
'demo-project-growth': {
|
||||
'demo-growth-site': (
|
||||
@@ -594,6 +620,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
{
|
||||
id: 'tpl-go',
|
||||
@@ -605,6 +632,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
{
|
||||
id: 'tpl-postgres',
|
||||
@@ -616,6 +644,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
{
|
||||
id: 'tpl-mysql',
|
||||
@@ -627,6 +656,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
{
|
||||
id: 'tpl-mariadb',
|
||||
@@ -638,6 +668,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
{
|
||||
id: 'tpl-clickhouse',
|
||||
@@ -649,6 +680,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
{
|
||||
id: 'tpl-dragonfly',
|
||||
@@ -660,6 +692,7 @@ export const demoTemplates: TemplateEntity[] = [
|
||||
variablesRaw: '[]',
|
||||
isOfficial: true,
|
||||
ownerId: null,
|
||||
isPublic: false,
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
Reference in new issue
Block a user