fix: pin Tasker deploy runner compose project
This commit is contained in:
parent
f8c19d712a
commit
92feff97e6
|
|
@ -92,6 +92,7 @@ COMPONENTS = {
|
||||||
"tasker": {
|
"tasker": {
|
||||||
"payload_root": Path("/volume1/docker/nodedc-platform/tasker"),
|
"payload_root": Path("/volume1/docker/nodedc-platform/tasker"),
|
||||||
"compose_root": Path("/volume1/docker/nodedc-platform/tasker/plane-app"),
|
"compose_root": Path("/volume1/docker/nodedc-platform/tasker/plane-app"),
|
||||||
|
"compose_project": "nodedc-tasker",
|
||||||
"compose_env_file": Path("/volume1/docker/nodedc-platform/tasker/plane-app/.env.synology"),
|
"compose_env_file": Path("/volume1/docker/nodedc-platform/tasker/plane-app/.env.synology"),
|
||||||
"compose_files": (
|
"compose_files": (
|
||||||
Path("/volume1/docker/nodedc-platform/tasker/plane-app/docker-compose.yaml"),
|
Path("/volume1/docker/nodedc-platform/tasker/plane-app/docker-compose.yaml"),
|
||||||
|
|
@ -778,7 +779,22 @@ def component_compose_root(component):
|
||||||
return COMPONENTS[component].get("compose_root", component_root(component))
|
return COMPONENTS[component].get("compose_root", component_root(component))
|
||||||
|
|
||||||
|
|
||||||
|
def component_compose_project(component):
|
||||||
|
return COMPONENTS[component].get("compose_project")
|
||||||
|
|
||||||
|
|
||||||
def component_services(component, entries=None):
|
def component_services(component, entries=None):
|
||||||
|
if component == "tasker" and entries is not None:
|
||||||
|
selected = ["api", "worker", "beat-worker", "web"]
|
||||||
|
touches_compose = any(
|
||||||
|
rel in ("plane-app/docker-compose.yaml", "plane-app/docker-compose.synology.override.yml")
|
||||||
|
for rel in entries
|
||||||
|
)
|
||||||
|
touches_proxy = any(rel == "plane-src/apps/proxy/Caddyfile.ce" for rel in entries)
|
||||||
|
if touches_compose or touches_proxy:
|
||||||
|
selected.append("proxy")
|
||||||
|
return tuple(selected)
|
||||||
|
|
||||||
if component == "platform" and entries is not None:
|
if component == "platform" and entries is not None:
|
||||||
selected = []
|
selected = []
|
||||||
|
|
||||||
|
|
@ -921,6 +937,9 @@ def plan_artifact(artifact):
|
||||||
print(f"type={manifest['type']}")
|
print(f"type={manifest['type']}")
|
||||||
print(f"payload_root={root}")
|
print(f"payload_root={root}")
|
||||||
print(f"compose_root={compose_root}")
|
print(f"compose_root={compose_root}")
|
||||||
|
compose_project = component_compose_project(component)
|
||||||
|
if compose_project:
|
||||||
|
print(f"compose_project={compose_project}")
|
||||||
for build_root, build_args in builds:
|
for build_root, build_args in builds:
|
||||||
print(f"build_root={build_root}")
|
print(f"build_root={build_root}")
|
||||||
print(f"build={' '.join((str(DOCKER),) + tuple(build_args))}")
|
print(f"build={' '.join((str(DOCKER),) + tuple(build_args))}")
|
||||||
|
|
@ -1037,6 +1056,9 @@ def run_build(component, entries=None):
|
||||||
|
|
||||||
def compose_base_cmd(component):
|
def compose_base_cmd(component):
|
||||||
cmd = [str(DOCKER), "compose"]
|
cmd = [str(DOCKER), "compose"]
|
||||||
|
compose_project = component_compose_project(component)
|
||||||
|
if compose_project:
|
||||||
|
cmd.extend(["-p", compose_project])
|
||||||
env_file = component_compose_env_file(component)
|
env_file = component_compose_env_file(component)
|
||||||
if env_file:
|
if env_file:
|
||||||
cmd.extend(["--env-file", str(env_file)])
|
cmd.extend(["--env-file", str(env_file)])
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,29 @@
|
||||||
- Внутренний HTTP edge использует `18080`, AI Workspace Hub — `18081`, Tasker upstream — `18090`, BIM Viewer upstream — `18100`, Ops Agents Gateway upstream — `18190`.
|
- Внутренний HTTP edge использует `18080`, AI Workspace Hub — `18081`, Tasker upstream — `18090`, BIM Viewer upstream — `18100`, Ops Agents Gateway upstream — `18190`.
|
||||||
- Старые порты `9000` и `5678` заняты старым `nodedc-demo` и не используются.
|
- Старые порты `9000` и `5678` заняты старым `nodedc-demo` и не используются.
|
||||||
|
|
||||||
|
## Deploy runner
|
||||||
|
|
||||||
|
`nodedc-deploy` is managed outside the platform runtime tree. The synced install candidate lives in:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/volume1/docker/nodedc-deploy/runner-install/nodedc-deploy
|
||||||
|
```
|
||||||
|
|
||||||
|
The live root-owned runner is:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/local/sbin/nodedc-deploy
|
||||||
|
```
|
||||||
|
|
||||||
|
`deploy-current.sh` syncs the runner candidate into `runner-install`. Promoting it to live is explicit:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo install -o root -g root -m 0755 \
|
||||||
|
/volume1/docker/nodedc-deploy/runner-install/nodedc-deploy \
|
||||||
|
/usr/local/sbin/nodedc-deploy
|
||||||
|
sudo /usr/local/sbin/nodedc-deploy verify-install
|
||||||
|
```
|
||||||
|
|
||||||
## Текущие внешние домены
|
## Текущие внешние домены
|
||||||
|
|
||||||
```text
|
```text
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ set -euo pipefail
|
||||||
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
|
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
PLATFORM_REPO="$(cd -- "${SCRIPT_DIR}/../.." && pwd)"
|
PLATFORM_REPO="$(cd -- "${SCRIPT_DIR}/../.." && pwd)"
|
||||||
NAS_ROOT="${NAS_ROOT:-/Volumes/docker/nodedc-platform}"
|
NAS_ROOT="${NAS_ROOT:-/Volumes/docker/nodedc-platform}"
|
||||||
|
DEPLOY_ROOT="${DEPLOY_ROOT:-$(cd -- "${NAS_ROOT}/.." && pwd)/nodedc-deploy}"
|
||||||
LAUNCHER_REPO="${LAUNCHER_REPO:-}"
|
LAUNCHER_REPO="${LAUNCHER_REPO:-}"
|
||||||
TASKER_REPO="${TASKER_REPO:-}"
|
TASKER_REPO="${TASKER_REPO:-}"
|
||||||
TASKER_SYNC_SOURCE="${TASKER_SYNC_SOURCE:-0}"
|
TASKER_SYNC_SOURCE="${TASKER_SYNC_SOURCE:-0}"
|
||||||
|
|
@ -45,6 +46,12 @@ rsync -av "${RSYNC_METADATA_ARGS[@]}" \
|
||||||
"${PLATFORM_REPO}/infra/synology/clear-authentik-brand-css.sh" \
|
"${PLATFORM_REPO}/infra/synology/clear-authentik-brand-css.sh" \
|
||||||
"${NAS_ROOT}/platform/"
|
"${NAS_ROOT}/platform/"
|
||||||
|
|
||||||
|
mkdir -p "${DEPLOY_ROOT}/runner-install"
|
||||||
|
rsync -av "${RSYNC_METADATA_ARGS[@]}" \
|
||||||
|
"${PLATFORM_REPO}/infra/deploy-runner/nodedc-deploy" \
|
||||||
|
"${DEPLOY_ROOT}/runner-install/nodedc-deploy"
|
||||||
|
chmod 0755 "${DEPLOY_ROOT}/runner-install/nodedc-deploy"
|
||||||
|
|
||||||
mkdir -p "${NAS_ROOT}/platform/notification-core"
|
mkdir -p "${NAS_ROOT}/platform/notification-core"
|
||||||
rsync -av "${RSYNC_METADATA_ARGS[@]}" --delete \
|
rsync -av "${RSYNC_METADATA_ARGS[@]}" --delete \
|
||||||
--exclude='node_modules/' \
|
--exclude='node_modules/' \
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue