Compare commits

...

96 Commits

Author SHA1 Message Date
67190605a6 v11.3.0
Some checks failed
Docker (tags) / security (push) Failing after 13s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-18 16:22:02 +00:00
9479a07ddf feat(docker): add OCI container startup configuration and migrate Docker release pipeline to tsdocker 2026-03-18 16:22:02 +00:00
fbed56092f v11.2.56
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-18 00:13:58 +00:00
547b82b35b fix(deps): bump @serve.zone/remoteingress to ^4.9.0 2026-03-18 00:13:58 +00:00
3dc63fa02e v11.2.55
Some checks failed
Docker (tags) / security (push) Failing after 0s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 23:29:58 +00:00
e0154f5b70 fix(deps): bump @serve.zone/catalog to ^2.7.0 and @serve.zone/remoteingress to ^4.8.18 2026-03-17 23:29:58 +00:00
b268409897 v11.2.54
Some checks failed
Docker (tags) / security (push) Failing after 0s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 19:14:26 +00:00
f3a9fd12c5 fix(deps): bump @serve.zone/remoteingress to ^4.8.16 2026-03-17 19:14:26 +00:00
ef741d84fb v11.2.53
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 16:49:17 +00:00
b0ea97b922 fix(deps): bump @push.rocks/smartproxy and @serve.zone/remoteingress patch versions 2026-03-17 16:49:17 +00:00
d1560811f5 v11.2.52
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 15:51:31 +00:00
5e872c4e6a fix(deps): bump @serve.zone/remoteingress to ^4.8.13 2026-03-17 15:51:31 +00:00
3620e4549a v11.2.51
Some checks failed
Docker (tags) / security (push) Failing after 0s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 13:28:33 +00:00
b32865e790 fix(deps): bump @serve.zone/remoteingress to ^4.8.12 2026-03-17 13:28:33 +00:00
ebe71a2a94 v11.2.50
Some checks failed
Docker (tags) / security (push) Failing after 0s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 13:06:39 +00:00
877a2ad0ee fix(deps): bump @serve.zone/remoteingress to ^4.8.11 2026-03-17 13:06:39 +00:00
7be1aaedb3 v11.2.49
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 12:50:44 +00:00
05eb8e9723 fix(deps): bump @serve.zone/remoteingress to ^4.8.10 2026-03-17 12:50:44 +00:00
d95d89ea6f v11.2.48
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 12:36:14 +00:00
5d1b988579 fix(deps): bump @serve.zone/remoteingress to ^4.8.9 2026-03-17 12:36:14 +00:00
bae85eea9e v11.2.47
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 12:24:37 +00:00
2be7974991 fix(deps): bump @push.rocks/smartproxy to ^25.11.23 2026-03-17 12:24:37 +00:00
ac03b1f081 v11.2.46
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 12:13:49 +00:00
5ca209dd5a fix(deps): bump @push.rocks/smartproxy to ^25.11.22 2026-03-17 12:13:49 +00:00
867e93b246 v11.2.45
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 12:05:41 +00:00
aa9c4c1c28 fix(deps): bump @push.rocks/smartproxy and @serve.zone/remoteingress dependencies 2026-03-17 12:05:41 +00:00
207f21cb77 v11.2.44
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 11:18:11 +00:00
96a47ef588 fix(deps): bump @serve.zone/remoteingress to ^4.8.3 2026-03-17 11:18:11 +00:00
3bac80eb41 v11.2.43
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 10:35:25 +00:00
19d67a644c fix(deps): bump @serve.zone/remoteingress to ^4.8.2 2026-03-17 10:35:25 +00:00
341e4113bd v11.2.42
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 01:51:04 +00:00
81eb19a9ab fix(deps): bump @serve.zone/remoteingress to ^4.8.1 2026-03-17 01:51:04 +00:00
e0221c0d05 v11.2.41
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 01:33:47 +00:00
e6a1f23c84 fix(deps): bump @push.rocks/smartproxy to ^25.11.20 2026-03-17 01:33:47 +00:00
f77772e1c0 v11.2.40
Some checks failed
Docker (tags) / security (push) Failing after 4s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 01:00:41 +00:00
0a706c03c4 fix(deps): bump @serve.zone/remoteingress to ^4.8.0 2026-03-17 01:00:41 +00:00
df5547fda0 v11.2.39
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 00:43:03 +00:00
a677ee081c fix(repository): no changes to commit 2026-03-17 00:43:03 +00:00
7339a91513 v11.2.38
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-17 00:41:16 +00:00
cd27645489 fix(deps): bump @serve.zone/remoteingress to ^4.7.2 2026-03-17 00:41:16 +00:00
71f2d53e45 v11.2.37
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 23:36:55 +00:00
f74fcc68de fix(deps): bump @serve.zone/remoteingress to ^4.7.0 2026-03-16 23:36:55 +00:00
abcaf9c858 v11.2.36
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 20:58:17 +00:00
c9f185dd82 fix(deps): bump @push.rocks/smartproxy to ^25.11.19 2026-03-16 20:58:17 +00:00
5e3186d311 v11.2.35
Some checks failed
Docker (tags) / security (push) Failing after 3s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 20:01:59 +00:00
db35c01a09 fix(deps): bump @push.rocks/smartproxy, @serve.zone/catalog, and @serve.zone/remoteingress dependencies 2026-03-16 20:01:59 +00:00
3cf6c84a60 v11.2.34
Some checks failed
Docker (tags) / security (push) Failing after 2s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 14:32:19 +00:00
d570d5c916 fix(deps): bump @push.rocks/smartproxy and @serve.zone/catalog patch versions 2026-03-16 14:32:19 +00:00
4f6afb62f3 v11.2.33
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 14:12:00 +00:00
e5edfdc052 fix(deps): bump smartproxy and remoteingress dependencies 2026-03-16 14:12:00 +00:00
55cbb92a00 v11.2.32
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 13:49:26 +00:00
928be6a5c6 fix(deps): bump smartproxy and remoteingress dependencies 2026-03-16 13:49:26 +00:00
dff3e3c80d v11.2.31
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 13:03:33 +00:00
8db2118a78 fix(deps): bump @push.rocks/smartproxy to ^25.11.11 2026-03-16 13:03:33 +00:00
dc6da4ce34 v11.2.30
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 12:35:27 +00:00
63eb99ae5d fix(deps): bump @push.rocks/smartproxy and @serve.zone/catalog dependencies 2026-03-16 12:35:27 +00:00
6b533fba9f v11.2.29
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 11:31:30 +00:00
d3e102b6d2 fix(deps): bump @serve.zone/remoteingress to ^4.5.9 2026-03-16 11:31:30 +00:00
2bc9761d21 v11.2.28
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 10:53:17 +00:00
d60b9fb8e2 fix(deps): bump @serve.zone/remoteingress to ^4.5.8 2026-03-16 10:53:17 +00:00
b2705f3e88 v11.2.27
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 09:45:33 +00:00
4dea263cb0 fix(deps): bump smartproxy and remoteingress dependencies 2026-03-16 09:45:33 +00:00
54593d0a9b v11.2.26
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 09:03:08 +00:00
225a75a81b fix(deps): bump @serve.zone/remoteingress to ^4.5.5 2026-03-16 09:03:08 +00:00
72ae4e8a9b v11.2.25
Some checks failed
Docker (tags) / security (push) Failing after 2s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 08:59:55 +00:00
b171590179 fix(deps): bump @push.rocks/smartproxy to ^25.11.8 2026-03-16 08:59:55 +00:00
c46f79914f v11.2.24
Some checks failed
Docker (tags) / security (push) Failing after 0s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 03:02:18 +00:00
914223972a fix(deps): bump @push.rocks/smartproxy to ^25.11.7 2026-03-16 03:02:18 +00:00
559435d13c v11.2.23
Some checks failed
Docker (tags) / security (push) Failing after 0s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 02:07:39 +00:00
47300e4ced fix(deps): bump @push.rocks/smartproxy to ^25.11.6 2026-03-16 02:07:39 +00:00
a35a35f302 v11.2.22
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-16 00:04:18 +00:00
3b09587ca9 fix(deps): bump @push.rocks/smartproxy to ^25.11.5 2026-03-16 00:04:18 +00:00
1cb2de2c3e v11.2.21
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 23:47:30 +00:00
f972c38784 fix(deps): bump @push.rocks/smartproxy to ^25.11.4 2026-03-15 23:47:30 +00:00
90736c3668 v11.2.20
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 21:07:59 +00:00
f27ef5c768 fix(deps): bump @serve.zone/remoteingress to ^4.5.4 2026-03-15 21:07:59 +00:00
68ecd18646 v11.2.19
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 19:30:05 +00:00
e3d7c91705 fix(deps): bump @serve.zone/remoteingress to ^4.5.3 2026-03-15 19:30:05 +00:00
d3c2fa436c v11.2.18
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 18:17:38 +00:00
53b7da7e3f fix(deps): bump @serve.zone/remoteingress to ^4.5.2 2026-03-15 18:17:38 +00:00
8e312d80c0 v11.2.17
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 17:56:51 +00:00
c52d0ca759 fix(repo): no changes to commit 2026-03-15 17:56:51 +00:00
ca024345f6 v11.2.16
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 17:54:33 +00:00
89ea875ca8 fix(deps): bump @serve.zone/remoteingress to ^4.5.1 2026-03-15 17:54:33 +00:00
f15414e509 v11.2.15
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 17:45:34 +00:00
cfaafab057 fix(deps): bump @serve.zone/remoteingress to ^4.5.0 2026-03-15 17:45:34 +00:00
0aed608578 v11.2.14
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 17:04:45 +00:00
00a24051c9 fix(deps): bump smartproxy and remoteingress patch dependencies 2026-03-15 17:04:45 +00:00
310b43d1a6 v11.2.13
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-15 16:34:26 +00:00
e7f56fb870 fix(deps): bump runtime dependencies to latest compatible patch and minor versions 2026-03-15 16:34:26 +00:00
1f6eee20d3 v11.2.12
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-12 22:44:22 +00:00
7db7f92abd fix(deps): bump @push.rocks/smartproxy to ^25.10.7 2026-03-12 22:44:22 +00:00
fdf995cf61 v11.2.11
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-12 22:07:58 +00:00
fa5adbbf61 fix(deps): bump @push.rocks/smartproxy to ^25.10.6 2026-03-12 22:07:58 +00:00
1bdda9f501 v11.2.10
Some checks failed
Docker (tags) / security (push) Failing after 1s
Docker (tags) / test (push) Has been skipped
Docker (tags) / release (push) Has been skipped
Docker (tags) / metadata (push) Has been skipped
2026-03-12 21:56:38 +00:00
39a5d6aaa6 fix(deps): bump @push.rocks/smartproxy to ^25.10.5 2026-03-12 21:56:38 +00:00
12 changed files with 501 additions and 126 deletions

