feat: Add seed command support to preview deployments
Run project-specific initialization commands (DB migrations, fixture loading, etc.) automatically after containers are healthy, before the preview is marked ready. Configured via per-service `seed` arrays in .cw-preview.yml.
This commit is contained in:
@@ -133,6 +133,33 @@ services:
|
||||
expect(config.services.frontend.dev!.workdir).toBe('/app');
|
||||
});
|
||||
|
||||
it('parses seed array on a service', () => {
|
||||
const raw = `
|
||||
version: 1
|
||||
services:
|
||||
app:
|
||||
build: "."
|
||||
port: 3000
|
||||
seed:
|
||||
- npm run db:migrate
|
||||
- npm run db:seed
|
||||
`;
|
||||
const config = parseCwPreviewConfig(raw);
|
||||
expect(config.services.app.seed).toEqual(['npm run db:migrate', 'npm run db:seed']);
|
||||
});
|
||||
|
||||
it('omits seed when not specified', () => {
|
||||
const raw = `
|
||||
version: 1
|
||||
services:
|
||||
app:
|
||||
build: "."
|
||||
port: 3000
|
||||
`;
|
||||
const config = parseCwPreviewConfig(raw);
|
||||
expect(config.services.app.seed).toBeUndefined();
|
||||
});
|
||||
|
||||
it('parses dev section with only image', () => {
|
||||
const raw = `
|
||||
version: 1
|
||||
|
||||
Reference in New Issue
Block a user