#!/bin/bash # Legacy API keys, not sb_ API keys -> pass apikey through unchanged export LUA_AUTH_EXPR="\$((headers.authorization ~= nil and headers.authorization:sub(1, 10) ~= 'Bearer sb_' and headers.authorization) or headers.apikey)" export LUA_RT_WS_EXPR="\$(query_params.apikey)" # Substitute environment variables in the Kong declarative config awk '{ result = "" rest = $0 while (match(rest, /\$[A-Za-z_][A-Za-z_0-9]*/)) { varname = substr(rest, RSTART + 1, RLENGTH - 1) if (varname in ENVIRON) { result = result substr(rest, 1, RSTART - 1) ENVIRON[varname] } else { result = result substr(rest, 1, RSTART + RLENGTH - 1) } rest = substr(rest, RSTART + RLENGTH) } print result rest }' /home/kong/temp.yml > "$KONG_DECLARATIVE_CONFIG" # Remove empty key-auth credentials (unconfigured opaque keys) sed -i '/^[[:space:]]*- key:[[:space:]]*$/d' "$KONG_DECLARATIVE_CONFIG" exec /entrypoint.sh kong docker-start