View File

@@ -6,7 +6,7 @@ on:
- '**'
env:
IMAGE: registry.gitlab.com/hosttoday/ht-docker-node:npmci
IMAGE: code.foss.global/host.today/ht-docker-node:szci
NPMCI_COMPUTED_REPOURL: https://${{gitea.repository_owner}}:${{secrets.GITEA_TOKEN}}@gitea.lossless.digital/${{gitea.repository}}.git
NPMCI_TOKEN_NPM: ${{secrets.NPMCI_TOKEN_NPM}}
NPMCI_TOKEN_NPM2: ${{secrets.NPMCI_TOKEN_NPM2}}

View File

@@ -6,7 +6,7 @@ on:
- '*'
env:
IMAGE: registry.gitlab.com/hosttoday/ht-docker-node:npmci
IMAGE: code.foss.global/host.today/ht-docker-node:szci
NPMCI_COMPUTED_REPOURL: https://${{gitea.repository_owner}}:${{secrets.GITEA_TOKEN}}@gitea.lossless.digital/${{gitea.repository}}.git
NPMCI_TOKEN_NPM: ${{secrets.NPMCI_TOKEN_NPM}}
NPMCI_TOKEN_NPM2: ${{secrets.NPMCI_TOKEN_NPM2}}
@@ -74,7 +74,7 @@ jobs:
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
container:
image: registry.gitlab.com/hosttoday/ht-docker-dbase:npmci
image: code.foss.global/host.today/ht-docker-node:dbase_dind
steps:
- uses: actions/checkout@v3
@@ -82,15 +82,13 @@ jobs:
- name: Prepare
run: |
pnpm install -g pnpm
pnpm install -g @shipzone/npmci
pnpm install -g @git.zone/tsdocker
- name: Release
run: |
npmci docker login
npmci docker build
npmci docker test
# npmci docker push gitea.lossless.digital
npmci docker push dockerregistry.lossless.digital
tsdocker login
tsdocker build
tsdocker push
metadata:
needs: test

View File

@@ -1,44 +1,24 @@
# gitzone dockerfile_service
## STAGE 1 // BUILD
FROM registry.gitlab.com/hosttoday/ht-docker-node:npmci as node1
FROM code.foss.global/host.today/ht-docker-node:lts AS build
COPY ./ /app
WORKDIR /app
ARG NPMCI_TOKEN_NPM2
ENV NPMCI_TOKEN_NPM2 $NPMCI_TOKEN_NPM2
RUN npmci npm prepare
RUN pnpm config set store-dir .pnpm-store
RUN rm -rf node_modules && pnpm install
RUN pnpm run build
RUN rm -rf .pnpm-store node_modules && pnpm install --prod
## STAGE 2 // PRODUCTION
FROM code.foss.global/host.today/ht-docker-node:alpine-node AS production
# gcompat + libstdc++ for glibc-linked Rust binaries (smartproxy, smartmta, remoteingress)
RUN apk add --no-cache gcompat libstdc++
# gitzone dockerfile_service
## STAGE 2 // install production
FROM registry.gitlab.com/hosttoday/ht-docker-node:npmci as node2
WORKDIR /app
COPY --from=node1 /app /app
RUN rm -rf .pnpm-store
ARG NPMCI_TOKEN_NPM2
ENV NPMCI_TOKEN_NPM2 $NPMCI_TOKEN_NPM2
RUN npmci npm prepare
RUN pnpm config set store-dir .pnpm-store
RUN rm -rf node_modules/ && pnpm install --prod
COPY --from=build /app /app
ENV DCROUTER_MODE=OCI_CONTAINER
## STAGE 3 // rebuild dependencies for alpine
FROM registry.gitlab.com/hosttoday/ht-docker-node:alpinenpmci as node3
WORKDIR /app
COPY --from=node2 /app /app
ARG NPMCI_TOKEN_NPM2
ENV NPMCI_TOKEN_NPM2 $NPMCI_TOKEN_NPM2
RUN npmci npm prepare
RUN pnpm config set store-dir .pnpm-store
RUN pnpm rebuild -r
## STAGE 4 // the final production image with all dependencies in place
FROM registry.gitlab.com/hosttoday/ht-docker-node:alpine as node4
WORKDIR /app
COPY --from=node3 /app /app
### Healthchecks
RUN pnpm install -g @servezone/healthy
HEALTHCHECK --interval=30s --timeout=30s --start-period=30s --retries=3 CMD [ "healthy" ]

