diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 208c5e09d13a3beafcfa85f35d83affa37dafa00..aa0cf1bd0436538f6bdc0d4381765fa350c6c98f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,49 +3,20 @@
 ####
 
 variables:
-  BUGS_INDEX: ${CI_PROJECT_DIR}/${ETC_HTDOCS_DIR}/bugs-index.html
-  DOCS_BUCKET: nshmp-lib.chs.usgs.gov
-  EC2_LATEST_URL: http://169.254.169.254/latest
-  ETC_HTDOCS_DIR: etc/ci-cd/htdocs
   FAULT_SECTIONS: nshm-fault-sections
   FAULT_SECTIONS_GIT: https://gitlab-ci-token:${CI_JOB_TOKEN}@code.usgs.gov/ghsc/nshmp/${FAULT_SECTIONS}.git
-  HTDOCS_CSS: ${CI_PROJECT_DIR}/${ETC_HTDOCS_DIR}/reports.css
-  HTDOCS_JS: ${CI_PROJECT_DIR}/${ETC_HTDOCS_DIR}/reports.js
   JACOCO_HTML_DIR: ${REPORTS_DIR}/jacoco/test/html
-  JAVADOCS_DIR: build/docs/javadoc
   JUNIT_FILES: build/test-results/test/TEST-*.xml
-  MERGE_REQUEST_DIR: merge-request-docs
-  MERGE_REQUEST_KEY: merge-requests/${CI_BUILD_REF_NAME}
-  PROP_REGION: region
   REPORTS_DIR: build/reports
-  REPORTS_INDEX: ${CI_PROJECT_DIR}/${ETC_HTDOCS_DIR}/reports-index.html
-  SPOTBUGS_REPORTS_DIR: ${REPORTS_DIR}/spotbugs
-  TEST_REPORTS_DIR: ${REPORTS_DIR}/tests/test
 
 ####
 # Stages for CI-CD pipline
 ####
 stages:
   - test
-  - build-javadocs
   - reports
   - trigger
 
-####
-# Setup for AWS CLI.
-# Globals:
-#   (string) EC2_LATEST_URL - URL to get latest info from EC2
-#   (string) PROP_REGION - The AWS region property
-####
-.aws-config:
-  image: python:3
-  before_script:
-    - export PATH=${HOME}/.local/bin:${PATH}
-    - apt-get update
-    - apt-get install jq -y
-    - pip3 install awscli --upgrade --user
-    - export AWS_DEFAULT_REGION=`curl -s ${EC2_LATEST_URL}/dynamic/instance-identity/document | jq .${PROP_REGION} -r`
-
 ####
 # Git clone nshm-fault-sections
 ####
@@ -69,41 +40,6 @@ stages:
 .gradle:
   image: gradle:jdk11
 
