@wocker/ws
Version:
Docker workspace for web projects
28 lines (27 loc) • 1.89 kB
TypeScript
import { AppConfigService, EventService, LogService, ProcessService, Project, ProjectService as CoreProjectService, ProjectRepositorySearchParams as SearchParams } from "@wocker/core";
import { ComposeService, DockerService } from "@wocker/docker-module";
import { PresetRepository, PresetService } from "../../preset";
import { ProjectRepository } from "../repositories/ProjectRepository";
export declare class ProjectService extends CoreProjectService {
protected readonly appConfigService: AppConfigService;
protected readonly processService: ProcessService;
protected readonly eventService: EventService;
protected readonly dockerService: DockerService;
protected readonly composeService: ComposeService;
protected readonly projectRepository: ProjectRepository;
protected readonly presetService: PresetService;
protected readonly presetRepository: PresetRepository;
protected readonly logService: LogService;
constructor(appConfigService: AppConfigService, processService: ProcessService, eventService: EventService, dockerService: DockerService, composeService: ComposeService, projectRepository: ProjectRepository, presetService: PresetService, presetRepository: PresetRepository, logService: LogService);
get(name?: string): Project;
search(params?: SearchParams): Project[];
searchOne(params?: SearchParams): Project | null;
save(project: Project): void;
start(project: Project, restart?: boolean, rebuild?: boolean, attach?: boolean): Promise<void>;
stop(project: Project): Promise<void>;
build(project: Project, rebuild?: boolean): Promise<void>;
attach(project: Project): Promise<void>;
run(project: Project, script: string, service?: string, args?: string[]): Promise<void>;
exec(project: Project, command: string[]): Promise<void>;
logs(project: Project, detach?: boolean): Promise<void>;
}