aspire2coolify 1.0.15 → 2.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/coolify.d.ts +160 -0
- package/dist/api/coolify.d.ts.map +1 -0
- package/dist/api/coolify.js +107 -0
- package/dist/api/coolify.js.map +1 -0
- package/dist/api/deployer.d.ts +31 -0
- package/dist/api/deployer.d.ts.map +1 -0
- package/dist/api/deployer.js +291 -0
- package/dist/api/deployer.js.map +1 -0
- package/dist/api/index.d.ts +7 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +7 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/token.d.ts +44 -0
- package/dist/api/token.d.ts.map +1 -0
- package/dist/api/token.js +100 -0
- package/dist/api/token.js.map +1 -0
- package/dist/cli/index.js +87 -33
- package/dist/cli/index.js.map +1 -1
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +4 -3
- package/dist/config/index.js.map +1 -1
- package/dist/generators/coolify/application.d.ts +8 -2
- package/dist/generators/coolify/application.d.ts.map +1 -1
- package/dist/generators/coolify/application.js +27 -42
- package/dist/generators/coolify/application.js.map +1 -1
- package/dist/generators/coolify/database.d.ts +8 -2
- package/dist/generators/coolify/database.d.ts.map +1 -1
- package/dist/generators/coolify/database.js +21 -21
- package/dist/generators/coolify/database.js.map +1 -1
- package/dist/generators/coolify/index.d.ts +4 -2
- package/dist/generators/coolify/index.d.ts.map +1 -1
- package/dist/generators/coolify/index.js +14 -30
- package/dist/generators/coolify/index.js.map +1 -1
- package/dist/generators/coolify/service.d.ts +9 -3
- package/dist/generators/coolify/service.d.ts.map +1 -1
- package/dist/generators/coolify/service.js +38 -53
- package/dist/generators/coolify/service.js.map +1 -1
- package/dist/models/coolify.d.ts +25 -20
- package/dist/models/coolify.d.ts.map +1 -1
- package/dist/models/coolify.js +49 -4
- package/dist/models/coolify.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Coolify REST API client
|
|
3
|
+
*/
|
|
4
|
+
export interface CoolifyApiConfig {
|
|
5
|
+
apiUrl: string;
|
|
6
|
+
token: string;
|
|
7
|
+
}
|
|
8
|
+
export interface CoolifyApiResponse<T = unknown> {
|
|
9
|
+
success: boolean;
|
|
10
|
+
data?: T;
|
|
11
|
+
error?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface CreateDatabaseResponse {
|
|
14
|
+
uuid: string;
|
|
15
|
+
}
|
|
16
|
+
export interface CreateApplicationResponse {
|
|
17
|
+
uuid: string;
|
|
18
|
+
}
|
|
19
|
+
export interface CreateServiceResponse {
|
|
20
|
+
uuid: string;
|
|
21
|
+
domains: string[];
|
|
22
|
+
}
|
|
23
|
+
export interface PostgresDatabasePayload {
|
|
24
|
+
server_uuid: string;
|
|
25
|
+
project_uuid: string;
|
|
26
|
+
environment_name: string;
|
|
27
|
+
name?: string;
|
|
28
|
+
description?: string;
|
|
29
|
+
image?: string;
|
|
30
|
+
postgres_user?: string;
|
|
31
|
+
postgres_password?: string;
|
|
32
|
+
postgres_db?: string;
|
|
33
|
+
is_public?: boolean;
|
|
34
|
+
public_port?: number;
|
|
35
|
+
instant_deploy?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export interface MysqlDatabasePayload {
|
|
38
|
+
server_uuid: string;
|
|
39
|
+
project_uuid: string;
|
|
40
|
+
environment_name: string;
|
|
41
|
+
name?: string;
|
|
42
|
+
description?: string;
|
|
43
|
+
image?: string;
|
|
44
|
+
mysql_user?: string;
|
|
45
|
+
mysql_password?: string;
|
|
46
|
+
mysql_database?: string;
|
|
47
|
+
mysql_root_password?: string;
|
|
48
|
+
is_public?: boolean;
|
|
49
|
+
public_port?: number;
|
|
50
|
+
instant_deploy?: boolean;
|
|
51
|
+
}
|
|
52
|
+
export interface MongoDbDatabasePayload {
|
|
53
|
+
server_uuid: string;
|
|
54
|
+
project_uuid: string;
|
|
55
|
+
environment_name: string;
|
|
56
|
+
name?: string;
|
|
57
|
+
description?: string;
|
|
58
|
+
image?: string;
|
|
59
|
+
mongo_initdb_root_username?: string;
|
|
60
|
+
mongo_initdb_root_password?: string;
|
|
61
|
+
mongo_initdb_database?: string;
|
|
62
|
+
is_public?: boolean;
|
|
63
|
+
public_port?: number;
|
|
64
|
+
instant_deploy?: boolean;
|
|
65
|
+
}
|
|
66
|
+
export interface RedisDatabasePayload {
|
|
67
|
+
server_uuid: string;
|
|
68
|
+
project_uuid: string;
|
|
69
|
+
environment_name: string;
|
|
70
|
+
name?: string;
|
|
71
|
+
description?: string;
|
|
72
|
+
image?: string;
|
|
73
|
+
redis_password?: string;
|
|
74
|
+
is_public?: boolean;
|
|
75
|
+
public_port?: number;
|
|
76
|
+
instant_deploy?: boolean;
|
|
77
|
+
}
|
|
78
|
+
export interface DockerImageApplicationPayload {
|
|
79
|
+
server_uuid: string;
|
|
80
|
+
project_uuid: string;
|
|
81
|
+
environment_name: string;
|
|
82
|
+
docker_registry_image_name: string;
|
|
83
|
+
docker_registry_image_tag?: string;
|
|
84
|
+
name?: string;
|
|
85
|
+
description?: string;
|
|
86
|
+
domains?: string;
|
|
87
|
+
ports_exposes?: string;
|
|
88
|
+
ports_mappings?: string;
|
|
89
|
+
instant_deploy?: boolean;
|
|
90
|
+
}
|
|
91
|
+
export interface DockerfileApplicationPayload {
|
|
92
|
+
server_uuid: string;
|
|
93
|
+
project_uuid: string;
|
|
94
|
+
environment_name: string;
|
|
95
|
+
dockerfile: string;
|
|
96
|
+
name: string;
|
|
97
|
+
description?: string;
|
|
98
|
+
domains?: string;
|
|
99
|
+
ports_exposes?: string;
|
|
100
|
+
ports_mappings?: string;
|
|
101
|
+
base_directory?: string;
|
|
102
|
+
instant_deploy?: boolean;
|
|
103
|
+
}
|
|
104
|
+
export interface ServicePayload {
|
|
105
|
+
server_uuid: string;
|
|
106
|
+
project_uuid: string;
|
|
107
|
+
environment_name: string;
|
|
108
|
+
type: string;
|
|
109
|
+
name: string;
|
|
110
|
+
description?: string;
|
|
111
|
+
instant_deploy?: boolean;
|
|
112
|
+
docker_compose_raw?: string;
|
|
113
|
+
}
|
|
114
|
+
export type DatabasePayload = PostgresDatabasePayload | MysqlDatabasePayload | MongoDbDatabasePayload | RedisDatabasePayload;
|
|
115
|
+
export type ApplicationPayload = DockerImageApplicationPayload | DockerfileApplicationPayload;
|
|
116
|
+
export declare class CoolifyApiClient {
|
|
117
|
+
private apiUrl;
|
|
118
|
+
private token;
|
|
119
|
+
constructor(config: CoolifyApiConfig);
|
|
120
|
+
private request;
|
|
121
|
+
/**
|
|
122
|
+
* Create a PostgreSQL database
|
|
123
|
+
*/
|
|
124
|
+
createPostgresDatabase(payload: PostgresDatabasePayload): Promise<CoolifyApiResponse<CreateDatabaseResponse>>;
|
|
125
|
+
/**
|
|
126
|
+
* Create a MySQL database
|
|
127
|
+
*/
|
|
128
|
+
createMysqlDatabase(payload: MysqlDatabasePayload): Promise<CoolifyApiResponse<CreateDatabaseResponse>>;
|
|
129
|
+
/**
|
|
130
|
+
* Create a MongoDB database
|
|
131
|
+
*/
|
|
132
|
+
createMongoDatabase(payload: MongoDbDatabasePayload): Promise<CoolifyApiResponse<CreateDatabaseResponse>>;
|
|
133
|
+
/**
|
|
134
|
+
* Create a Redis database
|
|
135
|
+
*/
|
|
136
|
+
createRedisDatabase(payload: RedisDatabasePayload): Promise<CoolifyApiResponse<CreateDatabaseResponse>>;
|
|
137
|
+
/**
|
|
138
|
+
* Create a MariaDB database
|
|
139
|
+
*/
|
|
140
|
+
createMariaDbDatabase(payload: MysqlDatabasePayload): Promise<CoolifyApiResponse<CreateDatabaseResponse>>;
|
|
141
|
+
/**
|
|
142
|
+
* Create a Docker image application
|
|
143
|
+
*/
|
|
144
|
+
createDockerImageApplication(payload: DockerImageApplicationPayload): Promise<CoolifyApiResponse<CreateApplicationResponse>>;
|
|
145
|
+
/**
|
|
146
|
+
* Create a Dockerfile application
|
|
147
|
+
*/
|
|
148
|
+
createDockerfileApplication(payload: DockerfileApplicationPayload): Promise<CoolifyApiResponse<CreateApplicationResponse>>;
|
|
149
|
+
/**
|
|
150
|
+
* Create a service (one-click services like RabbitMQ, MinIO, etc.)
|
|
151
|
+
*/
|
|
152
|
+
createService(payload: ServicePayload): Promise<CoolifyApiResponse<CreateServiceResponse>>;
|
|
153
|
+
/**
|
|
154
|
+
* Test connection to the Coolify API
|
|
155
|
+
*/
|
|
156
|
+
testConnection(): Promise<CoolifyApiResponse<{
|
|
157
|
+
version?: string;
|
|
158
|
+
}>>;
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=coolify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coolify.d.ts","sourceRoot":"","sources":["../../src/api/coolify.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Coolify REST API client
|
|
3
|
+
*/
|
|
4
|
+
export class CoolifyApiClient {
|
|
5
|
+
apiUrl;
|
|
6
|
+
token;
|
|
7
|
+
constructor(config) {
|
|
8
|
+
// Remove trailing slash from API URL
|
|
9
|
+
this.apiUrl = config.apiUrl.replace(/\/+$/, '');
|
|
10
|
+
this.token = config.token;
|
|
11
|
+
}
|
|
12
|
+
async request(method, endpoint, body) {
|
|
13
|
+
const url = `${this.apiUrl}/api/v1${endpoint}`;
|
|
14
|
+
try {
|
|
15
|
+
const response = await fetch(url, {
|
|
16
|
+
method,
|
|
17
|
+
headers: {
|
|
18
|
+
Authorization: `Bearer ${this.token}`,
|
|
19
|
+
'Content-Type': 'application/json',
|
|
20
|
+
Accept: 'application/json',
|
|
21
|
+
},
|
|
22
|
+
body: body ? JSON.stringify(body) : undefined,
|
|
23
|
+
});
|
|
24
|
+
if (!response.ok) {
|
|
25
|
+
const errorText = await response.text();
|
|
26
|
+
let errorMessage;
|
|
27
|
+
try {
|
|
28
|
+
const errorJson = JSON.parse(errorText);
|
|
29
|
+
errorMessage = errorJson.message || errorJson.error || errorText;
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
errorMessage = errorText || `HTTP ${response.status}: ${response.statusText}`;
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
success: false,
|
|
36
|
+
error: errorMessage,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
const data = (await response.json());
|
|
40
|
+
return {
|
|
41
|
+
success: true,
|
|
42
|
+
data,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
catch (err) {
|
|
46
|
+
return {
|
|
47
|
+
success: false,
|
|
48
|
+
error: err instanceof Error ? err.message : String(err),
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Create a PostgreSQL database
|
|
54
|
+
*/
|
|
55
|
+
async createPostgresDatabase(payload) {
|
|
56
|
+
return this.request('POST', '/databases/postgresql', payload);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Create a MySQL database
|
|
60
|
+
*/
|
|
61
|
+
async createMysqlDatabase(payload) {
|
|
62
|
+
return this.request('POST', '/databases/mysql', payload);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Create a MongoDB database
|
|
66
|
+
*/
|
|
67
|
+
async createMongoDatabase(payload) {
|
|
68
|
+
return this.request('POST', '/databases/mongodb', payload);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Create a Redis database
|
|
72
|
+
*/
|
|
73
|
+
async createRedisDatabase(payload) {
|
|
74
|
+
return this.request('POST', '/databases/redis', payload);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Create a MariaDB database
|
|
78
|
+
*/
|
|
79
|
+
async createMariaDbDatabase(payload) {
|
|
80
|
+
return this.request('POST', '/databases/mariadb', payload);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Create a Docker image application
|
|
84
|
+
*/
|
|
85
|
+
async createDockerImageApplication(payload) {
|
|
86
|
+
return this.request('POST', '/applications/dockerimage', payload);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Create a Dockerfile application
|
|
90
|
+
*/
|
|
91
|
+
async createDockerfileApplication(payload) {
|
|
92
|
+
return this.request('POST', '/applications/dockerfile', payload);
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Create a service (one-click services like RabbitMQ, MinIO, etc.)
|
|
96
|
+
*/
|
|
97
|
+
async createService(payload) {
|
|
98
|
+
return this.request('POST', '/services', payload);
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Test connection to the Coolify API
|
|
102
|
+
*/
|
|
103
|
+
async testConnection() {
|
|
104
|
+
return this.request('GET', '/version');
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=coolify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coolify.js","sourceRoot":"","sources":["../../src/api/coolify.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployer - Deploys Aspire resources to Coolify via API
|
|
3
|
+
*/
|
|
4
|
+
import type { AspireApp } from '../models/aspire.js';
|
|
5
|
+
import { CoolifyApiClient } from './coolify.js';
|
|
6
|
+
export interface DeployConfig {
|
|
7
|
+
projectUuid: string;
|
|
8
|
+
serverUuid: string;
|
|
9
|
+
environmentName: string;
|
|
10
|
+
instantDeploy?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface DeployResult {
|
|
13
|
+
success: boolean;
|
|
14
|
+
resourceType: 'database' | 'service' | 'application';
|
|
15
|
+
name: string;
|
|
16
|
+
uuid?: string;
|
|
17
|
+
error?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface DeploymentSummary {
|
|
20
|
+
results: DeployResult[];
|
|
21
|
+
successful: number;
|
|
22
|
+
failed: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Deploy an Aspire application model to Coolify
|
|
26
|
+
*/
|
|
27
|
+
export declare function deployToCloudify(client: CoolifyApiClient, app: AspireApp, config: DeployConfig, options?: {
|
|
28
|
+
dryRun?: boolean;
|
|
29
|
+
onProgress?: (message: string) => void;
|
|
30
|
+
}): Promise<DeploymentSummary>;
|
|
31
|
+
//# sourceMappingURL=deployer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployer.d.ts","sourceRoot":"","sources":["../../src/api/deployer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAkD,MAAM,qBAAqB,CAAC;AACrG,OAAO,EACL,gBAAgB,EAOjB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,UAAU,GAAG,SAAS,GAAG,aAAa,CAAC;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,YAAY,EACpB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,GACL,OAAO,CAAC,iBAAiB,CAAC,CAwG5B"}
|
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Deployer - Deploys Aspire resources to Coolify via API
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Deploy an Aspire application model to Coolify
|
|
6
|
+
*/
|
|
7
|
+
export async function deployToCloudify(client, app, config, options = {}) {
|
|
8
|
+
const results = [];
|
|
9
|
+
const log = options.onProgress || console.log;
|
|
10
|
+
// Deploy databases first
|
|
11
|
+
for (const db of app.databases) {
|
|
12
|
+
if (options.dryRun) {
|
|
13
|
+
log(`[DRY RUN] Would create database: ${db.name} (${db.type})`);
|
|
14
|
+
results.push({
|
|
15
|
+
success: true,
|
|
16
|
+
resourceType: 'database',
|
|
17
|
+
name: db.name,
|
|
18
|
+
uuid: 'dry-run-uuid',
|
|
19
|
+
});
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
log(`Creating database: ${db.name} (${db.type})...`);
|
|
23
|
+
const result = await deployDatabase(client, db, config);
|
|
24
|
+
results.push(result);
|
|
25
|
+
if (result.success) {
|
|
26
|
+
log(` ✓ Created database ${db.name} (uuid: ${result.uuid})`);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
log(` ✗ Failed to create database ${db.name}: ${result.error}`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
// Deploy storage services
|
|
33
|
+
for (const storage of app.storage) {
|
|
34
|
+
if (options.dryRun) {
|
|
35
|
+
log(`[DRY RUN] Would create storage service: ${storage.name} (${storage.type})`);
|
|
36
|
+
results.push({
|
|
37
|
+
success: true,
|
|
38
|
+
resourceType: 'service',
|
|
39
|
+
name: storage.name,
|
|
40
|
+
uuid: 'dry-run-uuid',
|
|
41
|
+
});
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
log(`Creating storage service: ${storage.name} (${storage.type})...`);
|
|
45
|
+
const result = await deployService(client, storage, config);
|
|
46
|
+
results.push(result);
|
|
47
|
+
if (result.success) {
|
|
48
|
+
log(` ✓ Created storage service ${storage.name} (uuid: ${result.uuid})`);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
log(` ✗ Failed to create storage service ${storage.name}: ${result.error}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// Deploy other services
|
|
55
|
+
for (const service of app.services) {
|
|
56
|
+
if (options.dryRun) {
|
|
57
|
+
log(`[DRY RUN] Would create service: ${service.name} (${service.type})`);
|
|
58
|
+
results.push({
|
|
59
|
+
success: true,
|
|
60
|
+
resourceType: 'service',
|
|
61
|
+
name: service.name,
|
|
62
|
+
uuid: 'dry-run-uuid',
|
|
63
|
+
});
|
|
64
|
+
continue;
|
|
65
|
+
}
|
|
66
|
+
log(`Creating service: ${service.name} (${service.type})...`);
|
|
67
|
+
const result = await deployService(client, service, config);
|
|
68
|
+
results.push(result);
|
|
69
|
+
if (result.success) {
|
|
70
|
+
log(` ✓ Created service ${service.name} (uuid: ${result.uuid})`);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
log(` ✗ Failed to create service ${service.name}: ${result.error}`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// Deploy applications last
|
|
77
|
+
for (const application of app.applications) {
|
|
78
|
+
if (options.dryRun) {
|
|
79
|
+
log(`[DRY RUN] Would create application: ${application.name}`);
|
|
80
|
+
results.push({
|
|
81
|
+
success: true,
|
|
82
|
+
resourceType: 'application',
|
|
83
|
+
name: application.name,
|
|
84
|
+
uuid: 'dry-run-uuid',
|
|
85
|
+
});
|
|
86
|
+
continue;
|
|
87
|
+
}
|
|
88
|
+
log(`Creating application: ${application.name}...`);
|
|
89
|
+
const result = await deployApplication(client, application, config);
|
|
90
|
+
results.push(result);
|
|
91
|
+
if (result.success) {
|
|
92
|
+
log(` ✓ Created application ${application.name} (uuid: ${result.uuid})`);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
log(` ✗ Failed to create application ${application.name}: ${result.error}`);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const successful = results.filter((r) => r.success).length;
|
|
99
|
+
const failed = results.filter((r) => !r.success).length;
|
|
100
|
+
return { results, successful, failed };
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Deploy a database to Coolify
|
|
104
|
+
*/
|
|
105
|
+
async function deployDatabase(client, db, config) {
|
|
106
|
+
const basePayload = {
|
|
107
|
+
server_uuid: config.serverUuid,
|
|
108
|
+
project_uuid: config.projectUuid,
|
|
109
|
+
environment_name: config.environmentName,
|
|
110
|
+
name: db.name,
|
|
111
|
+
instant_deploy: config.instantDeploy ?? true,
|
|
112
|
+
is_public: db.hostPort ? true : undefined,
|
|
113
|
+
public_port: db.hostPort,
|
|
114
|
+
};
|
|
115
|
+
try {
|
|
116
|
+
let response;
|
|
117
|
+
switch (db.type) {
|
|
118
|
+
case 'postgres': {
|
|
119
|
+
const payload = {
|
|
120
|
+
...basePayload,
|
|
121
|
+
image: db.image ? `${db.image}${db.imageTag ? `:${db.imageTag}` : ''}` : undefined,
|
|
122
|
+
};
|
|
123
|
+
response = await client.createPostgresDatabase(payload);
|
|
124
|
+
break;
|
|
125
|
+
}
|
|
126
|
+
case 'mysql': {
|
|
127
|
+
const payload = {
|
|
128
|
+
...basePayload,
|
|
129
|
+
image: db.image ? `${db.image}${db.imageTag ? `:${db.imageTag}` : ''}` : undefined,
|
|
130
|
+
};
|
|
131
|
+
response = await client.createMysqlDatabase(payload);
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
case 'mongodb': {
|
|
135
|
+
const payload = {
|
|
136
|
+
...basePayload,
|
|
137
|
+
image: db.image ? `${db.image}${db.imageTag ? `:${db.imageTag}` : ''}` : undefined,
|
|
138
|
+
};
|
|
139
|
+
response = await client.createMongoDatabase(payload);
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
case 'redis': {
|
|
143
|
+
const payload = {
|
|
144
|
+
...basePayload,
|
|
145
|
+
image: db.image ? `${db.image}${db.imageTag ? `:${db.imageTag}` : ''}` : undefined,
|
|
146
|
+
};
|
|
147
|
+
response = await client.createRedisDatabase(payload);
|
|
148
|
+
break;
|
|
149
|
+
}
|
|
150
|
+
case 'sqlserver': {
|
|
151
|
+
// SQL Server not natively supported, try PostgreSQL as fallback
|
|
152
|
+
console.warn(` Warning: SQL Server not supported, using PostgreSQL as fallback`);
|
|
153
|
+
const payload = {
|
|
154
|
+
...basePayload,
|
|
155
|
+
name: db.name,
|
|
156
|
+
};
|
|
157
|
+
response = await client.createPostgresDatabase(payload);
|
|
158
|
+
break;
|
|
159
|
+
}
|
|
160
|
+
default:
|
|
161
|
+
return {
|
|
162
|
+
success: false,
|
|
163
|
+
resourceType: 'database',
|
|
164
|
+
name: db.name,
|
|
165
|
+
error: `Unsupported database type: ${db.type}`,
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
if (response.success && response.data) {
|
|
169
|
+
return {
|
|
170
|
+
success: true,
|
|
171
|
+
resourceType: 'database',
|
|
172
|
+
name: db.name,
|
|
173
|
+
uuid: response.data.uuid,
|
|
174
|
+
};
|
|
175
|
+
}
|
|
176
|
+
return {
|
|
177
|
+
success: false,
|
|
178
|
+
resourceType: 'database',
|
|
179
|
+
name: db.name,
|
|
180
|
+
error: response.error || 'Unknown error',
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
catch (err) {
|
|
184
|
+
return {
|
|
185
|
+
success: false,
|
|
186
|
+
resourceType: 'database',
|
|
187
|
+
name: db.name,
|
|
188
|
+
error: err instanceof Error ? err.message : String(err),
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Deploy a service to Coolify
|
|
194
|
+
*/
|
|
195
|
+
async function deployService(client, service, config) {
|
|
196
|
+
// Map Aspire service types to Coolify service types
|
|
197
|
+
const serviceTypeMap = {
|
|
198
|
+
rabbitmq: 'rabbitmq',
|
|
199
|
+
minio: 'minio',
|
|
200
|
+
azurite: 'minio', // Use MinIO as Azure Storage fallback
|
|
201
|
+
keycloak: 'keycloak',
|
|
202
|
+
seq: 'seq',
|
|
203
|
+
maildev: 'mailpit',
|
|
204
|
+
mailpit: 'mailpit',
|
|
205
|
+
kafka: 'kafka',
|
|
206
|
+
elasticsearch: 'elasticsearch',
|
|
207
|
+
};
|
|
208
|
+
const coolifyType = serviceTypeMap[service.type] || service.type;
|
|
209
|
+
const payload = {
|
|
210
|
+
server_uuid: config.serverUuid,
|
|
211
|
+
project_uuid: config.projectUuid,
|
|
212
|
+
environment_name: config.environmentName,
|
|
213
|
+
type: coolifyType,
|
|
214
|
+
name: service.name,
|
|
215
|
+
instant_deploy: config.instantDeploy ?? true,
|
|
216
|
+
};
|
|
217
|
+
try {
|
|
218
|
+
const response = await client.createService(payload);
|
|
219
|
+
if (response.success && response.data) {
|
|
220
|
+
return {
|
|
221
|
+
success: true,
|
|
222
|
+
resourceType: 'service',
|
|
223
|
+
name: service.name,
|
|
224
|
+
uuid: response.data.uuid,
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
return {
|
|
228
|
+
success: false,
|
|
229
|
+
resourceType: 'service',
|
|
230
|
+
name: service.name,
|
|
231
|
+
error: response.error || 'Unknown error',
|
|
232
|
+
};
|
|
233
|
+
}
|
|
234
|
+
catch (err) {
|
|
235
|
+
return {
|
|
236
|
+
success: false,
|
|
237
|
+
resourceType: 'service',
|
|
238
|
+
name: service.name,
|
|
239
|
+
error: err instanceof Error ? err.message : String(err),
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Deploy an application to Coolify
|
|
245
|
+
*/
|
|
246
|
+
async function deployApplication(client, application, config) {
|
|
247
|
+
// Determine ports to expose
|
|
248
|
+
const ports = application.endpoints
|
|
249
|
+
.map((e) => e.targetPort || e.port)
|
|
250
|
+
.filter((p) => p !== undefined);
|
|
251
|
+
const portsExposes = ports.length > 0 ? ports.join(',') : '80';
|
|
252
|
+
// For Aspire apps, we create a placeholder Docker image application
|
|
253
|
+
// The user will need to configure the actual image or git source in Coolify
|
|
254
|
+
const imageName = application.project || application.name;
|
|
255
|
+
const payload = {
|
|
256
|
+
server_uuid: config.serverUuid,
|
|
257
|
+
project_uuid: config.projectUuid,
|
|
258
|
+
environment_name: config.environmentName,
|
|
259
|
+
docker_registry_image_name: imageName,
|
|
260
|
+
docker_registry_image_tag: 'latest',
|
|
261
|
+
name: application.name,
|
|
262
|
+
ports_exposes: portsExposes,
|
|
263
|
+
instant_deploy: config.instantDeploy ?? false, // Don't auto-deploy apps, user may want to configure first
|
|
264
|
+
};
|
|
265
|
+
try {
|
|
266
|
+
const response = await client.createDockerImageApplication(payload);
|
|
267
|
+
if (response.success && response.data) {
|
|
268
|
+
return {
|
|
269
|
+
success: true,
|
|
270
|
+
resourceType: 'application',
|
|
271
|
+
name: application.name,
|
|
272
|
+
uuid: response.data.uuid,
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
return {
|
|
276
|
+
success: false,
|
|
277
|
+
resourceType: 'application',
|
|
278
|
+
name: application.name,
|
|
279
|
+
error: response.error || 'Unknown error',
|
|
280
|
+
};
|
|
281
|
+
}
|
|
282
|
+
catch (err) {
|
|
283
|
+
return {
|
|
284
|
+
success: false,
|
|
285
|
+
resourceType: 'application',
|
|
286
|
+
name: application.name,
|
|
287
|
+
error: err instanceof Error ? err.message : String(err),
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
//# sourceMappingURL=deployer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployer.js","sourceRoot":"","sources":["../../src/api/deployer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC"}
|