mirror of
https://github.com/gesellix/Bose-SoundTouch.git
synced 2026-08-18 08:36:13 +00:00
- Add cmd/mock-amazon/main.go (mirrors mock-spotify, uses testutils/amazon)
- Add amazon-mock service to docker-compose.yml (port 8082)
- Add AMAZON_CLIENT_ID/SECRET/TOKEN_URL/PROFILE_URL to docker-compose.ci.yml
- Add amazon_registration.http: registers account via /mgmt/amazon/callback
before the token-refresh test runs (mirrors spotify_registration.http)
- Update {{amazonRefreshToken}} in env to match mock response (Atzr|amazon-refresh-token)
- Log amazon-mock output on test failure in Makefile
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
72 lines
1.8 KiB
YAML
72 lines
1.8 KiB
YAML
services:
|
|
soundtouch-service:
|
|
image: ghcr.io/gesellix/bose-soundtouch:latest
|
|
# build: .
|
|
container_name: soundtouch-service
|
|
# Linux only, required for discovery. Swarm requires host network at the task level.
|
|
# network_mode: host
|
|
ports:
|
|
- "8000:8000"
|
|
- "8443:8443"
|
|
networks:
|
|
- soundtouch-test-net
|
|
environment:
|
|
- PORT=8000
|
|
- HTTPS_PORT=8443
|
|
- DATA_DIR=/app/data
|
|
- LOG_PROXY_BODY=false
|
|
- REDACT_PROXY_LOGS=true
|
|
- RECORD_INTERACTIONS=true
|
|
- DISCOVERY_INTERVAL=5m
|
|
- SERVER_URL=http://${SOUNDTOUCH_HOSTNAME:-soundtouch.local}:8000
|
|
- HTTPS_SERVER_URL=https://${SOUNDTOUCH_HOSTNAME:-soundtouch.local}:8443
|
|
volumes:
|
|
- soundtouch-data:/app/data
|
|
# Use host volume for local development if preferred:
|
|
# - ./data:/app/data
|
|
restart: unless-stopped
|
|
deploy:
|
|
replicas: 1
|
|
restart_policy:
|
|
condition: on-failure
|
|
resources:
|
|
limits:
|
|
cpus: '0.50'
|
|
memory: 512M
|
|
reservations:
|
|
cpus: '0.25'
|
|
memory: 128M
|
|
|
|
spotify-mock:
|
|
image: golang:1.26.2-alpine
|
|
container_name: spotify-mock
|
|
working_dir: /app
|
|
volumes:
|
|
- .:/app
|
|
command: go run ./cmd/mock-spotify/main.go -port 8080
|
|
ports:
|
|
- "8081:8080"
|
|
networks:
|
|
- soundtouch-test-net
|
|
|
|
amazon-mock:
|
|
image: golang:1.26.2-alpine
|
|
container_name: amazon-mock
|
|
working_dir: /app
|
|
volumes:
|
|
- .:/app
|
|
command: go run ./cmd/mock-amazon/main.go -port 8080
|
|
ports:
|
|
- "8082:8080"
|
|
networks:
|
|
- soundtouch-test-net
|
|
|
|
networks:
|
|
soundtouch-test-net:
|
|
name: soundtouch-test-net
|
|
|
|
volumes:
|
|
soundtouch-data:
|
|
# Named volumes are preferred in Swarm. For multi-node persistence,
|
|
# consider using a volume driver like NFS or GlusterFS.
|