diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a62de946595d52bccb0aedac4e7a70bdb43ada53..b51859f91273afa4d217cb2a6d2cfee5bf0ff4ae 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,14 @@ variables: GITLAB_TOKEN: '${CI_JOB_TOKEN}' + NODE_IMAGE_NAME: ${CODE_REGISTRY_IMAGE}/${CI_PROJECT_NAME}:${CI_COMMIT_REF_SLUG} + +include: + - project: 'ghsc/hazdev/pipeline-build-template' + ref: '1.1.3' + file: 'templates/library.yml' stages: + - node-image - test - publish @@ -21,15 +28,31 @@ workflow: #### # Template: Run Node #### + .node: - image: ${DEVOPS_REGISTRY}usgs/node:12 - extends: .dev-tags - only: - - branches - - merge_requests - - ${CI_DEFAULT_BRANCH}@ghsc/nshmp/disagg-d3 + image: ${NODE_IMAGE_NAME} + extends: + - .tags::development before_script: - - npm ci + +#### +# Stage: Node Image +#### + +Build Node Image: + extends: + - .dind + - .tags::build + script: + - | + docker build \ + --build-arg FROM_IMAGE=${DEVOPS_REGISTRY}usgs/node:latest \ + --file "Dockerfile" \ + --pull \ + --tag ${NODE_IMAGE_NAME} \ + . + - docker push ${NODE_IMAGE_NAME} + stage: node-image #### # Stage: test diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..b02f452d6a08250157099676092d52b569236e26 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +ARG FROM_IMAGE=usgs/node:latest + +FROM ${FROM_IMAGE} + +USER root + +RUN yum install -y git + +USER usgs-user