fix: Allow local ref's to be served by nginx (#5565)

This commit is contained in:
Wesley Schwengle
2020-06-09 20:16:06 -04:00
committed by GitHub
parent 5217366c09
commit f3539748d3
2 changed files with 11 additions and 2 deletions

View File

@@ -34,6 +34,7 @@ http {
expires 1d;
location ~* \.(?:json|yml|yaml)$ {
#SWAGGER_ROOT
expires -1;
include cors.conf;

View File

@@ -4,6 +4,7 @@ set -e
BASE_URL=${BASE_URL:-/}
NGINX_ROOT=/usr/share/nginx/html
INDEX_FILE=$NGINX_ROOT/index.html
NGINX_CONF=/etc/nginx/nginx.conf
node /usr/share/nginx/configurator $INDEX_FILE
@@ -24,7 +25,7 @@ replace_or_delete_in_index () {
}
if [ "${BASE_URL}" ]; then
sed -i "s|location / {|location $BASE_URL {|g" /etc/nginx/nginx.conf
sed -i "s|location / {|location $BASE_URL {|g" $NGINX_CONF
fi
replace_in_index myApiKeyXXXX123456789 $API_KEY
@@ -37,13 +38,20 @@ fi
if [[ -f "$SWAGGER_JSON" ]]; then
cp -s "$SWAGGER_JSON" "$NGINX_ROOT"
REL_PATH="./$(basename $SWAGGER_JSON)"
if [[ -z "$SWAGGER_ROOT" ]]; then
SWAGGER_ROOT="$(dirname $SWAGGER_JSON)"
fi
sed -i "s|#SWAGGER_ROOT|root $SWAGGER_ROOT;|g" $NGINX_CONF
sed -i "s|https://petstore.swagger.io/v2/swagger.json|$REL_PATH|g" $INDEX_FILE
sed -i "s|http://example.com/api|$REL_PATH|g" $INDEX_FILE
fi
# replace the PORT that nginx listens on if PORT is supplied
if [[ -n "${PORT}" ]]; then
sed -i "s|8080|${PORT}|g" /etc/nginx/nginx.conf
sed -i "s|8080|${PORT}|g" $NGINX_CONF
fi
find $NGINX_ROOT -type f -regex ".*\.\(html\|js\|css\)" -exec sh -c "gzip < {} > {}.gz" \;