-####
-# Docs script anchor.
-# Globals:
-#   (string) CI_PROJECT_DIR - Path to repo in pipeline
-#   (string) JACOCO_HTML_DIR - Path to the Jacoco reports
-#   (string) JAVADOCS_DIR - Path to Java docs
-#   (string) SPOTBUGS_REPORTS_DIR - Path to Spotbugs reports
-#   (string) TEST_REPORTS_DIR - Path to test reports
-###
-.docs:
-  reports: &get-reports |-
-    cp ${REPORTS_INDEX} index.html;
-    cp ${HTDOCS_CSS} .;
-    cp ${HTDOCS_JS} .;
-    # Jacoco reports
-    mkdir coverage;
-    cd coverage;
-    cp -r ${CI_PROJECT_DIR}/${JACOCO_HTML_DIR}/* .;
-    cd ..;
-    # Test reports
-    mkdir tests;
-    cd tests;
-    cp -r ${CI_PROJECT_DIR}/${TEST_REPORTS_DIR}/* .;
-    cd ..;
-    # Spotbugs Reports
-    mkdir bugs;
-    cd bugs;
-    cp -r ${CI_PROJECT_DIR}/${SPOTBUGS_REPORTS_DIR}/* .;
-    mkdir src test;
-    mv main.html src/index.html;
-    mv test.html test/index.html;
-    cp ${BUGS_INDEX} index.html;
-    cp ${HTDOCS_CSS} .;
-    cp ${HTDOCS_JS} .;
-
 ####
 # Build jar file.
 # Globals:
@@ -116,7 +52,8 @@ Build Project:
     - .tags
   stage: test
   only:
-    - merge_request
+    - branches
+    - merge_requests
     - master@ghsc/nshmp/nshmp-lib
   script:
     - ./gradlew assemble;
@@ -133,7 +70,8 @@ Spotless Check:
     - .tags
   stage: test
   only:
-    - merge_request
+    - branches
+    - merge_requests
     - master@ghsc/nshmp/nshmp-lib
   script:
     - ./gradlew spotlessCheck;
@@ -147,7 +85,8 @@ Spotbugs Main:
     - .tags
   stage: test
   only:
-    - merge_request
+    - branches
+    - merge_requests
     - master@ghsc/nshmp/nshmp-lib
   script:
     - ./gradlew spotbugsMain;
@@ -161,7 +100,8 @@ Spotbugs Test:
     - .tags
   stage: test
   only:
-    - merge_request
+    - branches
+    - merge_requests
     - master@ghsc/nshmp/nshmp-lib
   script:
     - ./gradlew spotbugsTest;
@@ -180,7 +120,8 @@ Unit Tests:
     - .tags
   stage: test
   only:
-    - merge_request
+    - branches
+    - merge_requests
     - master@ghsc/nshmp/nshmp-lib
   coverage: '/Total.*?([0-9]{1,3})%/'
   script:
@@ -191,117 +132,3 @@ Unit Tests:
       - ${REPORTS_DIR}
     reports:
       junit: ${JUNIT_FILES}
-
-# ####
-# # Build Java docs
-# # Globals:
-# #   (string) CI_PROJECT_NAME - The name of the project
-# ####
-# Build Javadocs:
-#   extends:
-#     - .tags
-#     - .gradle
-#   stage: build-javadocs
-#   only:
-#     - master@ghsc/nshmp/nshmp-lib
-#   script:
-#     - ./gradlew javadoc;
-#   artifacts:
-#     paths:
-#       - ${JAVADOCS_DIR}
-
-# ####
-# # Upload documents to S3 bucket static site -
-# #   http://nshmp-lib.chs.usgs.gov.s3-website-us-west-2.amazonaws.com/
-# # Globals:
-# #   (string) CI_PROJECT_DIR - Path to repo in pipeline
-# #   (string) CI_PROJECT_NAME - The name of the project
-# #   (string) DOCS_BUCKET - The S3 bucket to put the docs
-# #   (string) JACOCO_HTML_DIR - Path to the Jacoco reports
-# #   (string) JAVADOCS_DIR - Path to Java docs
-# ####
-# Deploy Docs:
-#   extends:
-#     - .aws-config
-#     - .tags
-#   stage: reports
-#   dependencies:
-#     - Unit Tests
-#     - Build Javadocs
-#   only:
-#     - master@ghsc/nshmp/nshmp-lib
-#   script:
-#     # Clean S3 bucket
-#     - aws s3 rm s3://${DOCS_BUCKET} --recursive;
-#     - cd ${JAVADOCS_DIR};
-#     # Get reports
-#     - mkdir reports;
-#     - cd reports;
-#     - *get-reports
-#     # Move to S3 bucket
-#     - aws s3 cp ${CI_PROJECT_DIR}/${JAVADOCS_DIR} s3://${DOCS_BUCKET}/ --recursive;
-
-####
-# Add branch based reports to s3 at -
-#   http://nshmp-lib.chs.usgs.gov.s3-website-us-west-2.amazonaws.com/merge-requests/<branch-name>
-# Globals:
-#   (string) CI_PROJECT_DIR - Path to repo in pipeline
-#   (string) CI_PROJECT_NAME - The name of the project
-#   (string) DOCS_BUCKET - The S3 bucket to put the docs
-#   (string) JACOCO_HTML_DIR - Path to the Jacoco reports
-#   (string) JAVADOCS_DIR - Path to Java docs
-#   (string) MERGE_REQUEST_DIR - Directory name for branch based reports
-#   (string) MERGE_REQUEST_KEY - Path for S3 branch based reports
-####
-Add Branch Based Reports:
-  extends:
-    - .aws-config
-    - .tags
-  stage: reports
-  dependencies:
-    - Unit Tests
-  only:
-    - merge_request
-  script:
-    - mkdir ${MERGE_REQUEST_DIR};
-    - cd ${MERGE_REQUEST_DIR};
-    - *get-reports
-    - |
-      aws s3 cp \
-          ${CI_PROJECT_DIR}/${MERGE_REQUEST_DIR} \
-          s3://${DOCS_BUCKET}/${MERGE_REQUEST_KEY}/ \
-          --recursive;
-
-####
-# Trigger nshmp-ws pipeline to update nshmp-lib dependency in nshmp-ws Docker image.
-#
-# Note: This is temporary until nshmp-lib is published.
-####
-Trigger nshmp-ws:
-  stage: trigger
-  image: node:latest
-  only:
-    - master@ghsc/nshmp/nshmp-lib
-  script:
-    - |
-      curl -X POST \
-          -F token=${NSHMP_WS_TRIGGER_TOKEN} \
-          -F "ref=master" \
-          https://code.usgs.gov/api/v4/projects/2638/trigger/pipeline
-
-####
-# Trigger nshmp-haz-v2 pipeline to update nshmp-lib dependency in nshmp-haz-v2 Docker image.
-#
-# Note: This is temporary until nshmp-lib is published.
-####
-Trigger nshmp-haz-v2:
-  stage: trigger
-  image: node:latest
-  only:
-    - master@ghsc/nshmp/nshmp-lib
-  script:
-    - |
-      curl -X POST \
-          -F token=${NSHMP_HAZ_V2_TRIGGER_TOKEN} \
-          -F "ref=master" \
-          https://code.usgs.gov/api/v4/projects/2148/trigger/pipeline
diff --git a/build.gradle b/build.gradle
index 40b3457367fac3057debdae816e65f8d0950ef15..6ff2256f241de35a6d886ec31b49a8fad8321b16 100644
--- a/build.gradle
+++ b/build.gradle
@@ -15,10 +15,6 @@ plugins {
   id 'java-library'
 }
 
-apply from: "${projectDir}/gradle/git-hooks.gradle"
-apply from: "${projectDir}/gradle/spotbugs.gradle"
-apply from: "${projectDir}/gradle/spotless.gradle"
-
 sourceCompatibility = JavaVersion.VERSION_11
 compileJava.options.encoding = 'UTF-8'
 
@@ -26,6 +22,20 @@ repositories {
   jcenter()
 }
 
+ext {
+  projectName = 'nshmp-lib'
+  spotbugsDir = "./gradle"
+  spotlessDir = "./src/main/resources"
+  gitTag = 'git describe --tags'.execute().text.replace('\n', '') ?: 'unknown'
+  gitLink = '<a href="https://code.usgs.gov/ghsc/nshmp/nshmp-lib">' + gitTag +'</a>'
+  propsPath = '/resources/main/app.properties'
+  docTitle = projectName + ': ' + gitLink
+}
+
+apply from: "${projectDir}/gradle/git-hooks.gradle"
+apply from: "${projectDir}/gradle/spotbugs.gradle"
+apply from: "${projectDir}/gradle/spotless.gradle"
+
 dependencies {
   api 'com.google.guava:guava:28.2-jre'
   api 'com.google.code.gson:gson:2.8.6'
@@ -40,14 +50,6 @@ dependencies {
   testImplementation 'org.hamcrest:hamcrest-library:1.3'
 }
 
-ext {
-  projectName = 'nshmp-lib'
-  gitTag = 'git describe --tags'.execute().text.replace('\n', '') ?: 'unknown'
-  gitLink = '<a href="https://code.usgs.gov/ghsc/nshmp/nshmp-lib">' + gitTag +'</a>'
-  propsPath = '/resources/main/app.properties'
-  docTitle = projectName + ': ' + gitLink
-}
-
 test {
   useJUnitPlatform()
 
diff --git a/etc/ci-cd/htdocs/bugs-index.html b/etc/ci-cd/htdocs/bugs-index.html
deleted file mode 100644
index 82a3fe8b0965c73c6e5ec916dcc2304868353588..0000000000000000000000000000000000000000
--- a/etc/ci-cd/htdocs/bugs-index.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<html>
-  <head>
-    <link
-        rel="stylesheet"
-        href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
-
-    <link rel="stylesheet" href="reports.css">
-  </head>
-
-  <body class="center">
-    <script src="https://d3js.org/d3.v4.min.js" charset="utf-8"></script>
-
-    <script type="module">
-      import { Reports } from './reports.js';
-
-      const links = [
-        {
-          text: 'Spotbugs Reports - src',
-          href: 'src'
-        },
-        {
-          text: 'Spotbugs Reports - test',
-          href: 'test'
-        }
-      ];
-
-      Reports.createCard(links);
-    </script>
-  </body>
-
-</html>
diff --git a/etc/ci-cd/htdocs/reports-index.html b/etc/ci-cd/htdocs/reports-index.html
deleted file mode 100644
index f5be9dbc18847a3473e5f63383383343990461f7..0000000000000000000000000000000000000000
--- a/etc/ci-cd/htdocs/reports-index.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<html>
-  <head>
-    <link
-        rel="stylesheet"
-        href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
-
-    <link rel="stylesheet" href="reports.css">
-  </head>
-
-  <body class="center">
-    <script src="https://d3js.org/d3.v4.min.js" charset="utf-8"></script>
-
-    <script type="module">
-      import { Reports } from './reports.js';
-
-      const links = [
-        {
-          text: 'Code Coverage Reports',
-          href: 'coverage'
-        },
-        {
-          text: 'Code Quality Reports',
-          href: 'quality'
-        },
-        {
-          text: 'Tests Reports',
-          href: 'tests'
-        }
-      ];
-
-      Reports.createCard(links);
-    </script>
-  </body>
-</html>
\ No newline at end of file
diff --git a/etc/ci-cd/htdocs/reports.css b/etc/ci-cd/htdocs/reports.css
deleted file mode 100644
index 8784ec2b18fa1bed51499c04ff69ed1b4de81c11..0000000000000000000000000000000000000000
--- a/etc/ci-cd/htdocs/reports.css
+++ /dev/null
@@ -1,16 +0,0 @@
-
-.center {
-  position: absolute;
-  top: 50%;
-  width: 100%;
-  transform: translate(0, -50%);
-}
-
-.card-margin {
-  margin: 20px;
-}
-
-.card {
-  background-color: #f0f0f0;
-  font-weight: bold;
-}
diff --git a/etc/ci-cd/htdocs/reports.js b/etc/ci-cd/htdocs/reports.js
deleted file mode 100644
index a84b6aac57ea954ea1c379b4ae1ed22ac85bfec5..0000000000000000000000000000000000000000
--- a/etc/ci-cd/htdocs/reports.js
+++ /dev/null
@@ -1,19 +0,0 @@
-
-export class Reports {
-
-  static createCard(links) {
-    d3.select('body')
-        .selectAll('div')
-        .data(links)
-        .enter()
-        .append('div')
-        .attr('class', 'card-margin')
-        .append('div')
-        .attr('class', 'card offset-4 col-4')
-        .append('a')
-        .attr('class', 'card-body text-decoration-none text-reset')
-        .attr('href', link => link.href)
-        .text(link => link.text);
-  }
-
-}
diff --git a/gradle/spotbugs.gradle b/gradle/spotbugs.gradle
index f7b104189c3e600bd7e7e2c39d5d47926ed3afa4..13eba6b86098097e1bdf980e3b9414d4966b5542 100644
--- a/gradle/spotbugs.gradle
+++ b/gradle/spotbugs.gradle
@@ -6,7 +6,7 @@ apply plugin: "com.github.spotbugs"
  * See https://spotbugs.readthedocs.io
  */
 spotbugs {
-  excludeFilter = file("../nshmp-lib/gradle/spotbugs-exclude-filter.xml")
+  excludeFilter = file("${spotbugsDir}/spotbugs-exclude-filter.xml")
   effort = "max"
   ignoreFailures = true // TODO remove once code is up to date
 }
