Skip to content

Commit d9e04d1

Browse files
committed
fix: start collaboration service for cs3-wopi so /app/open works
1 parent 3824440 commit d9e04d1

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

‎ocis-setup/action.yml‎

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,7 @@ runs:
463463
echo "All WOPI apps ready."
464464
465465
- name: Start collaboration services
466-
if: "inputs.collaboration-apps != '' && !contains(inputs.collaboration-apps, 'cs3-wopi')"
466+
if: "inputs.collaboration-apps != ''"
467467
shell: bash
468468
env:
469469
COLLAB_APPS: ${{ inputs.collaboration-apps }}
@@ -472,7 +472,7 @@ runs:
472472
CONFIG_DIR="${HOME}/.ocis/config"
473473
474474
start_collab() {
475-
local name=$1 app_name=$2 product=$3 addr=$4 grpc=$5 http=$6 debug=$7
475+
local name=$1 app_name=$2 product=$3 addr=$4 grpc=$5 http=$6 debug=$7 wopi_src=${8:-}
476476
env \
477477
OCIS_URL="$OCIS_URL" \
478478
OCIS_CONFIG_DIR="$CONFIG_DIR" \
@@ -490,7 +490,7 @@ runs:
490490
COLLABORATION_APP_NAME="$app_name" \
491491
COLLABORATION_APP_PRODUCT="$product" \
492492
COLLABORATION_APP_ADDR="$addr" \
493-
COLLABORATION_WOPI_SRC="http://localhost:${http}" \
493+
COLLABORATION_WOPI_SRC="${wopi_src:-http://localhost:${http}}" \
494494
ocis collaboration server > "/tmp/collab-${name}.log" 2>&1 &
495495
echo $! > "/tmp/collab-${name}.pid"
496496
echo "collaboration-${name} started (PID $!)"
@@ -499,19 +499,21 @@ runs:
499499
[[ "$COLLAB_APPS" == *collabora* ]] && start_collab collabora Collabora Collabora "https://localhost:9980" 9301 9300 9304
500500
[[ "$COLLAB_APPS" == *onlyoffice* ]] && start_collab onlyoffice OnlyOffice OnlyOffice "https://localhost:443" 9311 9310 9314
501501
[[ "$COLLAB_APPS" == *fakeoffice* ]] && start_collab fakeoffice FakeOffice Microsoft "http://localhost:8080" 9321 9320 9324
502+
# cs3-wopi: oCIS collaboration service points FakeOffice as the app but routes WOPI through cs3org/wopiserver on :9300
503+
[[ "$COLLAB_APPS" == *cs3-wopi* ]] && start_collab cs3-wopi FakeOffice Microsoft "http://localhost:8080" 9321 9320 9324 "http://localhost:9300"
502504
503505
PIDS=()
504-
for name in collabora onlyoffice fakeoffice; do
506+
for name in collabora onlyoffice fakeoffice cs3-wopi; do
505507
[[ "$COLLAB_APPS" != *$name* ]] && continue
506-
port=$(case $name in collabora) echo 9304;; onlyoffice) echo 9314;; fakeoffice) echo 9324;; esac)
508+
port=$(case $name in collabora) echo 9304;; onlyoffice) echo 9314;; fakeoffice) echo 9324;; cs3-wopi) echo 9324;; esac)
507509
( echo "Waiting for collaboration-${name} healthz on :${port}..."
508510
timeout 300 bash -c "until curl -sf http://localhost:${port}/healthz; do sleep 2; done" \
509511
|| (echo "=== collab-${name} log ===" && tail -30 /tmp/collab-${name}.log && exit 1) ) &
510512
PIDS+=($!)
511513
done
512514
for PID in "${PIDS[@]}"; do wait "$PID" || exit 1; done
513515
echo "All collaboration services ready."
514-
echo "WOPI_PORT=9320" >> "$GITHUB_ENV"
516+
[[ "$COLLAB_APPS" == *cs3-wopi* ]] || echo "WOPI_PORT=9320" >> "$GITHUB_ENV"
515517
516518
# -------------------------------------------------------------------------
517519
# 13. cs3-wopi: cs3org/wopiserver + fakeoffice (via collaboration-apps: cs3-wopi)

0 commit comments

Comments
 (0)