View File

@@ -1,5 +1,259 @@
# Changelog
## 2026-03-18 - 11.3.0 - feat(docker)
add OCI container startup configuration and migrate Docker release pipeline to tsdocker
- adds OCI container mode startup that reads DcRouter options from environment variables and an optional JSON config file
- simplifies the Docker image to a two-stage build with production dependencies only and Alpine runtime compatibility packages
- updates Gitea workflows and npm scripts to use tsdocker for image build and release
## 2026-03-18 - 11.2.56 - fix(deps)
bump @serve.zone/remoteingress to ^4.9.0
- Updates @serve.zone/remoteingress from ^4.8.18 to ^4.9.0 in package.json
## 2026-03-17 - 11.2.55 - fix(deps)
bump @serve.zone/catalog to ^2.7.0 and @serve.zone/remoteingress to ^4.8.18
- updates @serve.zone/catalog from ^2.6.2 to ^2.7.0
- updates @serve.zone/remoteingress from ^4.8.16 to ^4.8.18
## 2026-03-17 - 11.2.54 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.16
- Updates @serve.zone/remoteingress from ^4.8.14 to ^4.8.16 in package.json.
## 2026-03-17 - 11.2.53 - fix(deps)
bump @push.rocks/smartproxy and @serve.zone/remoteingress patch versions
- update @push.rocks/smartproxy from ^25.11.23 to ^25.11.24
- update @serve.zone/remoteingress from ^4.8.13 to ^4.8.14
## 2026-03-17 - 11.2.52 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.13
- Updates the @serve.zone/remoteingress dependency from ^4.8.12 to ^4.8.13.
## 2026-03-17 - 11.2.51 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.12
- Updates @serve.zone/remoteingress from ^4.8.11 to ^4.8.12 in package.json
## 2026-03-17 - 11.2.50 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.11
- updates @serve.zone/remoteingress from ^4.8.10 to ^4.8.11
## 2026-03-17 - 11.2.49 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.10
- Updates @serve.zone/remoteingress from ^4.8.9 to ^4.8.10 in package.json
## 2026-03-17 - 11.2.48 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.9
- Updates @serve.zone/remoteingress from ^4.8.7 to ^4.8.9 in package.json
## 2026-03-17 - 11.2.47 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.23
- Updates the @push.rocks/smartproxy dependency from ^25.11.22 to ^25.11.23 in package.json
## 2026-03-17 - 11.2.46 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.22
- Updates the @push.rocks/smartproxy dependency from ^25.11.21 to ^25.11.22 in package.json.
## 2026-03-17 - 11.2.45 - fix(deps)
bump @push.rocks/smartproxy and @serve.zone/remoteingress dependencies
- update @push.rocks/smartproxy from ^25.11.20 to ^25.11.21
- update @serve.zone/remoteingress from ^4.8.3 to ^4.8.7
## 2026-03-17 - 11.2.44 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.3
- Updates @serve.zone/remoteingress from ^4.8.2 to ^4.8.3 in package.json
## 2026-03-17 - 11.2.43 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.2
- Updates the @serve.zone/remoteingress dependency from ^4.8.1 to ^4.8.2.
## 2026-03-17 - 11.2.42 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.1
- Updates @serve.zone/remoteingress from ^4.8.0 to ^4.8.1 in package.json
## 2026-03-17 - 11.2.41 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.20
- Updates the @push.rocks/smartproxy dependency from ^25.11.19 to ^25.11.20 in package.json.
## 2026-03-17 - 11.2.40 - fix(deps)
bump @serve.zone/remoteingress to ^4.8.0
- Updates the @serve.zone/remoteingress dependency from ^4.7.2 to ^4.8.0 in package.json.
## 2026-03-17 - 11.2.39 - fix(repository)
no changes to commit
## 2026-03-17 - 11.2.38 - fix(deps)
bump @serve.zone/remoteingress to ^4.7.2
- Updates @serve.zone/remoteingress from ^4.7.0 to ^4.7.2 in package.json
## 2026-03-16 - 11.2.37 - fix(deps)
bump @serve.zone/remoteingress to ^4.7.0
- updates the @serve.zone/remoteingress dependency from ^4.6.0 to ^4.7.0
## 2026-03-16 - 11.2.36 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.19
- Updates the @push.rocks/smartproxy dependency from ^25.11.18 to ^25.11.19 in package.json
## 2026-03-16 - 11.2.35 - fix(deps)
bump @push.rocks/smartproxy, @serve.zone/catalog, and @serve.zone/remoteingress dependencies
- updates @push.rocks/smartproxy from ^25.11.17 to ^25.11.18
- updates @serve.zone/catalog from ^2.6.1 to ^2.6.2
- updates @serve.zone/remoteingress from ^4.5.11 to ^4.6.0
## 2026-03-16 - 11.2.34 - fix(deps)
bump @push.rocks/smartproxy and @serve.zone/catalog patch versions
- updates @push.rocks/smartproxy from ^25.11.16 to ^25.11.17
- updates @serve.zone/catalog from ^2.6.0 to ^2.6.1
## 2026-03-16 - 11.2.33 - fix(deps)
bump smartproxy and remoteingress dependencies
- update @push.rocks/smartproxy from ^25.11.14 to ^25.11.16
- update @serve.zone/remoteingress from ^4.5.10 to ^4.5.11
## 2026-03-16 - 11.2.32 - fix(deps)
bump smartproxy and remoteingress dependencies
- update @push.rocks/smartproxy from ^25.11.11 to ^25.11.14
- update @serve.zone/remoteingress from ^4.5.9 to ^4.5.10
## 2026-03-16 - 11.2.31 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.11
- Updates the @push.rocks/smartproxy dependency from ^25.11.10 to ^25.11.11 in package.json.
## 2026-03-16 - 11.2.30 - fix(deps)
bump @push.rocks/smartproxy and @serve.zone/catalog dependencies
- update @push.rocks/smartproxy from ^25.11.9 to ^25.11.10
- update @serve.zone/catalog from ^2.5.0 to ^2.6.0
## 2026-03-16 - 11.2.29 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.9
- Updates @serve.zone/remoteingress from ^4.5.8 to ^4.5.9 in package.json
## 2026-03-16 - 11.2.28 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.8
- Updates the @serve.zone/remoteingress dependency from ^4.5.7 to ^4.5.8.
## 2026-03-16 - 11.2.27 - fix(deps)
bump smartproxy and remoteingress dependencies
- update @push.rocks/smartproxy from ^25.11.8 to ^25.11.9
- update @serve.zone/remoteingress from ^4.5.5 to ^4.5.7
## 2026-03-16 - 11.2.26 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.5
- Updates the @serve.zone/remoteingress dependency from ^4.5.4 to ^4.5.5.
## 2026-03-16 - 11.2.25 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.8
- updates the smartproxy dependency from ^25.11.7 to ^25.11.8
## 2026-03-16 - 11.2.24 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.7
- Updates the @push.rocks/smartproxy dependency from ^25.11.6 to ^25.11.7.
## 2026-03-16 - 11.2.23 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.6
- Updates the @push.rocks/smartproxy dependency from ^25.11.5 to ^25.11.6.
## 2026-03-16 - 11.2.22 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.5
- updates the @push.rocks/smartproxy dependency from ^25.11.4 to ^25.11.5
## 2026-03-15 - 11.2.21 - fix(deps)
bump @push.rocks/smartproxy to ^25.11.4
- updates the @push.rocks/smartproxy dependency from ^25.11.3 to ^25.11.4
## 2026-03-15 - 11.2.20 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.4
- Updates @serve.zone/remoteingress from ^4.5.3 to ^4.5.4 in package.json
## 2026-03-15 - 11.2.19 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.3
- Updates the @serve.zone/remoteingress dependency from ^4.5.2 to ^4.5.3.
## 2026-03-15 - 11.2.18 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.2
- Updates @serve.zone/remoteingress from ^4.5.1 to ^4.5.2 in package.json
## 2026-03-15 - 11.2.17 - fix(repo)
no changes to commit
## 2026-03-15 - 11.2.16 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.1
- Updates @serve.zone/remoteingress from ^4.5.0 to ^4.5.1 in package dependencies.
## 2026-03-15 - 11.2.15 - fix(deps)
bump @serve.zone/remoteingress to ^4.5.0
- Updates the @serve.zone/remoteingress dependency from ^4.4.1 to ^4.5.0.
## 2026-03-15 - 11.2.14 - fix(deps)
bump smartproxy and remoteingress patch dependencies
- update @push.rocks/smartproxy from ^25.11.1 to ^25.11.3
- update @serve.zone/remoteingress from ^4.4.0 to ^4.4.1
## 2026-03-15 - 11.2.13 - fix(deps)
bump runtime dependencies to latest compatible patch and minor versions
- update @design.estate/dees-catalog from ^3.48.2 to ^3.48.5
- update @push.rocks/smartproxy from ^25.10.7 to ^25.11.1
- update @tsclass/tsclass from ^9.3.0 to ^9.4.0
- update lru-cache from ^11.2.6 to ^11.2.7
## 2026-03-12 - 11.2.12 - fix(deps)
bump @push.rocks/smartproxy to ^25.10.7
- Updates the @push.rocks/smartproxy dependency from ^25.10.6 to ^25.10.7 in package.json.
## 2026-03-12 - 11.2.11 - fix(deps)
bump @push.rocks/smartproxy to ^25.10.6
- Updates the @push.rocks/smartproxy dependency from ^25.10.5 to ^25.10.6 in package.json
## 2026-03-12 - 11.2.10 - fix(deps)
bump @push.rocks/smartproxy to ^25.10.5
- Updates the @push.rocks/smartproxy dependency from ^25.10.4 to ^25.10.5 in package.json.
## 2026-03-12 - 11.2.9 - fix(deps)
bump @push.rocks/smartproxy to ^25.10.4

View File

@@ -72,9 +72,14 @@
"dockerRegistryRepoMap": {
"registry.gitlab.com": "code.foss.global/serve.zone/dcrouter"
},
"dockerBuildargEnvMap": {
"NPMCI_TOKEN_NPM2": "NPMCI_TOKEN_NPM2"
},
"npmRegistryUrl": "verdaccio.lossless.digital"
},
"@git.zone/tsdocker": {
"registries": ["code.foss.global"],
"registryRepoMap": {
"code.foss.global": "serve.zone/dcrouter",
"dockerregistry.lossless.digital": "serve.zone/dcrouter"
},
"platforms": ["linux/amd64", "linux/arm64"]
}
}

View File

@@ -1,7 +1,7 @@
{
"name": "@serve.zone/dcrouter",
"private": false,
"version": "11.2.9",
"version": "11.3.0",
"description": "A multifaceted routing service handling mail and SMS delivery functions.",
"type": "module",
"exports": {
@@ -16,6 +16,8 @@
"start": "(node --max_old_space_size=250 ./cli.js)",
"startTs": "(node cli.ts.js)",
"build": "(tsbuild tsfolders --allowimplicitany && npm run bundle)",
"build:docker": "tsdocker build",
"release:docker": "tsdocker push",
"bundle": "(tsbundle)",
"watch": "tswatch"
},
@@ -33,7 +35,7 @@
"@api.global/typedserver": "^8.4.2",
"@api.global/typedsocket": "^4.1.2",
"@apiclient.xyz/cloudflare": "^7.1.0",
"@design.estate/dees-catalog": "^3.48.2",
"@design.estate/dees-catalog": "^3.48.5",
"@design.estate/dees-element": "^2.2.3",
"@push.rocks/lik": "^6.3.1",
"@push.rocks/projectinfo": "^5.0.2",
@@ -51,17 +53,17 @@
"@push.rocks/smartnetwork": "^4.4.0",
"@push.rocks/smartpath": "^6.0.0",
"@push.rocks/smartpromise": "^4.2.3",
"@push.rocks/smartproxy": "^25.10.4",
"@push.rocks/smartproxy": "^25.11.24",
"@push.rocks/smartradius": "^1.1.1",
"@push.rocks/smartrequest": "^5.0.1",
"@push.rocks/smartrx": "^3.0.10",
"@push.rocks/smartstate": "^2.2.0",
"@push.rocks/smartunique": "^3.0.9",
"@serve.zone/catalog": "^2.5.0",
"@serve.zone/catalog": "^2.7.0",
"@serve.zone/interfaces": "^5.3.0",
"@serve.zone/remoteingress": "^4.4.0",
"@tsclass/tsclass": "^9.3.0",
"lru-cache": "^11.2.6",
"@serve.zone/remoteingress": "^4.9.0",
"@tsclass/tsclass": "^9.4.0",
"lru-cache": "^11.2.7",
"uuid": "^13.0.0"
},
"keywords": [

156
pnpm-lock.yaml generated
View File

@@ -24,8 +24,8 @@ importers:
specifier: ^7.1.0
version: 7.1.0
'@design.estate/dees-catalog':
specifier: ^3.48.2
version: 3.48.2(@tiptap/pm@2.27.2)
specifier: ^3.48.5
version: 3.48.5(@tiptap/pm@2.27.2)
'@design.estate/dees-element':
specifier: ^2.2.3
version: 2.2.3
@@ -78,8 +78,8 @@ importers:
specifier: ^4.2.3
version: 4.2.3
'@push.rocks/smartproxy':
specifier: ^25.10.4
version: 25.10.4
specifier: ^25.11.24
version: 25.11.24
'@push.rocks/smartradius':
specifier: ^1.1.1
version: 1.1.1
@@ -96,20 +96,20 @@ importers:
specifier: ^3.0.9
version: 3.0.9
'@serve.zone/catalog':
specifier: ^2.5.0
version: 2.5.0(@tiptap/pm@2.27.2)
specifier: ^2.7.0
version: 2.7.0(@tiptap/pm@2.27.2)
'@serve.zone/interfaces':
specifier: ^5.3.0
version: 5.3.0
'@serve.zone/remoteingress':
specifier: ^4.4.0
version: 4.4.0
specifier: ^4.9.0
version: 4.9.0
'@tsclass/tsclass':
specifier: ^9.3.0
version: 9.3.0
specifier: ^9.4.0
version: 9.4.0
lru-cache:
specifier: ^11.2.6
version: 11.2.6
specifier: ^11.2.7
version: 11.2.7
uuid:
specifier: ^13.0.0
version: 13.0.0
@@ -338,8 +338,8 @@ packages:
'@configvault.io/interfaces@1.0.17':
resolution: {integrity: sha512-bEcCUR2VBDJsTin8HQh8Uw/mlYl2v8A3jMIaQ+MTB9Hrqd6CZL2dL7iJdWyFl/3EIX+LDxWFR+Oq7liIq7w+1Q==}
'@design.estate/dees-catalog@3.48.2':
resolution: {integrity: sha512-FAG5Iie4fMuSfbk4QuYoBDN1LQ/yr2l1bPdD6+NMrdEg5sWDq2Y7mtvDNKfBSU6VgEPp7g2/UmkLFiQ39owWiA==}
'@design.estate/dees-catalog@3.48.5':
resolution: {integrity: sha512-4BTKpofEL77k4GfJhrb7Zv9Y0vCJ/40Fn262p2bKAGwkQ+SnFEtqOKlNIgjogNggIfTMSBt3THtWPfonveVcuw==}
'@design.estate/dees-comms@1.0.30':
resolution: {integrity: sha512-KchMlklJfKAjQiJiR0xmofXtQ27VgZtBIxcMwPE9d+h3jJRv+lPZxzBQVOM0eyM0uS44S5vJMZ11IeV4uDXSHg==}
@@ -1256,8 +1256,8 @@ packages:
'@push.rocks/smartpromise@4.2.3':
resolution: {integrity: sha512-Ycg/TJR+tMt+S3wSFurOpEoW6nXv12QBtKXgBcjMZ4RsdO28geN46U09osPn9N9WuwQy1PkmTV5J/V4F9U8qEw==}
'@push.rocks/smartproxy@25.10.4':
resolution: {integrity: sha512-2fFHYQNufS0ClL7OCUYu8Lhd8U5DZEdPpARw10ZuGCAcpLCHMmhUhv87A/suxMMgmjCprJaARiapLpxEeg4mdg==}
'@push.rocks/smartproxy@25.11.24':
resolution: {integrity: sha512-dkeQJM2W5wKwTBZXxy3hGhIyQv2XeAQqwWliDbi/2oy6LU6BFdgpzEdhE5emG+wOcfQTagALpOIt7lBAzetjSA==}
'@push.rocks/smartpuppeteer@2.0.5':
resolution: {integrity: sha512-yK/qSeWVHIGWRp3c8S5tfdGP6WCKllZC4DR8d8CQlEjszOSBmHtlTdyyqOMBZ/BA4kd+eU5f3A1r4K2tGYty1g==}
@@ -1277,14 +1277,15 @@ packages:
'@push.rocks/smartrouter@1.3.3':
resolution: {integrity: sha512-1+xZEnWlhzqLWAaJ1zFNhQ0zgbfCWQl1DBT72LygLxTs+P0K8AwJKgqo/IX6CT55kGCFnPAZIYSbVJlGsgrB0w==}
'@push.rocks/smartrust@1.3.1':
resolution: {integrity: sha512-3ApbgF6yGeE2TRQxBY9Y48H1JlpcRheIp7QDBLSSfk80Uoe6fjdgBAfNz3Ir8hW3RZ3b7hA3sm1ZshCok58SEA==}
'@push.rocks/smartrust@1.3.2':
resolution: {integrity: sha512-HPzSJgDnKUdE5fkn2+BC9JvFXk7wl6aURAiHAXjHSCBLtzfgB7jEXjlg+K6CEfMjwQV7sy+hYABlq5DLXcFseQ==}
'@push.rocks/smartrx@3.0.10':
resolution: {integrity: sha512-USjIYcsSfzn14cwOsxgq/bBmWDTTzy3ouWAnW5NdMyRRzEbmeNrvmy6TRqNeDlJ2PsYNTt1rr/zGUqvIy72ITg==}
'@push.rocks/smarts3@5.3.0':
resolution: {integrity: sha512-6bo55ovCDEylbTxwPFZYDrZrz2babQEUmxHIexmVcP2j+6LYRHDbGYnWoyKdtqniqDFZ04pFkOoZ85hUzU5xCw==}
deprecated: This package has been renamed to @push.rocks/smartstorage. Please install @push.rocks/smartstorage instead.
'@push.rocks/smartserve@2.0.1':
resolution: {integrity: sha512-YQb2qexfCzCqOlLWBBXKMg6xG4zahCPAxomz/KEKAwHtW6wMTtuHKSTSkRTQ0vl9jssLMAmRz2OyafiL9XGJXQ==}
@@ -1544,14 +1545,14 @@ packages:
'@selderee/plugin-htmlparser2@0.11.0':
resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
'@serve.zone/catalog@2.5.0':
resolution: {integrity: sha512-bRwk7pbDxUB471wUAS7p22MTOOBCHlMWijsE43K9tDAPcxlRarhtf2Dgx0Y25s/dFXqj2JHwe6jjE84S80jFzg==}
'@serve.zone/catalog@2.7.0':
resolution: {integrity: sha512-BSfLi9BZE5wvu5Dxh0p/mM9bE+9lf35PGHRZ1Cw/+YpWxOfIFPTZKkBz2OUn3yctWw+V7l1VBBYuLX1bVCKFfA==}
'@serve.zone/interfaces@5.3.0':
resolution: {integrity: sha512-venO7wtDR9ixzD9NhdERBGjNKbFA5LL0yHw4eqGh0UpmvtXVc3SFG0uuHDilOKMZqZ8bttV88qVsFy1aSTJrtA==}
'@serve.zone/remoteingress@4.4.0':
resolution: {integrity: sha512-+M2EHP0irezN0xutYn0H6ZXePWoMJy4ETbK9/5Zgb4nx2FbDRYQyFLJUXyLzVL/rtJ/5trToPwOa3ljZoVze3g==}
'@serve.zone/remoteingress@4.9.0':
resolution: {integrity: sha512-GeQqU6uqtJqfV1fJauneuyodeAVK7X5eVCo8j83fTNt9r0TXFBNvAa7u1sxRNuGRBScQs4urHlUf9P8vuZLV0g==}
'@sindresorhus/is@5.6.0':
resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==}
@@ -1942,8 +1943,8 @@ packages:
'@tsclass/tsclass@4.4.4':
resolution: {integrity: sha512-YZOAF+u+r4u5rCev2uUd1KBTBdfyFdtDmcv4wuN+864lMccbdfRICR3SlJwCfYS1lbeV3QNLYGD30wjRXgvCJA==}
'@tsclass/tsclass@9.3.0':
resolution: {integrity: sha512-KD3oTUN3RGu67tgjNHgWWZGsdYipr1RUDxQ9MMKSgIJ6oNZ4q5m2rg0ibrgyHWkAjTPlHVa6kHP3uVOY+8bnHw==}
'@tsclass/tsclass@9.4.0':
resolution: {integrity: sha512-VqSafIzAGxKBKQk6Q4t4vy6ldZ71I0q9T1rWnuQjvRwJEVWWL1nW7B3dfOzZq3YhOfUeOl03LGENsl0DUjUlbg==}
'@tybys/wasm-util@0.10.1':
resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
@@ -2089,9 +2090,6 @@ packages:
'@ungap/structured-clone@1.3.0':
resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
'@yr/monotone-cubic-spline@1.0.3':
resolution: {integrity: sha512-FQXkOta0XBSUPHndIKON2Y9JeQz5ZeMqLYZVVK93FliNBFm7LNMIZmY6FrMEB9XPcDbE2bekMbZD6kzDkxwYjA==}
'@zone-eu/mailsplit@5.4.8':
resolution: {integrity: sha512-eEyACj4JZ7sjzRvy26QhLgKEMWwQbsw1+QZnlLX+/gihcNH07lVPOcnwf5U6UAL7gkc//J3jVd76o/WS+taUiA==}
@@ -2138,8 +2136,8 @@ packages:
any-base@1.1.0:
resolution: {integrity: sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==}
apexcharts@5.10.3:
resolution: {integrity: sha512-wwvkSLsodNOc/rHo5MJsn3GPM4Krc5Gs0zKX4Lfzq4LohcTbyKylYUGEqJFmXXxGR7yLbZQz31sB5RTqT5mv1g==}
apexcharts@5.10.4:
resolution: {integrity: sha512-gt0VUqZ2+mr25ScbUcKZgJr96jKYm4vjOcxEWCEh/E5F4dWqhyo3dBhPRvNNnkKiWxkMd2cBwj3ZYH3rK39fkA==}
argparse@1.0.10:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
@@ -3080,8 +3078,8 @@ packages:
lru-cache@10.4.3:
resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
lru-cache@11.2.6:
resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==}
lru-cache@11.2.7:
resolution: {integrity: sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==}
engines: {node: 20 || >=22}
lru-cache@7.18.3:
@@ -4003,6 +4001,10 @@ packages:
os: [darwin, linux, win32, freebsd, openbsd, netbsd, sunos, android]
hasBin: true
tagged-tag@1.0.0:
resolution: {integrity: sha512-yEFYrVhod+hdNyx7g5Bnkkb0G6si8HJurOoOEgC8B/O0uXLHlaey/65KRv6cuWBNhBgHKAROVpc7QyYqE5gFng==}
engines: {node: '>=20'}
tar-fs@3.1.2:
resolution: {integrity: sha512-QGxxTxxyleAdyM3kpFs14ymbYmNFrfY+pHj7Z8FgtbZ7w2//VAgLMac7sT6nRpIHjppXO2AwwEOg0bPFVRcmXw==}
@@ -4093,6 +4095,10 @@ packages:
resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==}
engines: {node: '>=16'}
type-fest@5.4.4:
resolution: {integrity: sha512-JnTrzGu+zPV3aXIUhnyWJj4z/wigMsdYajGLIYakqyOW1nPllzXEJee0QQbHj+CTIQtXGlAjuK0UY+2xTyjVAw==}
engines: {node: '>=20'}
typed-query-selector@2.12.1:
resolution: {integrity: sha512-uzR+FzI8qrUEIu96oaeBJmd9E7CFEiQ3goA5qCVgc4s5llSubcfGHq9yUstZx/k4s9dXHVKsE35YWoFyvEqEHA==}
@@ -4323,7 +4329,7 @@ snapshots:
'@api.global/typedrequest-interfaces': 3.0.19
'@api.global/typedsocket': 4.1.2(@push.rocks/smartserve@2.0.1)
'@cloudflare/workers-types': 4.20260305.1
'@design.estate/dees-catalog': 3.48.2(@tiptap/pm@2.27.2)
'@design.estate/dees-catalog': 3.48.5(@tiptap/pm@2.27.2)
'@design.estate/dees-comms': 1.0.30
'@push.rocks/lik': 6.3.1
'@push.rocks/smartdelay': 3.0.5
@@ -4352,7 +4358,7 @@ snapshots:
'@push.rocks/taskbuffer': 3.5.0
'@push.rocks/webrequest': 4.0.5
'@push.rocks/webstore': 2.0.20
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
lit: 3.3.2
transitivePeerDependencies:
- '@nuxt/kit'
@@ -4383,7 +4389,7 @@ snapshots:
'@push.rocks/smartpromise': 4.2.3
'@push.rocks/smartrequest': 5.0.1
'@push.rocks/smartstring': 4.1.0
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
cloudflare: 5.2.0
transitivePeerDependencies:
- encoding
@@ -4850,7 +4856,7 @@ snapshots:
dependencies:
'@api.global/typedrequest-interfaces': 3.0.19
'@design.estate/dees-catalog@3.48.2(@tiptap/pm@2.27.2)':
'@design.estate/dees-catalog@3.48.5(@tiptap/pm@2.27.2)':
dependencies:
'@design.estate/dees-domtools': 2.5.1
'@design.estate/dees-element': 2.2.3
@@ -4869,8 +4875,8 @@ snapshots:
'@tiptap/extension-typography': 2.27.2(@tiptap/core@2.27.2(@tiptap/pm@2.27.2))
'@tiptap/extension-underline': 2.27.2(@tiptap/core@2.27.2(@tiptap/pm@2.27.2))
'@tiptap/starter-kit': 2.27.2
'@tsclass/tsclass': 9.3.0
apexcharts: 5.10.3
'@tsclass/tsclass': 9.4.0
apexcharts: 5.10.4
highlight.js: 11.11.1
ibantools: 4.5.1
lucide: 0.577.0
@@ -5862,7 +5868,7 @@ snapshots:
'@push.rocks/smartstring': 4.1.0
'@push.rocks/smartunique': 3.0.9
'@push.rocks/taskbuffer': 3.5.0
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
transitivePeerDependencies:
- '@nuxt/kit'
- aws-crt
@@ -5888,7 +5894,7 @@ snapshots:
'@push.rocks/smartjson': 5.2.0
'@push.rocks/smartpath': 6.0.0
'@push.rocks/smartpromise': 4.2.3
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
mongodb: 6.21.0(socks@2.8.7)
transitivePeerDependencies:
- '@aws-sdk/credential-providers'
@@ -5909,7 +5915,7 @@ snapshots:
'@push.rocks/smartpromise': 4.2.3
'@push.rocks/smartrx': 3.0.10
'@push.rocks/taskbuffer': 3.5.0
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
transitivePeerDependencies:
- '@nuxt/kit'
- react
@@ -5945,7 +5951,7 @@ snapshots:
'@push.rocks/smarttime': 4.2.3
'@push.rocks/smartunique': 3.0.9
'@push.rocks/taskbuffer': 6.1.2
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
transitivePeerDependencies:
- '@aws-sdk/credential-providers'
- '@mongodb-js/zstd'
@@ -6013,7 +6019,7 @@ snapshots:
'@push.rocks/smartstream': 3.4.0
'@push.rocks/smartstring': 4.1.0
'@push.rocks/smartunique': 3.0.9
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
transitivePeerDependencies:
- aws-crt
@@ -6065,7 +6071,7 @@ snapshots:
'@push.rocks/smarttime': 4.2.3
'@push.rocks/smartunique': 3.0.9
'@push.rocks/taskbuffer': 3.5.0
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
mongodb: 6.21.0(socks@2.8.7)
transitivePeerDependencies:
- '@aws-sdk/credential-providers'
@@ -6095,7 +6101,7 @@ snapshots:
'@push.rocks/smarttime': 4.2.3
'@push.rocks/smartunique': 3.0.9
'@push.rocks/taskbuffer': 3.5.0
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
mongodb: 7.1.0(socks@2.8.7)
transitivePeerDependencies:
- '@aws-sdk/credential-providers'
@@ -6122,8 +6128,8 @@ snapshots:
'@push.rocks/smartdelay': 3.0.5
'@push.rocks/smartenv': 6.0.0
'@push.rocks/smartpromise': 4.2.3
'@push.rocks/smartrust': 1.3.1
'@tsclass/tsclass': 9.3.0
'@push.rocks/smartrust': 1.3.2
'@tsclass/tsclass': 9.4.0
acme-client: 5.4.0
minimatch: 10.2.4
transitivePeerDependencies:
@@ -6162,7 +6168,7 @@ snapshots:
'@push.rocks/smartfeed@1.4.0':
dependencies:
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
fast-xml-parser: 4.5.4
'@push.rocks/smartfile-interfaces@1.0.7': {}
@@ -6224,7 +6230,7 @@ snapshots:
'@push.rocks/smartfs@1.5.0':
dependencies:
'@push.rocks/smartpath': 6.0.0
'@push.rocks/smartrust': 1.3.1
'@push.rocks/smartrust': 1.3.2
'@push.rocks/smartguard@3.1.0':
dependencies:
@@ -6313,7 +6319,7 @@ snapshots:
'@push.rocks/smartpromise': 4.2.3
'@push.rocks/smarttime': 4.2.3
'@push.rocks/webrequest': 4.0.5
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
'@push.rocks/smartmail@2.2.0':
dependencies:
@@ -6423,9 +6429,9 @@ snapshots:
'@push.rocks/smartlog': 3.2.1
'@push.rocks/smartmail': 2.2.0
'@push.rocks/smartpath': 6.0.0
'@push.rocks/smartrust': 1.3.1
'@tsclass/tsclass': 9.3.0
lru-cache: 11.2.6
'@push.rocks/smartrust': 1.3.2
'@tsclass/tsclass': 9.4.0
lru-cache: 11.2.7
mailparser: 3.9.3
uuid: 13.0.0
transitivePeerDependencies:
@@ -6505,7 +6511,7 @@ snapshots:
'@push.rocks/smartpuppeteer': 2.0.5(typescript@5.9.3)
'@push.rocks/smartserve': 2.0.1
'@push.rocks/smartunique': 3.0.9
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
pdf-lib: 1.17.1
pdf2json: 4.0.2
transitivePeerDependencies:
@@ -6528,12 +6534,12 @@ snapshots:
'@push.rocks/smartpromise@4.2.3': {}
'@push.rocks/smartproxy@25.10.4':
'@push.rocks/smartproxy@25.11.24':
dependencies:
'@push.rocks/smartcrypto': 2.0.4
'@push.rocks/smartlog': 3.2.1
'@push.rocks/smartrust': 1.3.1
'@tsclass/tsclass': 9.3.0
'@push.rocks/smartrust': 1.3.2
'@tsclass/tsclass': 9.4.0
minimatch: 10.2.4
'@push.rocks/smartpuppeteer@2.0.5(typescript@5.9.3)':
@@ -6587,7 +6593,7 @@ snapshots:
'@push.rocks/smartrx': 3.0.10
path-to-regexp: 8.3.0
'@push.rocks/smartrust@1.3.1':
'@push.rocks/smartrust@1.3.2':
dependencies:
'@push.rocks/smartpath': 6.0.0
@@ -6599,8 +6605,8 @@ snapshots:
'@push.rocks/smarts3@5.3.0':
dependencies:
'@push.rocks/smartpath': 6.0.0
'@push.rocks/smartrust': 1.3.1
'@tsclass/tsclass': 9.3.0
'@push.rocks/smartrust': 1.3.2
'@tsclass/tsclass': 9.4.0
'@push.rocks/smartserve@2.0.1':
dependencies:
@@ -6630,7 +6636,7 @@ snapshots:
'@push.rocks/smartxml': 2.0.0
'@push.rocks/smartyaml': 3.0.4
'@push.rocks/webrequest': 4.0.5
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
'@push.rocks/smartspawn@3.0.3':
dependencies:
@@ -6926,9 +6932,9 @@ snapshots:
domhandler: 5.0.3
selderee: 0.11.0
'@serve.zone/catalog@2.5.0(@tiptap/pm@2.27.2)':
'@serve.zone/catalog@2.7.0(@tiptap/pm@2.27.2)':
dependencies:
'@design.estate/dees-catalog': 3.48.2(@tiptap/pm@2.27.2)
'@design.estate/dees-catalog': 3.48.5(@tiptap/pm@2.27.2)
'@design.estate/dees-domtools': 2.5.1
'@design.estate/dees-element': 2.2.3
'@design.estate/dees-wcctools': 3.8.0
@@ -6943,12 +6949,12 @@ snapshots:
dependencies:
'@api.global/typedrequest-interfaces': 3.0.19
'@push.rocks/smartlog-interfaces': 3.0.2
'@tsclass/tsclass': 9.3.0
'@tsclass/tsclass': 9.4.0
'@serve.zone/remoteingress@4.4.0':
'@serve.zone/remoteingress@4.9.0':
dependencies:
'@push.rocks/qenv': 6.1.3
'@push.rocks/smartrust': 1.3.1
'@push.rocks/smartrust': 1.3.2
'@sindresorhus/is@5.6.0': {}
@@ -7463,9 +7469,9 @@ snapshots:
dependencies:
type-fest: 4.41.0
'@tsclass/tsclass@9.3.0':
'@tsclass/tsclass@9.4.0':
dependencies:
type-fest: 4.41.0
type-fest: 5.4.4
'@tybys/wasm-util@0.10.1':
dependencies:
@@ -7623,8 +7629,6 @@ snapshots:
'@ungap/structured-clone@1.3.0': {}
'@yr/monotone-cubic-spline@1.0.3': {}
'@zone-eu/mailsplit@5.4.8':
dependencies:
libbase64: 1.3.0
@@ -7669,9 +7673,7 @@ snapshots:
any-base@1.1.0: {}
apexcharts@5.10.3:
dependencies:
'@yr/monotone-cubic-spline': 1.0.3
apexcharts@5.10.4: {}
argparse@1.0.10:
dependencies:
@@ -8697,7 +8699,7 @@ snapshots:
lru-cache@10.4.3: {}
lru-cache@11.2.6: {}
lru-cache@11.2.7: {}
lru-cache@7.18.3: {}
@@ -9339,7 +9341,7 @@ snapshots:
path-scurry@2.0.2:
dependencies:
lru-cache: 11.2.6
lru-cache: 11.2.7
minipass: 7.1.3
path-to-regexp@8.3.0: {}
@@ -9916,6 +9918,8 @@ snapshots:
systeminformation@5.31.3: {}
tagged-tag@1.0.0: {}
tar-fs@3.1.2:
dependencies:
pump: 3.0.4
@@ -10029,6 +10033,10 @@ snapshots:
type-fest@4.41.0: {}
type-fest@5.4.4:
dependencies:
tagged-tag: 1.0.0
typed-query-selector@2.12.1: {}
typescript@5.9.3: {}

