@underpostnet/cyberia 3.2.90 → 3.3.0
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/.env.example +16 -0
- package/.github/workflows/coverall.cyberia.ci.yml +87 -0
- package/.github/workflows/cyberia-client.cd.yml +1 -18
- package/.github/workflows/cyberia-server.cd.yml +1 -18
- package/.github/workflows/docker-image.cyberia-client.ci.yml +1 -1
- package/.github/workflows/docker-image.cyberia-client.dev.ci.yml +1 -1
- package/.github/workflows/docker-image.cyberia-server.ci.yml +1 -1
- package/.github/workflows/docker-image.cyberia-server.dev.ci.yml +1 -1
- package/.github/workflows/docker-image.engine-cyberia.ci.yml +1 -1
- package/.github/workflows/docker-image.engine-cyberia.dev.ci.yml +1 -1
- package/.github/workflows/engine-cyberia.cd.yml +3 -78
- package/.github/workflows/ghpkg.ci.yml +7 -1
- package/.github/workflows/pwa-microservices-template-page.cd.yml +1 -16
- package/.github/workflows/pwa-microservices-template-test.ci.yml +1 -1
- package/.github/workflows/release.cd.yml +1 -9
- package/CHANGELOG.md +110 -1
- package/CLI-HELP.md +139 -9
- package/Dockerfile +1 -1
- package/Dockerfile.dev +1 -1
- package/Dockerfile.test +1 -1
- package/bin/build.js +7 -5
- package/bin/cyberia.js +73 -53
- package/bin/deploy.js +1 -1
- package/bin/index.js +73 -53
- package/compose.env +16 -0
- package/conf.js +2 -0
- package/deploy/dd-cyberia/deploy.sh +42 -0
- package/deploy/dd-cyberia/init.sh +63 -0
- package/deploy/dd-cyberia/sync-deploy.sh +194 -0
- package/deploy/lib/logging.sh +96 -0
- package/deploy/pwa-microservices-template/deploy.sh +72 -0
- package/deploy/release/deploy.sh +62 -0
- package/deployment.yaml +1 -1
- package/docker-compose.yml +31 -37
- package/hardhat/package-lock.json +9 -9
- package/hardhat/package.json +3 -3
- package/manifests/cronjobs/dd-cron/dd-cron-backup.yaml +5 -1
- package/manifests/cronjobs/dd-cron/dd-cron-dns.yaml +1 -1
- package/manifests/cronjobs/dd-cron/dd-cron-vultr.yaml +52 -0
- package/manifests/deployment/dd-cyberia-development/deployment.yaml +1 -1
- package/manifests/deployment/dd-default-development/deployment.yaml +2 -2
- package/package.json +2 -2
- package/scripts/audit-selinux.sh +64 -0
- package/scripts/coverall-test-cyberia.sh +24 -0
- package/scripts/coverall-test.sh +24 -0
- package/scripts/gpu-diag.sh +0 -0
- package/scripts/ip-info.sh +0 -0
- package/scripts/k3s-node-setup.sh +18 -15
- package/scripts/kubeadm-node-setup.sh +12 -23
- package/scripts/link-local-underpost-cli.sh +0 -0
- package/scripts/lxd-vm-setup.sh +0 -0
- package/scripts/maas-nat-firewalld.sh +0 -0
- package/scripts/nat-iptables.sh +2 -0
- package/scripts/rhel-grpc-setup.sh +0 -0
- package/scripts/rocky-kickstart.sh +25 -9
- package/scripts/test-monitor.sh +1 -1
- package/src/api/cyberia-instance/cyberia-fallback-default-items.js +63 -0
- package/src/api/cyberia-instance/cyberia-fallback-world.js +8 -1
- package/src/api/cyberia-instance/cyberia-instance.controller.js +3 -0
- package/src/api/cyberia-instance/cyberia-instance.router.js +13 -0
- package/src/api/cyberia-instance/cyberia-instance.service.js +43 -0
- package/src/api/cyberia-instance-conf/cyberia-instance-conf.model.js +1 -0
- package/src/api/cyberia-server-defaults/cyberia-server-defaults.js +16 -3
- package/src/api/object-layer/object-layer.model.js +204 -3
- package/src/api/object-layer/object-layer.service.js +1 -14
- package/src/cli/baremetal.js +1 -2
- package/src/cli/cloud-init.js +1 -1
- package/src/cli/cluster.js +73 -68
- package/src/cli/db.js +9 -2
- package/src/cli/deploy.js +21 -5
- package/src/cli/docker-compose.js +1 -1
- package/src/cli/env.js +1 -1
- package/src/cli/image.js +0 -1
- package/src/cli/index.js +121 -9
- package/src/cli/lxd.js +1 -1
- package/src/cli/monitor.js +1 -1
- package/src/cli/release.js +57 -22
- package/src/cli/repository.js +11 -9
- package/src/cli/run.js +36 -9
- package/src/cli/ssh.js +198 -77
- package/src/cli/system.js +26 -13
- package/src/cli/test.js +1 -1
- package/src/cli/vultr.js +583 -0
- package/src/cli/wireguard.js +2125 -0
- package/src/client/components/cyberia/FallbackWorldEngineCyberia.js +368 -0
- package/src/client/components/cyberia-portal/AppShellCyberiaPortal.js +33 -0
- package/src/client/components/cyberia-portal/RouterCyberiaPortal.js +4 -0
- package/src/client/components/cyberia-portal/TranslateCyberiaPortal.js +4 -0
- package/src/client/public/cyberia-docs/ARCHITECTURE.md +17 -3
- package/src/client/public/cyberia-docs/CYBERIA-SERVER.md +1 -1
- package/src/client/public/cyberia-docs/ROADMAP.md +1 -1
- package/src/client/public/cyberia-docs/WHITE-PAPER.md +1 -1
- package/src/client/services/cyberia-instance/cyberia-instance.service.js +40 -0
- package/src/client/services/object-layer/object-layer.management.js +4 -4
- package/src/client-builder/client-build.js +20 -14
- package/src/db/mongo/MongooseDB.js +4 -0
- package/src/index.js +25 -1
- package/src/projects/cyberia/catalog-cyberia.js +5 -0
- package/src/projects/cyberia/generate-saga.js +14 -23
- package/src/projects/cyberia/instance-data.js +21 -2
- package/src/projects/cyberia/object-layer.js +11 -21
- package/src/projects/underpost/catalog-underpost.js +4 -1
- package/src/runtime/cyberia-client/Dockerfile +1 -1
- package/src/runtime/cyberia-client/Dockerfile.dev +1 -1
- package/src/runtime/cyberia-server/Dockerfile +1 -1
- package/src/runtime/cyberia-server/Dockerfile.dev +1 -1
- package/src/runtime/engine-cyberia/Dockerfile +1 -1
- package/src/runtime/engine-cyberia/Dockerfile.dev +1 -1
- package/src/runtime/engine-cyberia/Dockerfile.test +1 -1
- package/src/runtime/engine-cyberia/compose.env +16 -0
- package/src/runtime/engine-cyberia/docker-compose.yml +31 -37
- package/src/server/backup.js +1 -1
- package/src/server/conf.js +18 -108
- package/src/server/cron.js +249 -51
- package/src/server/dns.js +100 -6
- package/src/server/environment.js +98 -0
- package/src/server/forward-proxy.js +549 -0
- package/src/server/middlewares.js +56 -1
- package/src/server/process.js +0 -1
- package/src/server/selinux.js +185 -0
- package/src/server/systemd.js +205 -0
- package/src/server/underpost-compression.js +186 -0
- package/src/server/underpost-gateway.js +20 -10
- package/src/server/underpost-ingress.js +18 -2
- package/test/cyberia-instance-conf-defaults.test.js +1 -0
- package/test/selinux.test.js +71 -0
- package/test/underpost-gateway.test.js +41 -0
- package/test/underpost-ingress.test.js +52 -0
- package/test/wireguard-edge.test.js +1177 -0
package/.env.example
CHANGED
|
@@ -70,6 +70,22 @@ CYBERIA_DEFAULT_INSTANCE=amethyst-strata-expansion
|
|
|
70
70
|
CYBERIA_SERVER_APP_ENV=development
|
|
71
71
|
CYBERIA_SERVER_LOG_LEVEL=
|
|
72
72
|
|
|
73
|
+
# --- cyberia-server WebSocket admission and rate limits ----------------------
|
|
74
|
+
# Unset keeps the built-in default. An explicit 0 turns that one limit off.
|
|
75
|
+
# The startup log prints the effective profile ("ws limits: ...").
|
|
76
|
+
#
|
|
77
|
+
# Set CYBERIA_DISABLE_CONNECTION_LIMITS=1 to turn every limit off. The load test
|
|
78
|
+
# (test/cyberia-load.test.js) drives every simulated client from one address, so
|
|
79
|
+
# it needs this. NEVER enable it on a public deploy.
|
|
80
|
+
CYBERIA_DISABLE_CONNECTION_LIMITS=
|
|
81
|
+
CYBERIA_MAX_CONNECTIONS=
|
|
82
|
+
CYBERIA_MAX_CONNECTIONS_PER_IP=
|
|
83
|
+
CYBERIA_CONNECT_RATE_PER_IP=
|
|
84
|
+
CYBERIA_CONNECT_BURST_PER_IP=
|
|
85
|
+
CYBERIA_MESSAGE_RATE=
|
|
86
|
+
CYBERIA_MESSAGE_BURST=
|
|
87
|
+
CYBERIA_MAX_STRIKES=
|
|
88
|
+
|
|
73
89
|
# --- engine-cyberia runtime env (loaded into the container via env_file) -----
|
|
74
90
|
# The dd-cyberia engine (engine-private/conf/dd-cyberia/conf.server.json) needs
|
|
75
91
|
# these to boot: DB auth + per-site DB names, the base PORT (the cyberia host is
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
name: CI | Coverall Cyberia
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: ['master', 'main']
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: ['master', 'main']
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
name: Coverall Cyberia Test
|
|
12
|
+
if: |
|
|
13
|
+
github.actor != 'dependabot[bot]' &&
|
|
14
|
+
(github.repository == 'underpostnet/engine' ||
|
|
15
|
+
github.repository == 'underpostnet/engine-cyberia' ||
|
|
16
|
+
github.repository == 'underpostnet/engine-ghpkg-cyberia')
|
|
17
|
+
runs-on: ubuntu-latest
|
|
18
|
+
container:
|
|
19
|
+
image: quay.io/rockylinux/rockylinux:9
|
|
20
|
+
steps:
|
|
21
|
+
- name: Clone repository
|
|
22
|
+
uses: actions/checkout@v7
|
|
23
|
+
|
|
24
|
+
- name: Install required packages
|
|
25
|
+
run: |
|
|
26
|
+
dnf install -y sudo tar gzip bzip2 git bash
|
|
27
|
+
dnf install -y curl --allowerasing
|
|
28
|
+
|
|
29
|
+
- name: Install Node.js
|
|
30
|
+
run: |
|
|
31
|
+
curl -fsSL https://rpm.nodesource.com/setup_24.x | bash -
|
|
32
|
+
dnf install nodejs -y
|
|
33
|
+
|
|
34
|
+
- name: Install project dependencies
|
|
35
|
+
run: npm install
|
|
36
|
+
|
|
37
|
+
- name: Run tests and generate coverage
|
|
38
|
+
run: scripts/coverall-test-cyberia.sh
|
|
39
|
+
|
|
40
|
+
- name: Store coverage report
|
|
41
|
+
uses: actions/upload-artifact@v4
|
|
42
|
+
with:
|
|
43
|
+
name: coverall-cyberia-lcov
|
|
44
|
+
path: ./coverage/lcov.info
|
|
45
|
+
if-no-files-found: error
|
|
46
|
+
|
|
47
|
+
upload:
|
|
48
|
+
name: Upload Cyberia Coverage to Coveralls
|
|
49
|
+
needs: test
|
|
50
|
+
if: |
|
|
51
|
+
github.actor != 'dependabot[bot]' &&
|
|
52
|
+
(github.repository == 'underpostnet/engine' ||
|
|
53
|
+
github.repository == 'underpostnet/engine-cyberia' ||
|
|
54
|
+
github.repository == 'underpostnet/engine-ghpkg-cyberia')
|
|
55
|
+
runs-on: ubuntu-latest
|
|
56
|
+
steps:
|
|
57
|
+
- name: Clone repository
|
|
58
|
+
uses: actions/checkout@v7
|
|
59
|
+
|
|
60
|
+
- name: Restore coverage report
|
|
61
|
+
uses: actions/download-artifact@v4
|
|
62
|
+
with:
|
|
63
|
+
name: coverall-cyberia-lcov
|
|
64
|
+
path: ./coverage
|
|
65
|
+
|
|
66
|
+
- name: Upload coverage to Coveralls
|
|
67
|
+
uses: coverallsapp/github-action@v2
|
|
68
|
+
with:
|
|
69
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
70
|
+
file: ./coverage/lcov.info
|
|
71
|
+
flag-name: cyberia
|
|
72
|
+
parallel: true
|
|
73
|
+
|
|
74
|
+
finish:
|
|
75
|
+
needs: upload
|
|
76
|
+
if: |
|
|
77
|
+
github.actor != 'dependabot[bot]' &&
|
|
78
|
+
(github.repository == 'underpostnet/engine' ||
|
|
79
|
+
github.repository == 'underpostnet/engine-cyberia' ||
|
|
80
|
+
github.repository == 'underpostnet/engine-ghpkg-cyberia')
|
|
81
|
+
runs-on: ubuntu-latest
|
|
82
|
+
steps:
|
|
83
|
+
- name: Notify Coveralls Finished
|
|
84
|
+
uses: coverallsapp/github-action@v2
|
|
85
|
+
with:
|
|
86
|
+
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
87
|
+
parallel-finished: true
|
|
@@ -32,21 +32,4 @@ jobs:
|
|
|
32
32
|
script: |
|
|
33
33
|
set -e
|
|
34
34
|
set -o pipefail
|
|
35
|
-
|
|
36
|
-
cd /home/dd/engine
|
|
37
|
-
TARGET_NODE=hp-envy-iso-ram-rocky9
|
|
38
|
-
INGRESS_NODE=localhost.localdomain
|
|
39
|
-
sudo -n -- /bin/bash -lc "node bin run pull"
|
|
40
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
41
|
-
sudo -n -- /bin/bash -lc "node bin/build dd-cyberia --conf"
|
|
42
|
-
sudo -n -- /bin/bash -lc "kubectl wait --for=condition=Ready node/${TARGET_NODE} --timeout=2m"
|
|
43
|
-
sudo -n -- /bin/bash -lc "kubectl rollout status deployment/underpost-ingress -n default --timeout=5m"
|
|
44
|
-
sudo -n -- /bin/bash -lc "kubectl rollout status deployment/underpost-gateway -n default --timeout=5m"
|
|
45
|
-
sudo -n -- /bin/bash -lc "node bin run instance \
|
|
46
|
-
--kubeadm \
|
|
47
|
-
--gateway-api \
|
|
48
|
-
--image-pull-policy Always \
|
|
49
|
-
--node-name ${TARGET_NODE} \
|
|
50
|
-
--ingress-node ${INGRESS_NODE} \
|
|
51
|
-
--ssh-key-path /home/dd/tmp/897as9dxhaskd9 \
|
|
52
|
-
'dd-cyberia,mmo-client'"
|
|
35
|
+
bash /home/dd/engine/deploy/cyberia-client/deploy.sh
|
|
@@ -32,21 +32,4 @@ jobs:
|
|
|
32
32
|
script: |
|
|
33
33
|
set -e
|
|
34
34
|
set -o pipefail
|
|
35
|
-
|
|
36
|
-
cd /home/dd/engine
|
|
37
|
-
TARGET_NODE=hp-envy-iso-ram-rocky9
|
|
38
|
-
INGRESS_NODE=localhost.localdomain
|
|
39
|
-
sudo -n -- /bin/bash -lc "node bin run pull"
|
|
40
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
41
|
-
sudo -n -- /bin/bash -lc "node bin/build dd-cyberia --conf"
|
|
42
|
-
sudo -n -- /bin/bash -lc "kubectl wait --for=condition=Ready node/${TARGET_NODE} --timeout=2m"
|
|
43
|
-
sudo -n -- /bin/bash -lc "kubectl rollout status deployment/underpost-ingress -n default --timeout=5m"
|
|
44
|
-
sudo -n -- /bin/bash -lc "kubectl rollout status deployment/underpost-gateway -n default --timeout=5m"
|
|
45
|
-
sudo -n -- /bin/bash -lc "node bin run instance \
|
|
46
|
-
--kubeadm \
|
|
47
|
-
--gateway-api \
|
|
48
|
-
--image-pull-policy Always \
|
|
49
|
-
--node-name ${TARGET_NODE} \
|
|
50
|
-
--ingress-node ${INGRESS_NODE} \
|
|
51
|
-
--ssh-key-path /home/dd/tmp/897as9dxhaskd9 \
|
|
52
|
-
'dd-cyberia,mmo-server'"
|
|
35
|
+
bash /home/dd/engine/deploy/cyberia-server/deploy.sh
|
|
@@ -40,13 +40,7 @@ jobs:
|
|
|
40
40
|
script: |
|
|
41
41
|
set -e
|
|
42
42
|
set -o pipefail
|
|
43
|
-
|
|
44
|
-
INGRESS_NODE=localhost.localdomain
|
|
45
|
-
cd /home/dd/engine
|
|
46
|
-
sudo -n -- /bin/bash -lc "node bin run pull"
|
|
47
|
-
sudo -n -- /bin/bash -lc "npm install"
|
|
48
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
49
|
-
sudo -n -- /bin/bash -lc "node bin run deploy dd-cyberia --gateway-api --ingress-node ${INGRESS_NODE}"
|
|
43
|
+
bash /home/dd/engine/deploy/dd-cyberia/deploy.sh
|
|
50
44
|
sync-and-deploy:
|
|
51
45
|
if: github.event.inputs.job == 'sync-and-deploy'
|
|
52
46
|
name: Remote SSH sync and deploy
|
|
@@ -71,67 +65,7 @@ jobs:
|
|
|
71
65
|
script: |
|
|
72
66
|
set -e
|
|
73
67
|
set -o pipefail
|
|
74
|
-
|
|
75
|
-
TARGET_NODE=localhost.localdomain
|
|
76
|
-
INGRESS_NODE=localhost.localdomain
|
|
77
|
-
cd /home/dd/engine
|
|
78
|
-
sudo -n -- /bin/bash -lc "node bin run pull"
|
|
79
|
-
sudo -n -- /bin/bash -lc "npm install"
|
|
80
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
81
|
-
sudo -n -- /bin/bash -lc "npm run test"
|
|
82
|
-
sudo -n -- /bin/bash -lc "node bin run clean src/client/public/cyberia"
|
|
83
|
-
sudo -n -- /bin/bash -lc "node bin run clean src/client/public/underpost"
|
|
84
|
-
sudo -n -- /bin/bash -lc "node bin cmt src/client/public/cyberia --init-repo"
|
|
85
|
-
sudo -n -- /bin/bash -lc "node bin cmt src/client/public/underpost --init-repo"
|
|
86
|
-
sudo -n -- /bin/bash -lc "node bin fs src/client/public/cyberia --pull --recursive --deploy-id dd-cyberia"
|
|
87
|
-
sudo -n -- /bin/bash -lc "node bin fs src/client/public/underpost --pull --recursive --deploy-id dd-cyberia --storage-file-path './engine-private/conf/dd-cyberia/storage.underpost.json'"
|
|
88
|
-
CHANGES_CYBERIA=$(sudo -n -- /bin/bash -lc "node bin cmt src/client/public/cyberia --has-changes" | tr -d '\n')
|
|
89
|
-
if [ "$CHANGES_CYBERIA" = "1" ]; then
|
|
90
|
-
sudo -n -- /bin/bash -lc "node bin cmt src/client/public/cyberia feat 'Update cyberia public assets'"
|
|
91
|
-
fi
|
|
92
|
-
CHANGES_UNDERPOST=$(sudo -n -- /bin/bash -lc "node bin cmt src/client/public/underpost --has-changes" | tr -d '\n')
|
|
93
|
-
if [ "$CHANGES_UNDERPOST" = "1" ]; then
|
|
94
|
-
sudo -n -- /bin/bash -lc "node bin cmt src/client/public/underpost feat 'Update underpost public assets'"
|
|
95
|
-
fi
|
|
96
|
-
sudo -n -- /bin/bash -lc "npm run fix"
|
|
97
|
-
sudo -n -- /bin/bash -lc "npm install"
|
|
98
|
-
sudo -n -- /bin/bash -lc "node bin/deploy cyberia"
|
|
99
|
-
sudo -n -- /bin/bash -lc "underpost run clean"
|
|
100
|
-
sudo -n -- /bin/bash -lc "node bin env dd-cyberia production"
|
|
101
|
-
sudo -n -- /bin/bash -lc "node bin/cyberia run-workflow build-manifest"
|
|
102
|
-
sudo -n -- /bin/bash -lc "node bin run sync 'dd-cyberia,1,,underpost/engine-cyberia:latest' \
|
|
103
|
-
--kubeadm \
|
|
104
|
-
--deploy-id-cron-jobs none \
|
|
105
|
-
--timeout-response 300000ms \
|
|
106
|
-
--node-name ${TARGET_NODE} \
|
|
107
|
-
--gateway-api \
|
|
108
|
-
--ingress-node ${INGRESS_NODE} \
|
|
109
|
-
--ssh-key-path /home/dd/tmp/897as9dxhaskd9 \
|
|
110
|
-
--image-pull-policy Always \
|
|
111
|
-
--cmd 'cd /home/dd/engine, \
|
|
112
|
-
underpost clone underpostnet/engine-cyberia, \
|
|
113
|
-
mkdir -p /home/dd/engine/src/client/public/itemledger \
|
|
114
|
-
/home/dd/engine/src/client/public/cryptokoyn \
|
|
115
|
-
/home/dd/engine/src/client/components/cryptokoyn \
|
|
116
|
-
/home/dd/engine/src/client/components/itemledger \
|
|
117
|
-
/home/dd/engine/hardhat, \
|
|
118
|
-
cp -a ./engine-cyberia/src/client/public/itemledger/. /home/dd/engine/src/client/public/itemledger/, \
|
|
119
|
-
cp -a ./engine-cyberia/src/client/public/cryptokoyn/. /home/dd/engine/src/client/public/cryptokoyn/, \
|
|
120
|
-
cp -a ./engine-cyberia/src/client/components/cryptokoyn/. /home/dd/engine/src/client/components/cryptokoyn/, \
|
|
121
|
-
cp -a ./engine-cyberia/src/client/components/itemledger/. /home/dd/engine/src/client/components/itemledger/, \
|
|
122
|
-
cp -a ./engine-cyberia/src/client/Itemledger.index.js /home/dd/engine/src/client/Itemledger.index.js, \
|
|
123
|
-
cp -a ./engine-cyberia/src/client/Cryptokoyn.index.js /home/dd/engine/src/client/Cryptokoyn.index.js, \
|
|
124
|
-
rm -rf ./engine-cyberia, \
|
|
125
|
-
sudo rm -rf ./engine-private/, \
|
|
126
|
-
node bin clone underpostnet/engine-cyberia-private, \
|
|
127
|
-
sudo mv ./engine-cyberia-private ./engine-private, \
|
|
128
|
-
node bin env dd-cyberia production, \
|
|
129
|
-
node ./engine-private/itc-scripts/dd-cyberia-0.js, \
|
|
130
|
-
sudo chown -R dd:dd /home/dd/engine/src/client/public/cyberia, \
|
|
131
|
-
node bin/cyberia run-workflow import-default-items, \
|
|
132
|
-
node bin env dd-cyberia production, \
|
|
133
|
-
node bin client dd-cyberia, \
|
|
134
|
-
node bin start dd-cyberia production --run'"
|
|
68
|
+
bash /home/dd/engine/deploy/dd-cyberia/sync-deploy.sh
|
|
135
69
|
init:
|
|
136
70
|
if: github.event.inputs.job == 'init'
|
|
137
71
|
name: Remote SSH init deployment
|
|
@@ -156,13 +90,4 @@ jobs:
|
|
|
156
90
|
script: |
|
|
157
91
|
set -e
|
|
158
92
|
set -o pipefail
|
|
159
|
-
|
|
160
|
-
INGRESS_NODE=localhost.localdomain
|
|
161
|
-
cd /home/dd/engine
|
|
162
|
-
sudo -n -- /bin/bash -lc "node bin run pull"
|
|
163
|
-
sudo -n -- /bin/bash -lc "npm install"
|
|
164
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
165
|
-
sudo -n -- /bin/bash -lc "node bin/build dd-cyberia --conf"
|
|
166
|
-
sudo -n -- /bin/bash -lc "node bin deploy dd-cyberia production --kubeadm --gateway-api --ingress-node ${INGRESS_NODE} --sync --build-manifest --timeout-response 300000ms --versions green --replicas 1"
|
|
167
|
-
sudo -n -- /bin/bash -lc "node bin deploy dd-cyberia production --kubeadm --gateway-api --ingress-node ${INGRESS_NODE} --disable-update-proxy --git-clean"
|
|
168
|
-
sudo -n -- /bin/bash -lc "node bin monitor dd-cyberia production --ready-deployment --promote --timeout-response 300000ms --versions green --replicas 1"
|
|
93
|
+
bash /home/dd/engine/deploy/dd-cyberia/init.sh
|
|
@@ -20,7 +20,13 @@ permissions:
|
|
|
20
20
|
id-token: write
|
|
21
21
|
jobs:
|
|
22
22
|
pwa-microservices-template-ghpk:
|
|
23
|
-
if:
|
|
23
|
+
if: >-
|
|
24
|
+
github.repository == 'underpostnet/pwa-microservices-template' &&
|
|
25
|
+
(
|
|
26
|
+
startsWith(github.event.head_commit.message, 'ci(package-pwa-microservices-template-ghpkg)')
|
|
27
|
+
||
|
|
28
|
+
github.event_name == 'workflow_dispatch'
|
|
29
|
+
)
|
|
24
30
|
name: Update github repo package Jobs
|
|
25
31
|
runs-on: ubuntu-latest
|
|
26
32
|
container:
|
|
@@ -32,23 +32,8 @@ jobs:
|
|
|
32
32
|
# - name: Checkout LFS objects
|
|
33
33
|
# run: git lfs checkout
|
|
34
34
|
|
|
35
|
-
- name: Install required packages
|
|
36
|
-
run: |
|
|
37
|
-
dnf install -y sudo tar gzip bzip2 git
|
|
38
|
-
dnf install -y curl --allowerasing
|
|
39
|
-
|
|
40
|
-
- name: Install Node.js
|
|
41
|
-
run: |
|
|
42
|
-
curl -fsSL https://rpm.nodesource.com/setup_24.x | bash -
|
|
43
|
-
dnf install nodejs -y
|
|
44
|
-
|
|
45
35
|
- name: Build the site
|
|
46
|
-
run:
|
|
47
|
-
npm install
|
|
48
|
-
node bin new --default-conf --conf-workflow-id dd-github-pages
|
|
49
|
-
node bin new --deploy-id dd-github-pages
|
|
50
|
-
node bin env dd-github-pages production
|
|
51
|
-
NODE_ENV=production node bin client dd-github-pages '' underpostnet.github.io /pwa-microservices-template-ghpkg
|
|
36
|
+
run: bash deploy/pwa-microservices-template/deploy.sh
|
|
52
37
|
# git lfs install
|
|
53
38
|
# git lfs track
|
|
54
39
|
# git lfs ls-files
|
|
@@ -35,12 +35,4 @@ jobs:
|
|
|
35
35
|
script: |
|
|
36
36
|
set -e
|
|
37
37
|
set -o pipefail
|
|
38
|
-
|
|
39
|
-
cd /home/dd/engine
|
|
40
|
-
sudo -n -- /bin/bash -lc "node bin run pull"
|
|
41
|
-
sudo -n -- /bin/bash -lc "npm install"
|
|
42
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
43
|
-
sudo -n -- /bin/bash -lc "npm install -g underpost"
|
|
44
|
-
sudo -n -- /bin/bash -lc "node bin run secret"
|
|
45
|
-
sudo -n -- /bin/bash -lc "node bin run --dev git-conf"
|
|
46
|
-
sudo -n -- /bin/bash -lc "node bin run docker-image"
|
|
38
|
+
bash /home/dd/engine/deploy/release/deploy.sh
|
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,115 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 2026-08-
|
|
3
|
+
## 2026-08-18
|
|
4
|
+
|
|
5
|
+
### github-actions
|
|
6
|
+
|
|
7
|
+
- Add workflow_dispatch trigger event handling in .github/workflows/ghpkg.ci.yml ([e21320cf](https://github.com/underpostnet/engine/commit/e21320cf7542680823758f331bd34d619ca185cd))
|
|
8
|
+
- Reorder coverall test list ([eb20336b](https://github.com/underpostnet/engine/commit/eb20336b29e87f4371528f78099768e8ee36b586))
|
|
9
|
+
- Replace default npm coverall test with scripts/coverall-test.sh ([3471f300](https://github.com/underpostnet/engine/commit/3471f3009391a3f8a1a66cedd1e4761fe5f76712))
|
|
10
|
+
- Refactor move CD workflow commands into deployment scripts with run_quiet wrapper ([222a18d7](https://github.com/underpostnet/engine/commit/222a18d719f33fd678a72f9b05639f86ec4037cd))
|
|
11
|
+
- Update .github/workflows/engine-test.cd.yml ([94e42e58](https://github.com/underpostnet/engine/commit/94e42e58ee4f9eb6542a010e96899000458f3a7b))
|
|
12
|
+
- Add import-default-items steps to cyberia CD ([350444f9](https://github.com/underpostnet/engine/commit/350444f9fb4b34cd15541458c1897299fed7b287))
|
|
13
|
+
- Update.github/workflows/engine-cyberia.cd.yml ([53e9da17](https://github.com/underpostnet/engine/commit/53e9da17127a850aebaa0e5e0e90b593ee0ac03d))
|
|
14
|
+
- Update base node in engine-core CD pipeline ([fa039f25](https://github.com/underpostnet/engine/commit/fa039f25763bb719496b73dd8044af4570be859e))
|
|
15
|
+
|
|
16
|
+
### cli-cyberia
|
|
17
|
+
|
|
18
|
+
- Include deploy strategies in generated projects ([66bc733e](https://github.com/underpostnet/engine/commit/66bc733eb22bd74aff5ff249dade0959c876cdae))
|
|
19
|
+
- Refactor make data.item.id is now a unique index for every case ([1391efce](https://github.com/underpostnet/engine/commit/1391efce32f96f56271a1060304bb7b26556b80d))
|
|
20
|
+
- Add WebSocket load test runner command ([eebec67e](https://github.com/underpostnet/engine/commit/eebec67edd1bfda0bf6f8205305a90cd73441e4c))
|
|
21
|
+
|
|
22
|
+
### engine
|
|
23
|
+
|
|
24
|
+
- Expand server module JSDoc annotations ([213a5519](https://github.com/underpostnet/engine/commit/213a55191dc388d227315f07116148d5b731b883))
|
|
25
|
+
- Move writeEnv helper into environment module ([9c57e362](https://github.com/underpostnet/engine/commit/9c57e3629a682da0c7aa45e0cb24d24d3af3cdab))
|
|
26
|
+
- Fix SELinux host paths mounts logic and definition ([6cf8dda1](https://github.com/underpostnet/engine/commit/6cf8dda113b92fea011e3825035147ae33a1bc7f))
|
|
27
|
+
- Extract environment and cron deploy helpers into dedicated modules ([6ba3fa4c](https://github.com/underpostnet/engine/commit/6ba3fa4c372a2eb1afe87c6fc5c0681209a96b07))
|
|
28
|
+
- Enforce SELinux across cluster, SSH, and provisioning ([9d57a359](https://github.com/underpostnet/engine/commit/9d57a359dd94067dfb48fceab9006e3ef3d7d502))
|
|
29
|
+
|
|
30
|
+
### cli-wireguard
|
|
31
|
+
|
|
32
|
+
- Add SSH forwarding via VPS edge ([54de1e6e](https://github.com/underpostnet/engine/commit/54de1e6e5dddccad5c056da152cb32712ab3ba25))
|
|
33
|
+
- Extract forward proxy and systemd helpers into server modules ([97be08d1](https://github.com/underpostnet/engine/commit/97be08d107e825c2ff5a97382ebb9367a6ad3523))
|
|
34
|
+
- Implement HTTP/CONNECT forward proxy for WireGuard ([a95163df](https://github.com/underpostnet/engine/commit/a95163df2797bbfa86d3d1f422fe0afd224b72b3))
|
|
35
|
+
- Implement idempotent in Restart, reconnect, and reset pipeline ([65710c3b](https://github.com/underpostnet/engine/commit/65710c3bd3056b1f2cc49e3b82517d081f7f25df))
|
|
36
|
+
- Implement Edge Hub WireGuard and HAProxy CLI module ([2e293b87](https://github.com/underpostnet/engine/commit/2e293b87540a43489bb535e2ab731581809b1848))
|
|
37
|
+
|
|
38
|
+
### catalog-cyberia
|
|
39
|
+
|
|
40
|
+
- Add coverall cyberia trigger script ([c8e59eed](https://github.com/underpostnet/engine/commit/c8e59eed08c113d39a99f5151d8d6b4af96fb4e9))
|
|
41
|
+
|
|
42
|
+
### scripts
|
|
43
|
+
|
|
44
|
+
- Mark scripts as executable ([8f04cbc7](https://github.com/underpostnet/engine/commit/8f04cbc700e2bc17b917ea49450efabc766e27ed))
|
|
45
|
+
|
|
46
|
+
### release
|
|
47
|
+
|
|
48
|
+
- Fix missing file bump version scopes ([4aa983a5](https://github.com/underpostnet/engine/commit/4aa983a5d8aea7983295ee01799c358ed1b9c2bc))
|
|
49
|
+
|
|
50
|
+
### deploy
|
|
51
|
+
|
|
52
|
+
- Mark deploy scripts as executable ([b18151bf](https://github.com/underpostnet/engine/commit/b18151bfaa52c17b2540e0a2706b79a8850fee84))
|
|
53
|
+
|
|
54
|
+
### hardhat
|
|
55
|
+
|
|
56
|
+
- Update hardhat npm module version to sync current project scope v3.2.90 ([8fc717b9](https://github.com/underpostnet/engine/commit/8fc717b9913c69a41c2c9e88b2b7f720a4a7cb09))
|
|
57
|
+
- Update undici override dependency to v6.28.0 ([fb2d2aa3](https://github.com/underpostnet/engine/commit/fb2d2aa3b502b5552212f63d9a01f23d2333b296))
|
|
58
|
+
|
|
59
|
+
### dependabot
|
|
60
|
+
|
|
61
|
+
- Disable typescript autoupdate ([8bd76183](https://github.com/underpostnet/engine/commit/8bd7618336423a1df1d4ca77cd138aef51902d6c))
|
|
62
|
+
|
|
63
|
+
### cli-client
|
|
64
|
+
|
|
65
|
+
- Add only ssr build workload flag option and logic ([92026a66](https://github.com/underpostnet/engine/commit/92026a66ec3c403219af62bfc5bcc78917d537ed))
|
|
66
|
+
|
|
67
|
+
### cli-cron
|
|
68
|
+
|
|
69
|
+
- Fix cron CLI setup flag and single job execution ([84eab73d](https://github.com/underpostnet/engine/commit/84eab73d9a618244b46e699ba65b469940d1a267))
|
|
70
|
+
|
|
71
|
+
### cli-repository
|
|
72
|
+
|
|
73
|
+
- Add getDefaultBranch resolve in switchRemote method ([04bc8743](https://github.com/underpostnet/engine/commit/04bc8743b6f4c5f9edd891276137183fa444d447))
|
|
74
|
+
|
|
75
|
+
### cli-ssh
|
|
76
|
+
|
|
77
|
+
- Add initializeDefaultSshConfig method ([84f5f869](https://github.com/underpostnet/engine/commit/84f5f8698810596f084e632487208ea909feddfd))
|
|
78
|
+
|
|
79
|
+
### cli-vultr
|
|
80
|
+
|
|
81
|
+
- Add Vultr Bandwidth Monitor cron job CLI Module ([22fb9249](https://github.com/underpostnet/engine/commit/22fb9249ad40ba24a8cd87da43d742b1972c4fbb))
|
|
82
|
+
|
|
83
|
+
### cli-dns
|
|
84
|
+
|
|
85
|
+
- Add blokc/unblock ingress/egress workflow handling ([980fab35](https://github.com/underpostnet/engine/commit/980fab35aba6a279b94701550edfd765c8b422a2))
|
|
86
|
+
|
|
87
|
+
### underpost-ingress
|
|
88
|
+
|
|
89
|
+
- Enable response compression in ingress and gateway ([7763f9da](https://github.com/underpostnet/engine/commit/7763f9da2b81128042cef2a73ca5570938dcd3f5))
|
|
90
|
+
|
|
91
|
+
### test
|
|
92
|
+
|
|
93
|
+
- Fix missing pngjs import in object-layer test pipeline ([20c1f24d](https://github.com/underpostnet/engine/commit/20c1f24d865d5cdeb70a365c93f8c797c28fe960))
|
|
94
|
+
- Add WebSocket load test for cyberia-server ([e3ff2777](https://github.com/underpostnet/engine/commit/e3ff277725e33dace3ed3268e6f60299ea146f59))
|
|
95
|
+
|
|
96
|
+
### engine-cyberia
|
|
97
|
+
|
|
98
|
+
- Remove eiri from entity default inventory ([e8f8d03c](https://github.com/underpostnet/engine/commit/e8f8d03c7e326fac012722f659def7d7a7da882c))
|
|
99
|
+
- Add fallback world default items staging and hot reload ([e646c430](https://github.com/underpostnet/engine/commit/e646c430d72ea7a319cf1640bd4c7505cbb40b87))
|
|
100
|
+
- Add playerBaseSpeed field to instance config defaults ([7cdbd23d](https://github.com/underpostnet/engine/commit/7cdbd23d255bb47e253e60f7ec0cc6c3600d5678))
|
|
101
|
+
- Add WebSocket connection limit env to cyberia-server ([c6f834c7](https://github.com/underpostnet/engine/commit/c6f834c7dc7bcae24d4f493a005cdb2d1b76a73d))
|
|
102
|
+
|
|
103
|
+
### client-cyberia
|
|
104
|
+
|
|
105
|
+
- Add Fallback World Engine editor view ([cf61dfe8](https://github.com/underpostnet/engine/commit/cf61dfe8e7eec7556f5bd07e445d6759d9b432e4))
|
|
106
|
+
- Implement IPFS cid filters in ObjectLayerEngineViewer component ([93eb6992](https://github.com/underpostnet/engine/commit/93eb69928bf8ea6915f70b1ca4307fa582cc17b6))
|
|
107
|
+
|
|
108
|
+
### docs
|
|
109
|
+
|
|
110
|
+
- Document moveAck reconciliation and move coalescing in Cyberia replication ([24b14ca4](https://github.com/underpostnet/engine/commit/24b14ca4ee4c9ef0ce4dc9e3135e4990ed0a8274))
|
|
111
|
+
|
|
112
|
+
## New release v:3.2.90 (2026-08-11)
|
|
4
113
|
|
|
5
114
|
### cli-run
|
|
6
115
|
|