diff --git a/Dockerfile.plugin b/Dockerfile.plugin index e0e3235..f43e3a4 100644 --- a/Dockerfile.plugin +++ b/Dockerfile.plugin @@ -116,16 +116,19 @@ ENV USER root ENV MIMIC_DIR /tmp/mycroft/cache/tts/Mimic3TTSPlugin # Start relevant services: -# 1. Start message bus, wait for ready message in log (1 min timeout) -# 2. Start audio service, wait for ready message in log (1 min timeout) +# 1. Start message bus, wait for ready message in log (5 min timeout) +# 2. Start audio service, wait for ready message in log (5 min timeout) # 3. Run mycroft-speak with sample text # 4. Watch cache directory for a file creation (5 min timeout) # 5. Copy first WAV file to known location RUN mycroft-core/bin/mycroft-start bus && \ - timeout 60 tail -f /var/log/mycroft/bus.log | grep -iq 'message bus service started' && \ + timeout 300 tail -n+0 -f /var/log/mycroft/bus.log | grep -iq 'message bus service started' && \ + echo 'Message bus started' && \ mycroft-core/bin/mycroft-start audio && \ - timeout 60 tail -f /var/log/mycroft/audio.log | grep -iq 'audio service is ready' && \ + timeout 300 tail -n+0 -f /var/log/mycroft/audio.log | grep -iq 'audio service is ready' && \ + echo 'Audio service started' && \ xargs -a tests/apope_sample.txt mycroft-core/bin/mycroft-speak && \ + echo 'Speak request sent' && \ mkdir -p "${MIMIC_DIR}" && \ for i in $(seq 1 300); do \ wav_path="$(find "${MIMIC_DIR}" -name '*.wav' | head -n1)"; \ diff --git a/Jenkinsfile b/Jenkinsfile index 75f1554..49f11fa 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -97,11 +97,6 @@ pipeline { // Build, test, and publish plugin distribution package to PyPI stage('Plugin dist') { - environment { - // ARM 32/64-but plugin tests are failing - DOCKER_PLATFORM = 'linux/amd64' - } - steps { sh 'make plugin-dist' } diff --git a/Makefile b/Makefile index d4f5754..8f0f57e 100644 --- a/Makefile +++ b/Makefile @@ -27,7 +27,7 @@ DOCKER_TAG ?= mycroftai/mimic3 dist: echo "$(DOCKER_PLATFORM)" | sed -e 's/,/\n/g' | \ while read -r platform; do \ - docker buildx build . -f Dockerfile.dist --platform $(DOCKER_PLATFORM) --output "type=local,dest=dist/"; \ + docker buildx build . -f Dockerfile.dist --platform "$${platform}" --output "type=local,dest=dist/"; \ done # Create virtual environment and install in editable mode locally. @@ -37,10 +37,7 @@ install: # Create self-contained Docker image. # Also tests functionality. docker: - echo "$(DOCKER_PLATFORM)" | sed -e 's/,/\n/g' | \ - while read -r platform; do \ - docker buildx build . -f Dockerfile --platform $(DOCKER_PLATFORM) --tag "$(DOCKER_TAG)" $(DOCKER_OUTPUT); \ - done + docker buildx build . -f Dockerfile --platform $(DOCKER_PLATFORM) --tag "$(DOCKER_TAG)" $(DOCKER_OUTPUT) # Create self-container Docker image with GPU support. # Requires nvidia-docker. @@ -53,7 +50,7 @@ docker-gpu: sample: echo "$(DOCKER_PLATFORM)" | sed -e 's/,/\n/g' | \ while read -r platform; do \ - docker buildx build . -f Dockerfile.sample --platform $(DOCKER_PLATFORM) --output "type=local,dest=tests/"; \ + docker buildx build . -f Dockerfile.sample --platform "$${platform}" --output "type=local,dest=tests/"; \ done # Create Debian packages (packaged with apope voice). @@ -61,7 +58,7 @@ sample: debian: echo "$(DOCKER_PLATFORM)" | sed -e 's/,/\n/g' | \ while read -r platform; do \ - docker buildx build . -f Dockerfile.debian --platform $(DOCKER_PLATFORM) --output "type=local,dest=dist/"; \ + docker buildx build . -f Dockerfile.debian --platform "$${platform}" --output "type=local,dest=dist/"; \ done # Build TTS plugin distribution package. @@ -70,5 +67,5 @@ debian: plugin-dist: echo "$(DOCKER_PLATFORM)" | sed -e 's/,/\n/g' | \ while read -r platform; do \ - docker buildx build . -f Dockerfile.plugin --platform $(DOCKER_PLATFORM) --output "type=local,dest=dist/"; \ + docker buildx build . -f Dockerfile.plugin --platform "$${platform}" --output "type=local,dest=dist/"; \ done