View File

@@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@serve.zone/dcrouter',
version: '11.2.9',
version: '11.3.0',
description: 'A multifaceted routing service handling mail and SMS delivery functions.'
}

View File

@@ -5,6 +5,7 @@ export { UnifiedEmailServer } from '@push.rocks/smartmta';
export type { IUnifiedEmailServerOptions, IEmailRoute, IEmailDomainConfig } from '@push.rocks/smartmta';
// DcRouter
import { DcRouter } from './classes.dcrouter.js';
export * from './classes.dcrouter.js';
// RADIUS module
@@ -13,4 +14,24 @@ export * from './radius/index.js';
// Remote Ingress module
export * from './remoteingress/index.js';
export const runCli = async () => {};
export const runCli = async () => {
let options: import('./classes.dcrouter.js').IDcRouterOptions = {};
if (process.env.DCROUTER_MODE === 'OCI_CONTAINER') {
const { getOciContainerConfig } = await import('../ts_oci_container/index.js');
options = getOciContainerConfig();
console.log('[DCRouter] Starting in OCI Container mode...');
}
const dcRouter = new DcRouter(options);
await dcRouter.start();
console.log('[DCRouter] Running. Send SIGTERM or SIGINT to stop.');
const shutdown = async () => {
console.log('[DCRouter] Shutting down...');
await dcRouter.stop();
process.exit(0);
};
process.on('SIGINT', shutdown);
process.on('SIGTERM', shutdown);
};

