diff --git a/Dockerfile b/Dockerfile index 35a6fdadf..c9eff72c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -37,6 +37,8 @@ WORKDIR /web COPY --from=build /web/dist ./dist # Copy in package.json to provide version COPY package.json . +# Copy in the production config generation script +COPY create_config_prod.js . # Copy in the service info generator COPY create_service_info.js . # Copy in the entrypoint, which writes the config file and starts NGINX diff --git a/create_service_info.js b/create_service_info.js index e41ca0686..b17e593c4 100644 --- a/create_service_info.js +++ b/create_service_info.js @@ -28,9 +28,16 @@ const serviceInfo = { }, }; - +const hasGit = (() => { + try { + return childProcess.execSync("which git").toString().trim() === ""; + } catch (_e) { + // Exit code 1 (git not found) + return false; + } +})(); const git = cmd => childProcess.execSync(`git ${cmd}`).toString().trim(); -if (nodeEnv === "development") { +if (nodeEnv === "development" && hasGit) { try { serviceInfo.bento.gitTag = git("describe --tags --abbrev=0"); serviceInfo.bento.gitBranch = git("branch --show-current"); @@ -38,6 +45,8 @@ if (nodeEnv === "development") { } catch (e) { console.warn(`Could not get git information (${e})`); } +} else if (!hasGit) { + console.warn("Could not get git information (missing git)"); } if (typeof require !== "undefined" && require.main === module) { diff --git a/dev.Dockerfile b/dev.Dockerfile index 2fcfdd2ff..38cee9c02 100644 --- a/dev.Dockerfile +++ b/dev.Dockerfile @@ -7,7 +7,9 @@ COPY package-lock.json . RUN npm ci -FROM ghcr.io/bento-platform/bento_base_image:node-debian-2023.03.06 +FROM ghcr.io/bento-platform/bento_base_image:node-debian-2023.03.22 + +LABEL org.opencontainers.image.description="Local development image for Bento Web." WORKDIR /web diff --git a/package-lock.json b/package-lock.json index e2065bc22..4150af319 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "bento_web", - "version": "1.8.0", + "version": "1.8.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "bento_web", - "version": "1.8.0", + "version": "1.8.1", "license": "LGPL-3.0-only", "dependencies": { "antd": "^3.26.20", diff --git a/package.json b/package.json index ed2fbd55f..785d344af 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bento_web", - "version": "1.8.0", + "version": "1.8.1", "description": "Bento platform front-end", "main": "src/index.js", "dependencies": { diff --git a/run.dev.bash b/run.dev.bash index 05945a215..0c5828160 100644 --- a/run.dev.bash +++ b/run.dev.bash @@ -1,14 +1,10 @@ #!/bin/bash -echo "[bento_web] [entrypoint] setting .gitconfig" +# Base image handles making bento_user and setting its .gitconfig -# Set .gitconfig for development -/set_gitconfig.bash - -if [[ -z "${BENTO_WEB_PORT}" ]]; then - # Set default internal port to 80 - export BENTO_WEB_PORT=80 -fi +# Set default internal port to 80 +: "${BENTO_WEB_PORT:=80}" +export BENTO_WEB_PORT # ----- Begin /service-info creation ---------------------------------- echo "[bento_web] [entrypoint] creating service-info file"