@wocker/ws 1.0.24 → 1.0.26
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/lib/AppModule.js +42 -0
- package/lib/env.d.ts +2 -3
- package/lib/env.js +12 -42
- package/lib/main.d.ts +2 -3
- package/lib/main.js +24 -26
- package/lib/makes/GithubClient.d.ts +24 -3
- package/lib/makes/GithubClient.js +20 -6
- package/lib/makes/Version.d.ts +22 -0
- package/lib/makes/Version.js +59 -0
- package/lib/makes/VersionRange.d.ts +6 -0
- package/lib/makes/VersionRange.js +18 -0
- package/lib/makes/VersionRule.d.ts +24 -0
- package/lib/makes/VersionRule.js +68 -0
- package/lib/makes/index.d.ts +2 -0
- package/lib/makes/index.js +2 -0
- package/lib/modules/core/index.d.ts +2 -0
- package/lib/modules/{app → core}/index.js +13 -19
- package/lib/modules/dns/controllers/DnsController.d.ts +7 -0
- package/lib/modules/dns/controllers/DnsController.js +47 -0
- package/lib/modules/dns/index.d.ts +4 -0
- package/lib/modules/dns/index.js +41 -0
- package/lib/modules/dns/services/DnsService.d.ts +10 -0
- package/lib/modules/dns/services/DnsService.js +77 -0
- package/lib/modules/docker/index.d.ts +2 -1
- package/lib/modules/docker/index.js +5 -1
- package/lib/modules/docker/services/ComposeService.d.ts +32 -0
- package/lib/modules/docker/services/ComposeService.js +127 -0
- package/lib/modules/docker/services/ContainerService.d.ts +1 -1
- package/lib/modules/docker/services/DockerService.js +2 -25
- package/lib/modules/docker/services/ImageService.d.ts +2 -8
- package/lib/modules/docker/services/ImageService.js +15 -3
- package/lib/modules/docker/services/ModemService.d.ts +3 -3
- package/lib/modules/docker/services/ModemService.js +24 -6
- package/lib/modules/docker/services/ProtoService.js +2 -2
- package/lib/modules/docker/type/ComposeConfig.d.ts +12 -0
- package/lib/modules/index.d.ts +4 -1
- package/lib/modules/index.js +4 -1
- package/lib/modules/keystore/controllers/KeystoreController.d.ts +0 -3
- package/lib/modules/keystore/controllers/KeystoreController.js +3 -54
- package/lib/modules/keystore/services/KeystoreService.d.ts +3 -3
- package/lib/modules/keystore/services/KeystoreService.js +6 -4
- package/lib/modules/keystore/utils/createEncryptionKey.d.ts +1 -1
- package/lib/modules/package-manager/index.d.ts +5 -0
- package/lib/modules/package-manager/index.js +33 -0
- package/lib/modules/package-manager/providers/NpmProvider.d.ts +7 -0
- package/lib/modules/package-manager/providers/NpmProvider.js +39 -0
- package/lib/modules/package-manager/providers/PnpmProvider.d.ts +7 -0
- package/lib/modules/package-manager/providers/PnpmProvider.js +30 -0
- package/lib/modules/package-manager/providers/YarnProvider.d.ts +7 -0
- package/lib/modules/package-manager/providers/YarnProvider.js +29 -0
- package/lib/modules/package-manager/service/PackageManager.d.ts +10 -0
- package/lib/modules/package-manager/service/PackageManager.js +70 -0
- package/lib/modules/package-manager/service/RegistryService.d.ts +4 -0
- package/lib/{services/NpmService.js → modules/package-manager/service/RegistryService.js} +6 -11
- package/lib/modules/package-manager/types/Package.d.ts +4 -0
- package/lib/modules/package-manager/types/Package.js +2 -0
- package/lib/modules/package-manager/types/PackageInfo.js +2 -0
- package/lib/modules/package-manager/types/PackageManagerProvider.d.ts +6 -0
- package/lib/modules/package-manager/types/PackageManagerProvider.js +6 -0
- package/lib/{controllers → modules/plugin/controllers}/PluginController.d.ts +2 -2
- package/lib/{controllers → modules/plugin/controllers}/PluginController.js +21 -20
- package/lib/modules/plugin/index.d.ts +4 -0
- package/lib/modules/plugin/index.js +67 -0
- package/lib/{services → modules/plugin/services}/PluginService.d.ts +7 -5
- package/lib/{services → modules/plugin/services}/PluginService.js +38 -40
- package/lib/modules/preset/controllers/PresetController.d.ts +1 -1
- package/lib/modules/preset/controllers/PresetController.js +14 -7
- package/lib/modules/preset/controllers/PresetListener.d.ts +3 -2
- package/lib/modules/preset/controllers/PresetListener.js +6 -3
- package/lib/modules/preset/services/PresetService.d.ts +2 -1
- package/lib/modules/preset/services/PresetService.js +84 -15
- package/lib/modules/project/controllers/ProjectController.d.ts +38 -2
- package/lib/modules/project/controllers/ProjectController.js +848 -2
- package/lib/modules/project/controllers/SecretsController.d.ts +8 -0
- package/lib/modules/project/controllers/SecretsController.js +72 -0
- package/lib/modules/project/index.js +5 -1
- package/lib/modules/project/repositories/ProjectRepository.d.ts +3 -6
- package/lib/modules/project/repositories/ProjectRepository.js +9 -28
- package/lib/modules/project/services/ProjectService.d.ts +10 -4
- package/lib/modules/project/services/ProjectService.js +103 -8
- package/lib/modules/proxy/controllers/ProxyController.d.ts +1 -2
- package/lib/modules/proxy/controllers/ProxyController.js +1 -2
- package/lib/modules/proxy/services/CertService.js +1 -1
- package/lib/modules/proxy/services/ProxyService.d.ts +1 -0
- package/lib/modules/proxy/services/ProxyService.js +9 -4
- package/lib/utils/exec.js +4 -1
- package/lib/utils/get-cursor-position.js +1 -1
- package/lib/utils/index.d.ts +0 -1
- package/lib/utils/index.js +0 -1
- package/package.json +15 -15
- package/plugins/dns/Dockerfile +35 -0
- package/plugins/dns/app/Procfile +2 -0
- package/plugins/dns/app/dnsmasq.conf.tmpl +11 -0
- package/plugins/dns/app/dnsmasq.sh +28 -0
- package/plugins/proxy/Dockerfile +0 -2
- package/bin/ws.js +0 -6
- package/lib/RootModule.d.ts +0 -6
- package/lib/RootModule.js +0 -93
- package/lib/controllers/ProjectController.d.ts +0 -45
- package/lib/controllers/ProjectController.js +0 -972
- package/lib/controllers/index.d.ts +0 -5
- package/lib/controllers/index.js +0 -21
- package/lib/services/NpmService.d.ts +0 -5
- package/lib/types/index.d.ts +0 -1
- package/lib/types/index.js +0 -17
- package/lib/utils/followProgress2.d.ts +0 -1
- package/lib/utils/followProgress2.js +0 -63
- /package/lib/{modules/app/index.d.ts → AppModule.d.ts} +0 -0
- /package/lib/{controllers → modules/core/controllers}/CompletionController.d.ts +0 -0
- /package/lib/{controllers → modules/core/controllers}/CompletionController.js +0 -0
- /package/lib/{controllers → modules/core/controllers}/DebugController.d.ts +0 -0
- /package/lib/{controllers → modules/core/controllers}/DebugController.js +0 -0
- /package/lib/{controllers → modules/core/controllers}/ExperimentalController.d.ts +0 -0
- /package/lib/{controllers → modules/core/controllers}/ExperimentalController.js +0 -0
- /package/lib/{types/PackageInfo.js → modules/docker/type/ComposeConfig.js} +0 -0
- /package/lib/{types → modules/package-manager/types}/PackageInfo.d.ts +0 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
FROM docker.io/nginxproxy/docker-gen:0.15.0 AS docker-gen
|
|
2
|
+
|
|
3
|
+
FROM docker.io/nginxproxy/forego:0.18.3 AS forego
|
|
4
|
+
|
|
5
|
+
FROM alpine:edge
|
|
6
|
+
|
|
7
|
+
RUN set -eu && \
|
|
8
|
+
apk --no-cache add \
|
|
9
|
+
tini \
|
|
10
|
+
bash \
|
|
11
|
+
dnsmasq-dnssec && \
|
|
12
|
+
mkdir -p /etc/default/ && \
|
|
13
|
+
echo -e "ENABLED=1\nIGNORE_RESOLVCONF=yes" > /etc/default/dnsmasq && \
|
|
14
|
+
# rm -f /etc/dnsmasq.conf && \
|
|
15
|
+
rm -rf /tmp/* /var/cache/apk/*
|
|
16
|
+
|
|
17
|
+
#COPY ./dnsmasq.conf.tmpl /app/dnsmasq.conf.tmpl
|
|
18
|
+
#COPY ./Procfile /app/Procfile
|
|
19
|
+
|
|
20
|
+
#RUN wget https://github.com/jwilder/docker-gen/releases/download/0.3.3/docker-gen-linux-amd64-0.3.3.tar.gz && \
|
|
21
|
+
# tar xvzf docker-gen-linux-amd64-0.3.3.tar.gz && \
|
|
22
|
+
# rm docker-gen-linux-amd64-0.3.3.tar.gz && \
|
|
23
|
+
# mv docker-gen /usr/local/bin/
|
|
24
|
+
|
|
25
|
+
# Install Forego + docker-gen
|
|
26
|
+
COPY --from=forego /usr/local/bin/forego /usr/local/bin/forego
|
|
27
|
+
COPY --from=docker-gen /usr/local/bin/docker-gen /usr/local/bin/docker-gen
|
|
28
|
+
|
|
29
|
+
COPY app /app/
|
|
30
|
+
RUN chmod 755 /app/dnsmasq.sh
|
|
31
|
+
|
|
32
|
+
WORKDIR /app/
|
|
33
|
+
|
|
34
|
+
#ENTRYPOINT ["/sbin/tini", "--", "honcho", "-f", "/app/Procfile", "start"]
|
|
35
|
+
CMD ["forego", "start", "-r"]
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{{- $globals := dict }}
|
|
2
|
+
{{- $_ := set $globals "containers" $ }}
|
|
3
|
+
|
|
4
|
+
{{- range $hostname, $containers := groupByMulti $globals.containers "Env.VIRTUAL_HOST" "," }}
|
|
5
|
+
{{ $hostname }}
|
|
6
|
+
|
|
7
|
+
{{- range $container := $containers }}
|
|
8
|
+
{{ printf "%#v" $container.Networks }}
|
|
9
|
+
{{- end }}
|
|
10
|
+
{{- end }}
|
|
11
|
+
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -Eeuo pipefail
|
|
3
|
+
|
|
4
|
+
conf="/etc/dnsmasq.conf"
|
|
5
|
+
|
|
6
|
+
# Check if config file is not a directory
|
|
7
|
+
if [ -d "$conf" ]; then
|
|
8
|
+
echo "The bind $conf maps to a file that does not exist!"
|
|
9
|
+
exit 1
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
if [ ! -f "$conf" ]; then
|
|
13
|
+
conf="/etc/dnsmasq.custom"
|
|
14
|
+
template="/etc/dnsmasq.default"
|
|
15
|
+
|
|
16
|
+
if [ ! -f "$template" ]; then
|
|
17
|
+
echo "Your /etc directory does not contain a valid dnsmasq.conf file!"
|
|
18
|
+
exit 1
|
|
19
|
+
fi
|
|
20
|
+
|
|
21
|
+
rm -f "$conf"
|
|
22
|
+
cp "$template" "$conf"
|
|
23
|
+
|
|
24
|
+
[ -n "$DNS1" ] && sed -i -e "s/1.0.0.1/$DNS1/g" "$conf"
|
|
25
|
+
[ -n "$DNS2" ] && sed -i -e "s/1.1.1.1/$DNS2/g" "$conf"
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
exec dnsmasq "--conf-file=$conf" --no-daemon --no-resolv
|
package/plugins/proxy/Dockerfile
CHANGED
package/bin/ws.js
DELETED
package/lib/RootModule.d.ts
DELETED
package/lib/RootModule.js
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var RootModule_1;
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.RootModule = void 0;
|
|
11
|
-
const core_1 = require("@wocker/core");
|
|
12
|
-
const controllers_1 = require("./controllers");
|
|
13
|
-
const PluginService_1 = require("./services/PluginService");
|
|
14
|
-
const NpmService_1 = require("./services/NpmService");
|
|
15
|
-
const modules_1 = require("./modules");
|
|
16
|
-
let RootModule = RootModule_1 = class RootModule {
|
|
17
|
-
async load(container) {
|
|
18
|
-
const appModule = container.getModule(RootModule_1), fs = appModule.get(core_1.AppFileSystemService), appConfigService = appModule.get(core_1.AppConfigService), logService = appModule.get(core_1.LogService), pluginService = appModule.get(PluginService_1.PluginService);
|
|
19
|
-
const imports = [];
|
|
20
|
-
for (const pluginData of appConfigService.plugins || []) {
|
|
21
|
-
try {
|
|
22
|
-
const plugin = await pluginService.import(pluginData.name);
|
|
23
|
-
Reflect.defineMetadata(core_1.MODULE_METADATA.PROVIDERS, [
|
|
24
|
-
...Reflect.getMetadata(core_1.MODULE_METADATA.PROVIDERS, plugin.type) || [],
|
|
25
|
-
{
|
|
26
|
-
provide: core_1.PLUGIN_DIR_KEY,
|
|
27
|
-
useValue: fs.path("plugins", plugin.name)
|
|
28
|
-
}
|
|
29
|
-
], plugin.type);
|
|
30
|
-
imports.push(plugin.type);
|
|
31
|
-
}
|
|
32
|
-
catch (err) {
|
|
33
|
-
logService.error(err.message);
|
|
34
|
-
appConfigService.removePlugin(pluginData.name);
|
|
35
|
-
appConfigService.save();
|
|
36
|
-
throw err;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return {
|
|
40
|
-
imports
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
};
|
|
44
|
-
exports.RootModule = RootModule;
|
|
45
|
-
exports.RootModule = RootModule = RootModule_1 = __decorate([
|
|
46
|
-
(0, core_1.Global)(),
|
|
47
|
-
(0, core_1.Module)({
|
|
48
|
-
imports: [
|
|
49
|
-
modules_1.AppModule,
|
|
50
|
-
modules_1.ProjectModule,
|
|
51
|
-
modules_1.PresetModule,
|
|
52
|
-
modules_1.DockerModule,
|
|
53
|
-
modules_1.KeystoreModule,
|
|
54
|
-
modules_1.ProxyModule
|
|
55
|
-
],
|
|
56
|
-
controllers: [
|
|
57
|
-
controllers_1.CompletionController,
|
|
58
|
-
controllers_1.ProjectController,
|
|
59
|
-
controllers_1.PluginController,
|
|
60
|
-
controllers_1.ExperimentalController,
|
|
61
|
-
controllers_1.DebugController
|
|
62
|
-
],
|
|
63
|
-
providers: [
|
|
64
|
-
core_1.AppService,
|
|
65
|
-
core_1.AppFileSystemService,
|
|
66
|
-
core_1.AppConfigService,
|
|
67
|
-
core_1.EventService,
|
|
68
|
-
core_1.LogService,
|
|
69
|
-
NpmService_1.NpmService,
|
|
70
|
-
PluginService_1.PluginService,
|
|
71
|
-
core_1.ProcessService
|
|
72
|
-
],
|
|
73
|
-
exports: [
|
|
74
|
-
core_1.WOCKER_VERSION_KEY,
|
|
75
|
-
core_1.WOCKER_DATA_DIR_KEY,
|
|
76
|
-
core_1.AppService,
|
|
77
|
-
core_1.AppFileSystemService,
|
|
78
|
-
core_1.AppConfigService,
|
|
79
|
-
core_1.EventService,
|
|
80
|
-
core_1.LogService,
|
|
81
|
-
modules_1.DockerService,
|
|
82
|
-
modules_1.CertService,
|
|
83
|
-
modules_1.ContainerService,
|
|
84
|
-
modules_1.ImageService,
|
|
85
|
-
modules_1.ProxyService,
|
|
86
|
-
modules_1.KeystoreService,
|
|
87
|
-
modules_1.PresetRepository,
|
|
88
|
-
modules_1.PresetService,
|
|
89
|
-
modules_1.ProjectService,
|
|
90
|
-
core_1.ProcessService
|
|
91
|
-
]
|
|
92
|
-
})
|
|
93
|
-
], RootModule);
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { ProjectType, AppConfigService, EventService, LogService, ProcessService } from "@wocker/core";
|
|
2
|
-
import { DockerService } from "../modules/docker";
|
|
3
|
-
import { ProjectService, ProjectRepository } from "../modules/project";
|
|
4
|
-
export declare class ProjectController {
|
|
5
|
-
protected readonly appConfigService: AppConfigService;
|
|
6
|
-
protected readonly processService: ProcessService;
|
|
7
|
-
protected readonly eventService: EventService;
|
|
8
|
-
protected readonly projectService: ProjectService;
|
|
9
|
-
protected readonly projectRepository: ProjectRepository;
|
|
10
|
-
protected readonly logService: LogService;
|
|
11
|
-
protected readonly dockerService: DockerService;
|
|
12
|
-
constructor(appConfigService: AppConfigService, processService: ProcessService, eventService: EventService, projectService: ProjectService, projectRepository: ProjectRepository, logService: LogService, dockerService: DockerService);
|
|
13
|
-
protected getProjectNames(): Promise<string[]>;
|
|
14
|
-
getScriptNames(): Promise<string[]>;
|
|
15
|
-
init(name: string, type: ProjectType): Promise<void>;
|
|
16
|
-
destroy(name?: string): Promise<void>;
|
|
17
|
-
projectList(all: boolean): Promise<string>;
|
|
18
|
-
domains(name?: string): Promise<string>;
|
|
19
|
-
addDomain(addDomains: string[], name: string): Promise<void>;
|
|
20
|
-
setDomains(domains: string[], name: string): Promise<void>;
|
|
21
|
-
removeDomain(removeDomains: string[], name: string): Promise<void>;
|
|
22
|
-
clearDomain(name?: string): Promise<void>;
|
|
23
|
-
ports(name?: string): Promise<string>;
|
|
24
|
-
addPort(hostPort: string, containerPort: string, name?: string): Promise<void>;
|
|
25
|
-
removePort(hostPort: string, containerPort: string, name?: string): Promise<void>;
|
|
26
|
-
clearPorts(name?: string): Promise<void>;
|
|
27
|
-
configList(name?: string, global?: boolean): Promise<string>;
|
|
28
|
-
configGet(keys: string[], name: string, global: boolean): Promise<string>;
|
|
29
|
-
configSet(variables: string[], name: string, global: boolean): Promise<void>;
|
|
30
|
-
configUnset(configs: string[], name?: string, global?: boolean): Promise<void>;
|
|
31
|
-
buildArgsList(name?: string): Promise<string>;
|
|
32
|
-
buildArgsGet(args: string[], name?: string): Promise<string>;
|
|
33
|
-
buildArgsSet(args: string[], name: string): Promise<void>;
|
|
34
|
-
buildArgsUnset(args: string[], name: string): Promise<void>;
|
|
35
|
-
volumeList(name?: string): Promise<string>;
|
|
36
|
-
volumeMount(volumes: string[], name: string): Promise<void>;
|
|
37
|
-
volumeUnmount(volumes: string[], name: string): Promise<void>;
|
|
38
|
-
extraHostList(name?: string): Promise<string>;
|
|
39
|
-
addExtraHost(extraHost: string, extraDomain: string, name?: string): Promise<void>;
|
|
40
|
-
removeExtraHost(extraHost: string, name?: string): Promise<void>;
|
|
41
|
-
attach(name?: string): Promise<void>;
|
|
42
|
-
exec(command?: string[], name?: string): Promise<void>;
|
|
43
|
-
run(script: string, args?: string[], name?: string): Promise<void>;
|
|
44
|
-
logs(name?: string, global?: boolean, detach?: boolean, follow?: boolean, clear?: boolean): Promise<void>;
|
|
45
|
-
}
|