100
ts_oci_container/index.ts Normal file
View File

@@ -0,0 +1,100 @@
import * as plugins from './plugins.js';
import type { IDcRouterOptions } from '../ts/classes.dcrouter.js';
/**
* Parses a comma-separated env var into a string array.
* Returns undefined if the env var is not set or empty.
*/
function parseCommaSeparated(envVar: string | undefined): string[] | undefined {
if (!envVar || envVar.trim() === '') return undefined;
return envVar.split(',').map((s) => s.trim()).filter(Boolean);
}
/**
* Parses a comma-separated env var into a number array.
* Returns undefined if the env var is not set or empty.
*/
function parseCommaSeparatedNumbers(envVar: string | undefined): number[] | undefined {
const parts = parseCommaSeparated(envVar);
if (!parts) return undefined;
return parts.map((s) => parseInt(s, 10)).filter((n) => !isNaN(n));
}
/**
* Builds IDcRouterOptions from environment variables for OCI container mode.
*
* If DCROUTER_CONFIG_PATH is set and the file exists, it is loaded as a JSON base config.
* Individual env vars are then applied as overrides on top.
*/
export function getOciContainerConfig(): IDcRouterOptions {
let options: IDcRouterOptions = {};
// Load JSON config file if specified
const configPath = process.env.DCROUTER_CONFIG_PATH;
if (configPath && plugins.fs.existsSync(configPath)) {
const raw = plugins.fs.readFileSync(configPath, 'utf8');
options = JSON.parse(raw);
console.log(`[OCI Container] Loaded config from ${configPath}`);
}
// Apply env var overrides
if (process.env.DCROUTER_BASE_DIR) {
options.baseDir = process.env.DCROUTER_BASE_DIR;
}
// TLS config
const tlsEmail = process.env.DCROUTER_TLS_EMAIL;
const tlsDomain = process.env.DCROUTER_TLS_DOMAIN;
if (tlsEmail || tlsDomain) {
options.tls = {
...options.tls,
contactEmail: tlsEmail || options.tls?.contactEmail || '',
...(tlsDomain ? { domain: tlsDomain } : {}),
};
}
// Network config
if (process.env.DCROUTER_PUBLIC_IP) {
options.publicIp = process.env.DCROUTER_PUBLIC_IP;
}
const proxyIps = parseCommaSeparated(process.env.DCROUTER_PROXY_IPS);
if (proxyIps) {
options.proxyIps = proxyIps;
}
// DNS config
const nsDomains = parseCommaSeparated(process.env.DCROUTER_DNS_NS_DOMAINS);
if (nsDomains) {
options.dnsNsDomains = nsDomains;
}
const dnsScopes = parseCommaSeparated(process.env.DCROUTER_DNS_SCOPES);
if (dnsScopes) {
options.dnsScopes = dnsScopes;
}
// Email config
const emailHostname = process.env.DCROUTER_EMAIL_HOSTNAME;
const emailPorts = parseCommaSeparatedNumbers(process.env.DCROUTER_EMAIL_PORTS);
if (emailHostname || emailPorts) {
options.emailConfig = {
...options.emailConfig,
...(emailHostname ? { hostname: emailHostname } : {}),
...(emailPorts ? { ports: emailPorts } : {}),
domains: options.emailConfig?.domains || [],
routes: options.emailConfig?.routes || [],
} as IDcRouterOptions['emailConfig'];
}
// Cache config
const cacheEnabled = process.env.DCROUTER_CACHE_ENABLED;
if (cacheEnabled !== undefined) {
options.cacheConfig = {
...options.cacheConfig,
enabled: cacheEnabled === 'true',
};
}
return options;
}

View File

@@ -0,0 +1,7 @@
import * as fs from 'fs';
import * as path from 'path';
export {
fs,
path,
};

View File

@@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@serve.zone/dcrouter',
version: '11.2.9',
version: '11.3.0',
description: 'A multifaceted routing service handling mail and SMS delivery functions.'
}