Skip to content

Commit 7417b83

Browse files
amtiYoclaude
andcommitted
fix(deploy): mount the Bot API directory with the long volume syntax
A bot token contains a colon and the path to mount contains the token, so Compose's "source:target" form counted three colons and refused: "invalid spec: ... too many colons". CI caught it in validation; it would have failed the same way on the host. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xA348oKfgDBSH1mbUkej3
1 parent d408f95 commit 7417b83

2 files changed

Lines changed: 8 additions & 2 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,9 @@ GitHub Releases.
4646
### Operations
4747

4848
- The WS04 stack mounts `<bot api data>/<token>` and runs as uid 101, the user
49-
the Bot API server writes as. Files are removed after transcription, which a
49+
the Bot API server writes as. The mount uses Compose's long volume syntax:
50+
the path contains the token, the token contains a colon, and `source:target`
51+
splits on colons. Files are removed after transcription, which a
5052
local server never does on its own.
5153

5254
## v0.0.1-beta.1 - 2026-09-06

‎deploy/ws04/compose.yaml‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,12 @@ services:
2121
# directory has to be mounted — but only this bot's own subdirectory. The
2222
# parent holds one subdirectory per bot, each named after that bot's full
2323
# token, and mounting it would hand Voicy every other bot's credentials.
24+
# Long syntax, not "source:target": a bot token contains a colon, and the
25+
# short form splits on colons.
2426
volumes:
25-
- ${BOT_API_HOST_DIR:-/opt/stacks/telegram-bot-api/data}/${TELEGRAM_BOT_TOKEN:?TELEGRAM_BOT_TOKEN must be set for the Bot API files mount}:/var/lib/telegram-bot-api/${TELEGRAM_BOT_TOKEN}
27+
- type: bind
28+
source: ${BOT_API_HOST_DIR:-/opt/stacks/telegram-bot-api/data}/${TELEGRAM_BOT_TOKEN:?TELEGRAM_BOT_TOKEN must be set for the Bot API files mount}
29+
target: /var/lib/telegram-bot-api/${TELEGRAM_BOT_TOKEN}
2630
# The Bot API server writes as uid 101 with mode 0750. Voicy has to read
2731
# those files and delete them afterwards, because a local server never
2832
# reclaims what it produced.

0 commit comments

Comments
 (0)