@archznn/xavva 3.1.0 → 3.1.1
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/README.md +1 -1
- package/package.json +1 -1
- package/src/commands/DockerCommand.ts +12 -1
- package/src/services/DockerService.ts +11 -0
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> Ultra-fast development toolkit for Java Enterprise (Tomcat) on Windows, Linux & macOS
|
|
4
4
|
|
|
5
|
-
[](https://github.com/leorsousa05/Xavva)
|
|
6
6
|
[](LICENSE)
|
|
7
7
|
|
|
8
8
|
Xavva is a high-performance CLI built with **Bun** that transforms the Java/Tomcat development experience. It brings modern development workflows (like Node.js/Vite) to the Java Enterprise ecosystem with hot-reload, smart logging, and automated deployment.
|
package/package.json
CHANGED
|
@@ -19,12 +19,23 @@ export class DockerCommand implements Command {
|
|
|
19
19
|
// Verifica se Docker está disponível
|
|
20
20
|
const isAvailable = await service.isDockerAvailable();
|
|
21
21
|
if (!isAvailable) {
|
|
22
|
-
Logger.error("Docker
|
|
22
|
+
Logger.error("Docker CLI not found");
|
|
23
23
|
Logger.info("Install", "https://docs.docker.com/get-docker/");
|
|
24
24
|
await processManager.shutdown(1);
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
// Verifica se o daemon está rodando
|
|
29
|
+
const isRunning = await service.isDaemonRunning();
|
|
30
|
+
if (!isRunning) {
|
|
31
|
+
Logger.error("Docker daemon is not running");
|
|
32
|
+
Logger.info("Windows", "Start Docker Desktop from the system tray");
|
|
33
|
+
Logger.info("Linux", "Run: sudo systemctl start docker");
|
|
34
|
+
Logger.info("macOS", "Start Docker Desktop from Applications");
|
|
35
|
+
await processManager.shutdown(1);
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
|
|
28
39
|
const dockerConfig: DockerConfig = {
|
|
29
40
|
imageName: (args?.name as string) || config.project.appName,
|
|
30
41
|
tag: (args?.tag as string) || "latest",
|
|
@@ -45,6 +45,17 @@ export class DockerService {
|
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
+
/**
|
|
49
|
+
* Verifica se o Docker daemon está rodando
|
|
50
|
+
*/
|
|
51
|
+
async isDaemonRunning(): Promise<boolean> {
|
|
52
|
+
return new Promise((resolve) => {
|
|
53
|
+
const child = spawn("docker", ["info"], { shell: true });
|
|
54
|
+
child.on("close", (code) => resolve(code === 0));
|
|
55
|
+
child.on("error", () => resolve(false));
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
|
|
48
59
|
/**
|
|
49
60
|
* Gera Dockerfile para o projeto
|
|
50
61
|
*/
|