#!/bin/sh # the launcher file will launch the correct app / worker based on the given env variable # the main goal of that launcher is to be used as a Docker entrypoint # APP_TYPE: Can be api or worker case "$APP_TYPE" in {{ if eq (len .APIs) 1 }} # API api) exec /app/{{ (index .APIs 0).Binary }} ;; {{ else if gt (len .APIs) 1 }} {{range .APIs}} # API {{.Name}} {{.Name}}) exec /app/{{.Binary}} ;; {{end}} {{end}} {{- if ne (len .Workers) 0 }} # Workers worker) case "$WORKER_NAME" in {{range .Workers}} # Worker {{.Name}} {{.Name}}) exec /app/{{.Binary}} ;; {{end}} # otherwise *) echo "** invalid WORKER_NAME='$WORKER_NAME'. Please use a valid worker name!" exit 1 ;; esac ;; {{end}} # otherwise *) echo "** invalid APP_TYPE='$APP_TYPE' ! Please use API or WORKER!" exit 1 ;; esac