underpost 3.2.80 → 3.2.90
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/CHANGELOG.md +182 -1
- package/CLI-HELP.md +37 -16
- package/README.md +2 -2
- package/bin/deploy.js +18 -16
- package/docker-compose.yml +1 -1
- package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +1 -1
- package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +1 -1
- package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
- package/manifests/deployment/playwright/deployment.yaml +1 -1
- package/manifests/mongodb/kustomization.yaml +4 -1
- package/manifests/mongodb/statefulset.yaml +4 -0
- package/manifests/mongodb/storage-class.yaml +9 -2
- package/package.json +17 -17
- package/scripts/nat-iptables.sh +10 -4
- package/scripts/test-monitor.sh +4 -3
- package/src/cli/cluster.js +740 -55
- package/src/cli/db.js +2 -2
- package/src/cli/deploy.js +1679 -174
- package/src/cli/docker-compose.js +19 -178
- package/src/cli/image.js +15 -6
- package/src/cli/index.js +124 -35
- package/src/cli/ipfs.js +82 -11
- package/src/cli/monitor.js +1 -1
- package/src/cli/repository.js +1 -1
- package/src/cli/run.js +2161 -420
- package/src/cli/secrets.js +969 -0
- package/src/cli/ssh.js +8 -28
- package/src/client-builder/client-build.js +94 -11
- package/src/client-builder/ssr.js +27 -73
- package/src/db/mongo/MongoBootstrap.js +295 -54
- package/src/db/mongo/MongooseDB.js +47 -32
- package/src/index.js +1 -1
- package/src/server/conf.js +1208 -70
- package/src/server/cri.js +70 -0
- package/src/server/underpost-gateway.js +1073 -0
- package/src/server/underpost-ingress.js +364 -0
- package/test/cluster-instances.test.js +435 -0
- package/test/deploy-node-placement.test.js +45 -0
- package/test/instance-traffic-plan.test.js +710 -0
- package/test/sops-secret-store.test.js +612 -0
- package/test/underpost-gateway.test.js +469 -0
- package/test/underpost-ingress.test.js +253 -0
package/scripts/nat-iptables.sh
CHANGED
|
@@ -32,6 +32,12 @@ sudo firewall-cmd --permanent --zone=public --add-service=ssh
|
|
|
32
32
|
sudo firewall-cmd --permanent --zone=public --add-service=http
|
|
33
33
|
sudo firewall-cmd --permanent --zone=public --add-service=https
|
|
34
34
|
|
|
35
|
+
# QUIC / HTTP3. The `https` service above covers TCP 443 only, so without this
|
|
36
|
+
# an HTTP/3 gateway advertises `Alt-Svc: h3=":443"` and every client that acts
|
|
37
|
+
# on it silently fails over UDP while HTTP/2 keeps working.
|
|
38
|
+
sudo firewall-cmd --permanent --zone=public --add-port=443/udp
|
|
39
|
+
sudo firewall-cmd --permanent --zone=public --add-port=80/udp
|
|
40
|
+
|
|
35
41
|
echo "[INFO] Opening Kubernetes control plane ports..."
|
|
36
42
|
|
|
37
43
|
# Kubernetes API Server
|
|
@@ -98,10 +104,10 @@ sudo firewall-cmd --reload
|
|
|
98
104
|
echo
|
|
99
105
|
echo "[INFO] Sysctl status:"
|
|
100
106
|
sudo sysctl \
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
107
|
+
net.ipv4.ip_forward \
|
|
108
|
+
net.ipv6.conf.all.forwarding \
|
|
109
|
+
net.bridge.bridge-nf-call-iptables \
|
|
110
|
+
net.bridge.bridge-nf-call-ip6tables
|
|
105
111
|
|
|
106
112
|
echo
|
|
107
113
|
echo "[INFO] Firewall status:"
|
package/scripts/test-monitor.sh
CHANGED
|
@@ -24,7 +24,7 @@ MODE=runtime # runtime | instance
|
|
|
24
24
|
ENV=development # development | production
|
|
25
25
|
DEPLOY_ID=dd-test # deploy id (instance mode: parent of conf.instances.json)
|
|
26
26
|
INSTANCE_IDS= # instance mode: csv of ids (default: all in conf.instances.json)
|
|
27
|
-
IMAGE=underpost/wp:v3.2.
|
|
27
|
+
IMAGE=underpost/wp:v3.2.90 # runtime mode image (instance mode reads image from conf)
|
|
28
28
|
VERSIONS=green # csv of blue/green versions
|
|
29
29
|
REPLICAS=1 # replicas per deployment
|
|
30
30
|
NAMESPACE=default # k8s namespace
|
|
@@ -202,7 +202,8 @@ run_runtime_mode() {
|
|
|
202
202
|
setup_tls_secrets $(hosts_from "$SERVER_CONF")
|
|
203
203
|
expose_flags="--tls"
|
|
204
204
|
fi
|
|
205
|
-
[ "$DO_EXPOSE" = true ] && node bin
|
|
205
|
+
[ "$DO_EXPOSE" = true ] && node bin run expose "${DEPLOY_ID}-${ENV}-traffic-service" --namespace "$NAMESPACE" \
|
|
206
|
+
--local-proxy $DEV_FLAG $CLUSTER_FLAG $expose_flags
|
|
206
207
|
}
|
|
207
208
|
|
|
208
209
|
# ─────────────────────────── instance mode ───────────────────────────
|
|
@@ -234,7 +235,7 @@ run_instance_mode() {
|
|
|
234
235
|
# Plain HTTP: port-forward each instance service port directly.
|
|
235
236
|
for id in "${ids[@]}"; do
|
|
236
237
|
[ -n "$id" ] || continue
|
|
237
|
-
node bin
|
|
238
|
+
node bin run expose "${DEPLOY_ID}-${id}-${ENV}-traffic-service" --namespace "$NAMESPACE" $CLUSTER_FLAG || true
|
|
238
239
|
done
|
|
239
240
|
fi
|
|
240
241
|
}
|