gazill 2.1.0 → 2.3.0
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/commands/autoscale.d.ts +5 -0
- package/dist/commands/autoscale.d.ts.map +1 -0
- package/dist/commands/autoscale.js +140 -0
- package/dist/commands/autoscale.js.map +1 -0
- package/dist/commands/blob.d.ts +19 -0
- package/dist/commands/blob.d.ts.map +1 -0
- package/dist/commands/blob.js +383 -0
- package/dist/commands/blob.js.map +1 -0
- package/dist/commands/cron.d.ts +27 -0
- package/dist/commands/cron.d.ts.map +1 -0
- package/dist/commands/cron.js +333 -0
- package/dist/commands/cron.js.map +1 -0
- package/dist/commands/db.d.ts +21 -0
- package/dist/commands/db.d.ts.map +1 -0
- package/dist/commands/db.js +567 -0
- package/dist/commands/db.js.map +1 -0
- package/dist/commands/domains.d.ts +5 -0
- package/dist/commands/domains.d.ts.map +1 -0
- package/dist/commands/domains.js +239 -0
- package/dist/commands/domains.js.map +1 -0
- package/dist/commands/env.d.ts +4 -0
- package/dist/commands/env.d.ts.map +1 -0
- package/dist/commands/env.js +180 -0
- package/dist/commands/env.js.map +1 -0
- package/dist/commands/health.d.ts +7 -0
- package/dist/commands/health.d.ts.map +1 -0
- package/dist/commands/health.js +189 -0
- package/dist/commands/health.js.map +1 -0
- package/dist/commands/limits.d.ts +2 -0
- package/dist/commands/limits.d.ts.map +1 -0
- package/dist/commands/limits.js +186 -0
- package/dist/commands/limits.js.map +1 -0
- package/dist/commands/mysql.d.ts +15 -0
- package/dist/commands/mysql.d.ts.map +1 -0
- package/dist/commands/mysql.js +413 -0
- package/dist/commands/mysql.js.map +1 -0
- package/dist/commands/new.d.ts.map +1 -1
- package/dist/commands/new.js +29 -3
- package/dist/commands/new.js.map +1 -1
- package/dist/commands/promote.d.ts.map +1 -1
- package/dist/commands/promote.js +36 -9
- package/dist/commands/promote.js.map +1 -1
- package/dist/commands/redis.d.ts +15 -0
- package/dist/commands/redis.d.ts.map +1 -0
- package/dist/commands/redis.js +402 -0
- package/dist/commands/redis.js.map +1 -0
- package/dist/commands/rollback.d.ts +9 -0
- package/dist/commands/rollback.d.ts.map +1 -0
- package/dist/commands/rollback.js +154 -0
- package/dist/commands/rollback.js.map +1 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +24 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/usage.d.ts.map +1 -1
- package/dist/commands/usage.js +20 -11
- package/dist/commands/usage.js.map +1 -1
- package/dist/commands/worker.d.ts +31 -0
- package/dist/commands/worker.d.ts.map +1 -0
- package/dist/commands/worker.js +380 -0
- package/dist/commands/worker.js.map +1 -0
- package/dist/index.js +362 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/api.d.ts +46 -2
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +16 -0
- package/dist/lib/api.js.map +1 -1
- package/dist/shared/constants.d.ts +10 -0
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +11 -0
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/types.d.ts +40 -1
- package/dist/shared/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
import ora from 'ora';
|
|
3
|
+
import { promises as fs } from 'fs';
|
|
4
|
+
import { getAuth, getApiUrl } from '../lib/config.js';
|
|
5
|
+
import { listProjects } from '../lib/api.js';
|
|
6
|
+
// API helper for cron routes
|
|
7
|
+
async function cronApiRequest(endpoint, options = { method: 'GET' }) {
|
|
8
|
+
const apiUrl = await getApiUrl();
|
|
9
|
+
const auth = await getAuth();
|
|
10
|
+
if (!auth?.token) {
|
|
11
|
+
throw new Error('Not authenticated');
|
|
12
|
+
}
|
|
13
|
+
const headers = {
|
|
14
|
+
'Content-Type': 'application/json',
|
|
15
|
+
Authorization: `Bearer ${auth.token}`,
|
|
16
|
+
};
|
|
17
|
+
const response = await fetch(`${apiUrl}${endpoint}`, {
|
|
18
|
+
method: options.method,
|
|
19
|
+
headers,
|
|
20
|
+
body: options.body ? JSON.stringify(options.body) : undefined,
|
|
21
|
+
});
|
|
22
|
+
const data = await response.json();
|
|
23
|
+
if (!response.ok) {
|
|
24
|
+
throw new Error(data.message || 'Request failed');
|
|
25
|
+
}
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
// Get current project ID from .gazill file
|
|
29
|
+
async function getProjectId() {
|
|
30
|
+
try {
|
|
31
|
+
const content = await fs.readFile('.gazill', 'utf-8');
|
|
32
|
+
const data = JSON.parse(content);
|
|
33
|
+
return data.projectId || null;
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
// Find project by name
|
|
40
|
+
async function findProjectByName(name) {
|
|
41
|
+
const response = await listProjects();
|
|
42
|
+
return response.projects.find((p) => p.name === name) || null;
|
|
43
|
+
}
|
|
44
|
+
// Format duration
|
|
45
|
+
function formatDuration(ms) {
|
|
46
|
+
if (ms < 1000)
|
|
47
|
+
return `${ms}ms`;
|
|
48
|
+
if (ms < 60000)
|
|
49
|
+
return `${(ms / 1000).toFixed(1)}s`;
|
|
50
|
+
return `${(ms / 60000).toFixed(1)}m`;
|
|
51
|
+
}
|
|
52
|
+
// Format date
|
|
53
|
+
function formatDate(dateStr) {
|
|
54
|
+
if (!dateStr)
|
|
55
|
+
return '-';
|
|
56
|
+
const date = new Date(dateStr);
|
|
57
|
+
return date.toLocaleString();
|
|
58
|
+
}
|
|
59
|
+
// gazill cron list [project] --env <environment>
|
|
60
|
+
export async function cronListCommand(projectName, options) {
|
|
61
|
+
const auth = await getAuth();
|
|
62
|
+
if (!auth?.token) {
|
|
63
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const spinner = ora('Fetching cron jobs...').start();
|
|
67
|
+
try {
|
|
68
|
+
let projectId = await getProjectId();
|
|
69
|
+
if (!projectId && !projectName) {
|
|
70
|
+
spinner.stop();
|
|
71
|
+
console.log(chalk.red('No project specified. Run from a project directory or specify project name.'));
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (projectName) {
|
|
75
|
+
const project = await findProjectByName(projectName);
|
|
76
|
+
if (!project) {
|
|
77
|
+
spinner.fail(`Project "${projectName}" not found.`);
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
projectId = project.id;
|
|
81
|
+
}
|
|
82
|
+
const env = options?.env || 'development';
|
|
83
|
+
const response = await cronApiRequest(`/api/projects/${projectId}/cron?environment=${env}`);
|
|
84
|
+
spinner.stop();
|
|
85
|
+
if (response.cronJobs.length === 0) {
|
|
86
|
+
console.log(chalk.yellow(`No cron jobs found for ${env} environment.`));
|
|
87
|
+
console.log(chalk.gray('Use `gazill cron create <name>` to create a cron job.'));
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
console.log(chalk.bold(`\nCron Jobs (${env}):\n`));
|
|
91
|
+
for (const job of response.cronJobs) {
|
|
92
|
+
const status = job.isEnabled ? chalk.green('●') : chalk.gray('○');
|
|
93
|
+
const lastStatus = job.lastStatus === 'success' ? chalk.green('✓') :
|
|
94
|
+
job.lastStatus === 'failed' ? chalk.red('✗') :
|
|
95
|
+
job.lastStatus === 'timeout' ? chalk.yellow('⏱') : '-';
|
|
96
|
+
console.log(` ${status} ${chalk.cyan(job.name)}`);
|
|
97
|
+
console.log(` Schedule: ${job.scheduleDescription} (${chalk.gray(job.schedule)})`);
|
|
98
|
+
console.log(` Endpoint: ${job.method} ${job.endpoint}`);
|
|
99
|
+
console.log(` Last run: ${formatDate(job.lastRunAt)} ${lastStatus}`);
|
|
100
|
+
if (job.isEnabled && job.nextRunAt) {
|
|
101
|
+
console.log(` Next run: ${formatDate(job.nextRunAt)}`);
|
|
102
|
+
}
|
|
103
|
+
console.log();
|
|
104
|
+
}
|
|
105
|
+
console.log(chalk.gray(`Total: ${response.cronJobs.length} cron job(s)`));
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
spinner.fail('Failed to fetch cron jobs');
|
|
109
|
+
console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// gazill cron create <name> --schedule --endpoint --method --timeout --env
|
|
113
|
+
export async function cronCreateCommand(name, options) {
|
|
114
|
+
const auth = await getAuth();
|
|
115
|
+
if (!auth?.token) {
|
|
116
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
if (!options?.schedule) {
|
|
120
|
+
console.log(chalk.red('Schedule is required. Use --schedule "0 * * * *"'));
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
if (!options?.endpoint) {
|
|
124
|
+
console.log(chalk.red('Endpoint is required. Use --endpoint "/api/cron/cleanup"'));
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
const spinner = ora('Creating cron job...').start();
|
|
128
|
+
try {
|
|
129
|
+
const projectId = await getProjectId();
|
|
130
|
+
if (!projectId) {
|
|
131
|
+
spinner.stop();
|
|
132
|
+
console.log(chalk.red('No project found. Run from a project directory.'));
|
|
133
|
+
return;
|
|
134
|
+
}
|
|
135
|
+
const body = {
|
|
136
|
+
name,
|
|
137
|
+
schedule: options.schedule,
|
|
138
|
+
endpoint: options.endpoint,
|
|
139
|
+
method: options.method || 'POST',
|
|
140
|
+
environment: options.env || 'development',
|
|
141
|
+
};
|
|
142
|
+
if (options.timeout) {
|
|
143
|
+
body.timeoutSeconds = parseInt(options.timeout, 10);
|
|
144
|
+
}
|
|
145
|
+
const response = await cronApiRequest(`/api/projects/${projectId}/cron`, { method: 'POST', body });
|
|
146
|
+
spinner.succeed(`Created cron job '${chalk.cyan(response.cronJob.name)}'`);
|
|
147
|
+
console.log();
|
|
148
|
+
console.log(chalk.gray(' Schedule:'), response.cronJob.scheduleDescription);
|
|
149
|
+
console.log(chalk.gray(' Endpoint:'), `${response.cronJob.method} ${response.cronJob.endpoint}`);
|
|
150
|
+
if (response.cronJob.nextRunAt) {
|
|
151
|
+
console.log(chalk.gray(' Next run:'), formatDate(response.cronJob.nextRunAt));
|
|
152
|
+
}
|
|
153
|
+
console.log();
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
spinner.fail('Failed to create cron job');
|
|
157
|
+
console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
// gazill cron update <name> --schedule --endpoint --enabled --env
|
|
161
|
+
export async function cronUpdateCommand(name, options) {
|
|
162
|
+
const auth = await getAuth();
|
|
163
|
+
if (!auth?.token) {
|
|
164
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
const spinner = ora('Updating cron job...').start();
|
|
168
|
+
try {
|
|
169
|
+
const projectId = await getProjectId();
|
|
170
|
+
if (!projectId) {
|
|
171
|
+
spinner.stop();
|
|
172
|
+
console.log(chalk.red('No project found. Run from a project directory.'));
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
// Find job by name
|
|
176
|
+
const env = options?.env || 'development';
|
|
177
|
+
const listResponse = await cronApiRequest(`/api/projects/${projectId}/cron?environment=${env}`);
|
|
178
|
+
const job = listResponse.cronJobs.find(j => j.name === name);
|
|
179
|
+
if (!job) {
|
|
180
|
+
spinner.fail(`Cron job '${name}' not found in ${env} environment.`);
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
const body = {};
|
|
184
|
+
if (options?.schedule)
|
|
185
|
+
body.schedule = options.schedule;
|
|
186
|
+
if (options?.endpoint)
|
|
187
|
+
body.endpoint = options.endpoint;
|
|
188
|
+
if (options?.enabled !== undefined)
|
|
189
|
+
body.isEnabled = options.enabled === 'true';
|
|
190
|
+
const response = await cronApiRequest(`/api/projects/${projectId}/cron/${job.id}`, { method: 'PATCH', body });
|
|
191
|
+
spinner.succeed(`Updated cron job '${chalk.cyan(response.cronJob.name)}'`);
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
spinner.fail('Failed to update cron job');
|
|
195
|
+
console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
// gazill cron delete <name> --env
|
|
199
|
+
export async function cronDeleteCommand(name, options) {
|
|
200
|
+
const auth = await getAuth();
|
|
201
|
+
if (!auth?.token) {
|
|
202
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
const spinner = ora('Deleting cron job...').start();
|
|
206
|
+
try {
|
|
207
|
+
const projectId = await getProjectId();
|
|
208
|
+
if (!projectId) {
|
|
209
|
+
spinner.stop();
|
|
210
|
+
console.log(chalk.red('No project found. Run from a project directory.'));
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
// Find job by name
|
|
214
|
+
const env = options?.env || 'development';
|
|
215
|
+
const listResponse = await cronApiRequest(`/api/projects/${projectId}/cron?environment=${env}`);
|
|
216
|
+
const job = listResponse.cronJobs.find(j => j.name === name);
|
|
217
|
+
if (!job) {
|
|
218
|
+
spinner.fail(`Cron job '${name}' not found in ${env} environment.`);
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
await cronApiRequest(`/api/projects/${projectId}/cron/${job.id}`, { method: 'DELETE' });
|
|
222
|
+
spinner.succeed(`Deleted cron job '${chalk.cyan(name)}'`);
|
|
223
|
+
}
|
|
224
|
+
catch (error) {
|
|
225
|
+
spinner.fail('Failed to delete cron job');
|
|
226
|
+
console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
// gazill cron run <name> --env
|
|
230
|
+
export async function cronRunCommand(name, options) {
|
|
231
|
+
const auth = await getAuth();
|
|
232
|
+
if (!auth?.token) {
|
|
233
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
const spinner = ora(`Running cron job '${name}'...`).start();
|
|
237
|
+
try {
|
|
238
|
+
const projectId = await getProjectId();
|
|
239
|
+
if (!projectId) {
|
|
240
|
+
spinner.stop();
|
|
241
|
+
console.log(chalk.red('No project found. Run from a project directory.'));
|
|
242
|
+
return;
|
|
243
|
+
}
|
|
244
|
+
// Find job by name
|
|
245
|
+
const env = options?.env || 'development';
|
|
246
|
+
const listResponse = await cronApiRequest(`/api/projects/${projectId}/cron?environment=${env}`);
|
|
247
|
+
const job = listResponse.cronJobs.find(j => j.name === name);
|
|
248
|
+
if (!job) {
|
|
249
|
+
spinner.fail(`Cron job '${name}' not found in ${env} environment.`);
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
const response = await cronApiRequest(`/api/projects/${projectId}/cron/${job.id}/run`, { method: 'POST' });
|
|
253
|
+
const exec = response.execution;
|
|
254
|
+
const duration = exec.durationMs ? formatDuration(exec.durationMs) : '-';
|
|
255
|
+
if (exec.status === 'success') {
|
|
256
|
+
spinner.succeed(`Executed '${chalk.cyan(name)}' in ${duration}`);
|
|
257
|
+
console.log(chalk.gray(' Status:'), chalk.green(`${exec.httpStatus} OK`));
|
|
258
|
+
if (exec.responseBody) {
|
|
259
|
+
const preview = exec.responseBody.length > 200
|
|
260
|
+
? exec.responseBody.substring(0, 200) + '...'
|
|
261
|
+
: exec.responseBody;
|
|
262
|
+
console.log(chalk.gray(' Response:'), preview);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
else if (exec.status === 'timeout') {
|
|
266
|
+
spinner.warn(`Cron job '${name}' timed out after ${duration}`);
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
spinner.fail(`Cron job '${name}' failed after ${duration}`);
|
|
270
|
+
if (exec.httpStatus) {
|
|
271
|
+
console.log(chalk.gray(' Status:'), chalk.red(`${exec.httpStatus}`));
|
|
272
|
+
}
|
|
273
|
+
if (exec.errorMessage) {
|
|
274
|
+
console.log(chalk.gray(' Error:'), chalk.red(exec.errorMessage));
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
catch (error) {
|
|
279
|
+
spinner.fail('Failed to run cron job');
|
|
280
|
+
console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
// gazill cron history <name> --limit --env
|
|
284
|
+
export async function cronHistoryCommand(name, options) {
|
|
285
|
+
const auth = await getAuth();
|
|
286
|
+
if (!auth?.token) {
|
|
287
|
+
console.log(chalk.red('Not logged in. Run `gazill login` first.'));
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
const spinner = ora('Fetching execution history...').start();
|
|
291
|
+
try {
|
|
292
|
+
const projectId = await getProjectId();
|
|
293
|
+
if (!projectId) {
|
|
294
|
+
spinner.stop();
|
|
295
|
+
console.log(chalk.red('No project found. Run from a project directory.'));
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
298
|
+
// Find job by name
|
|
299
|
+
const env = options?.env || 'development';
|
|
300
|
+
const listResponse = await cronApiRequest(`/api/projects/${projectId}/cron?environment=${env}`);
|
|
301
|
+
const job = listResponse.cronJobs.find(j => j.name === name);
|
|
302
|
+
if (!job) {
|
|
303
|
+
spinner.fail(`Cron job '${name}' not found in ${env} environment.`);
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
const limit = options?.limit || '10';
|
|
307
|
+
const response = await cronApiRequest(`/api/projects/${projectId}/cron/${job.id}/history?limit=${limit}`);
|
|
308
|
+
spinner.stop();
|
|
309
|
+
if (response.executions.length === 0) {
|
|
310
|
+
console.log(chalk.yellow('No execution history found.'));
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
313
|
+
console.log(chalk.bold(`\nExecution History for '${name}':\n`));
|
|
314
|
+
console.log(chalk.gray(' TIME STATUS DURATION HTTP'));
|
|
315
|
+
console.log(chalk.gray(' ' + '-'.repeat(55)));
|
|
316
|
+
for (const exec of response.executions) {
|
|
317
|
+
const time = formatDate(exec.startedAt).padEnd(25);
|
|
318
|
+
const status = exec.status === 'success' ? chalk.green('success') :
|
|
319
|
+
exec.status === 'failed' ? chalk.red('failed ') :
|
|
320
|
+
exec.status === 'timeout' ? chalk.yellow('timeout') :
|
|
321
|
+
chalk.blue('running');
|
|
322
|
+
const duration = exec.durationMs ? formatDuration(exec.durationMs).padEnd(8) : '- ';
|
|
323
|
+
const httpStatus = exec.httpStatus ? String(exec.httpStatus) : '-';
|
|
324
|
+
console.log(` ${time} ${status} ${duration} ${httpStatus}`);
|
|
325
|
+
}
|
|
326
|
+
console.log();
|
|
327
|
+
}
|
|
328
|
+
catch (error) {
|
|
329
|
+
spinner.fail('Failed to fetch execution history');
|
|
330
|
+
console.error(chalk.red(error instanceof Error ? error.message : 'Unknown error'));
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
//# sourceMappingURL=cron.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/commands/cron.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare function dbCreateCommand(name?: string, options?: {
|
|
2
|
+
size?: string;
|
|
3
|
+
project?: string;
|
|
4
|
+
}): Promise<void>;
|
|
5
|
+
export declare function dbListCommand(projectName?: string): Promise<void>;
|
|
6
|
+
export declare function dbConnectCommand(name?: string, options?: {
|
|
7
|
+
project?: string;
|
|
8
|
+
}): Promise<void>;
|
|
9
|
+
export declare function dbDeleteCommand(name?: string, options?: {
|
|
10
|
+
project?: string;
|
|
11
|
+
}): Promise<void>;
|
|
12
|
+
export declare function dbBackupCreateCommand(name?: string, options?: {
|
|
13
|
+
project?: string;
|
|
14
|
+
}): Promise<void>;
|
|
15
|
+
export declare function dbBackupListCommand(name?: string, options?: {
|
|
16
|
+
project?: string;
|
|
17
|
+
}): Promise<void>;
|
|
18
|
+
export declare function dbResizeCommand(size: string, name?: string, options?: {
|
|
19
|
+
project?: string;
|
|
20
|
+
}): Promise<void>;
|
|
21
|
+
//# sourceMappingURL=db.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/commands/db.ts"],"names":[],"mappings":"AAyHA,wBAAsB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFjH;AAGD,wBAAsB,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDvE;AAGD,wBAAsB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuFnG;AAGD,wBAAsB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkFlG;AAGD,wBAAsB,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqExG;AAGD,wBAAsB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyFtG;AAGD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoHhH"}
|