diff --git a/gradle/spotless.gradle b/gradle/spotless.gradle
index bb5d54230e62d024205074204ceac85c2f1f3676..ea12f21d4f23168abe84d152852622d6492d423d 100644
--- a/gradle/spotless.gradle
+++ b/gradle/spotless.gradle
@@ -14,7 +14,7 @@ apply plugin: "com.diffplug.gradle.spotless"
 spotless {
   /* Java formatting */
   java {
-    targetExclude "**/build", "bin", "**/Scratch*.java", "tmp"
+    targetExclude "**/build", "bin", "**/Scratch*.java", "tmp", "lib"
 
     removeUnusedImports()
 
@@ -24,8 +24,8 @@ spotless {
       }
     }
 
-    importOrderFile "${rootDir}/../nshmp-lib/src/main/resources/eclipse.importorder"
-    eclipse().configFile "${rootDir}/../nshmp-lib/src/main/resources/nshmp.eclipse-format.xml"
+    importOrderFile "${spotlessDir}/eclipse.importorder"
+    eclipse().configFile "${spotlessDir}/nshmp.eclipse-format.xml"
 
     indentWithSpaces(2)
     endWithNewline()
@@ -43,7 +43,7 @@ spotless {
   /* Markdown, YAML, .gitignore, Bash, and Dockerfile formatting */
   format "misc", {
     target "**/*.md", "**/*.yml", "**/.gitgnore", "**/*.sh", "**/*Dockerfile"
-    targetExclude "**/build", ".gradle", ".settings", "tmp"
+    targetExclude "**/build", ".gradle", ".settings", "tmp", "lib"
     trimTrailingWhitespace()
     indentWithSpaces(2)
     endWithNewline()
@@ -54,7 +54,7 @@ spotless {
   format "xml", {
     target fileTree(".") {
       include "**/*.xml"
-      exclude "**/build", ".settings", ".classpath", ".project", "tmp", ".gradle"
+      exclude "**/build", ".settings", ".classpath", ".project", "tmp", ".gradle", "lib"
     }
     eclipseWtp("xml")
     indentWithSpaces(2)