From 15211faa847772b6aa45a83f0e631af53ae62ac3 Mon Sep 17 00:00:00 2001
From: Brandon Clayton <bclayton@usgs.gov>
Date: Mon, 22 Mar 2021 11:24:36 -0600
Subject: [PATCH] point back to S3 for now

---
 .gitlab-ci.yml           |  8 ++++++
 Dockerfile               | 56 ++++++++++++++--------------------------
 docker-entrypoint.sh     | 32 -----------------------
 scripts/nshmp-netcdf.yml |  1 -
 4 files changed, 28 insertions(+), 69 deletions(-)
 delete mode 100644 docker-entrypoint.sh

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 01ebdbe..7e0f5f8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,6 +7,9 @@ variables:
   PIPELINE_IMAGE_NAME: ${CODE_REGISTRY_IMAGE}/${CI_PROJECT_NAME}--pipeline
   POETRY_CACHE_DIR: ${CI_PROJECT_DIR}/tmp/.poetry
   REPORTS_DIR: build/reports
+  # TODO: Remove hard coded url
+  S3_BUCKET: https://nshmp-netcdf-lp-development-rbucket-1of3d1x45yfd9.s3-us-west-2.amazonaws.com
+
 
 # Do not run for merge requests
 workflow:
@@ -158,6 +161,10 @@ Java - Build Project:
   stage: build
 
 Java - Build Image 2018:
+  before_script:
+    - apk add curl
+    - mkdir DATA
+    - curl -SL ${DATA_URL} -o DATA/data.nc
   extends:
     - .build
   rules:
@@ -179,6 +186,7 @@ Java - Build Image 2018:
       BUILD_IMAGE=${DEVOPS_REGISTRY}usgs/java:11
       FROM_IMAGE=${DEVOPS_REGISTRY}usgs/java:11
       ci_job_token=${CI_JOB_TOKEN}
+      netcdf_file=DATA/data.nc
 
 Java - Unit Tests:
   artifacts:
diff --git a/Dockerfile b/Dockerfile
index 587625d..acf6871 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -3,11 +3,6 @@
 #   docker build
 #       --build-arg gitlab_token=<token>
 #       -t nshmp-netcdf .
-#
-# Install:
-#   - Python 3.9
-#   - Poetry
-#   - NetCDF
 ####
 
 ARG BUILD_IMAGE=usgs/java:11
@@ -35,7 +30,14 @@ ENV CI_JOB_TOKEN ${ci_job_token}
 
 WORKDIR ${workdir}
 
-COPY . .
+COPY build.gradle .
+COPY .git .git
+COPY gradle gradle
+COPY gradle.properties .
+COPY gradlew .
+COPY settings.gradle .
+COPY src src
+COPY openapi.properties .
 
 RUN ./gradlew assemble \
     && mv ${libs_dir}/*-all.jar ${jar_file}
@@ -45,6 +47,12 @@ RUN ./gradlew assemble \
 ####
 FROM ${FROM_IMAGE}
 
+# The NetCDF file to read in
+ARG netcdf_file="src/main/resources/default.nc"
+
+# The NetCDF file to read in
+ARG netcdf_file="src/main/resources/default.nc"
+
 # The NSHM to use
 # Available NSHM to run:
 #   - CONUS_2018A
@@ -55,39 +63,15 @@ ENV CONTEXT_PATH "/"
 ARG jar_file
 ARG project
 ARG workdir
+
 ENV PROJECT ${project}
 ENV NETCDF_FILE ${netcdf_file}
 
-ENV PYTHON_URL="https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tgz"
-ENV PIP_CERT=${SSL_CERT_FILE}
-
-RUN yum install -y epel-release dnf-plugins-core \
-    && yum config-manager --set-enabled powertools \
-    && yum install -y  \
-      gcc \
-      make \
-      netcdf \
-      openssl-devel \
-      bzip2-devel \
-      libffi-devel \
-      zlib-devel  \
-    && yum clean all
-
-WORKDIR /python
-
-RUN curl -sS  "${PYTHON_URL}" | tar xz --strip-components=1 \
-    && ./configure --enable-optimizations --silent \
-    && make install --silent \
-    && curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3
-
-WORKDIR ${workdir}
+COPY ${NETCDF_FILE} ${NETCDF_FILE}
 
-COPY --from=builder ${jar_file} ${project}.jar
-COPY src/main/python src/main/python
-COPY src/main/resources src/main/resources
-COPY poetry.lock .
-COPY pyproject.toml .
-COPY docker-entrypoint.sh .
+ENTRYPOINT /usr/bin/java -jar ${PROJECT}.jar \
+    "-Dmicronaut.server.context-path=${CONTEXT_PATH}" \
+    -nshm=${NSHM} \
+    -netcdf=${NETCDF_FILE}
 
 EXPOSE 8080
-ENTRYPOINT [ "bash", "docker-entrypoint.sh" ]
diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh
deleted file mode 100644
index 7315241..0000000
--- a/docker-entrypoint.sh
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/bin/bash
-
-INSTALL_DATABASE="${INSTALL_DATABASE:-false}";
-NETCDF_FILE="${NETCDF_FILE:-"/app/data.nc"}";
-NSHM="${NSHM:-"CONUS_2018A"}";
-PROJECT="${PROJECT:-nshmp-netcdf}";
-
-# TODO: Remove option to install database in container when deployed to AWS
-if [ "${INSTALL_DATABASE}" == "true" ]; then
-  export REQUESTS_CA_BUNDLE="${SSL_CERT_FILE}";
-  export PATH="$HOME/.poetry/bin:$PATH";
-
-  poetry install;
-
-  case "${NSHM}" in
-    "CONUS_2018A")
-      poetry run netcdf \
-        --2018A \
-        --clean-ascii \
-        --database-directory="/app/DATA" \
-        --netcdf-filename="${NETCDF_FILE}";
-      ;;
-  *)
-    printf "ERROR: NSHM %s not supported" "${NSHM}";
-    ;;
-  esac
-fi
-
-/usr/bin/java -jar "${PROJECT}.jar" \
-    "-Dmicronaut.server.context-path=${CONTEXT_PATH}" \
-    -nshm="${NSHM}" \
-    -netcdf="${NETCDF_FILE}";
diff --git a/scripts/nshmp-netcdf.yml b/scripts/nshmp-netcdf.yml
index 619db08..1f1ff7b 100644
--- a/scripts/nshmp-netcdf.yml
+++ b/scripts/nshmp-netcdf.yml
@@ -23,4 +23,3 @@ services:
     environment:
       NSHM: 'CONUS_2018A'
       CONTEXT_PATH: '/nshmp/ws/conus-2018/static'
-      INSTALL_DATABASE: 'true'
-- 
GitLab