diff --git a/darshan-test/automated/README b/darshan-test/automated/README
deleted file mode 100644
index 9da86742d..000000000
--- a/darshan-test/automated/README
+++ /dev/null
@@ -1,2 +0,0 @@
-These test scripts are used by Jenkins to automate testing of the
-darshan runtime library and associated tools.
diff --git a/darshan-test/automated/README.md b/darshan-test/automated/README.md
new file mode 100644
index 000000000..4b8d47c75
--- /dev/null
+++ b/darshan-test/automated/README.md
@@ -0,0 +1,11 @@
+This build script can be used by automated systems (e.g., Github workflows,
+Jenkins, other CI systems) to build/test the Darshan runtime library and
+associated tools.
+
+The following environment variables can be set to influence the behavior of
+the script:
+ - DARSHAN\_INSTALL\_PREFIX - path to install Darshan
+ - DARSHAN\_LOG\_PATH - formatted path to store Darshan logs
+ - DARSHAN\_RUNTIME\_CONFIG\_ARGS - darshan-runtime config args
+ - DARSHAN\_UTIL\_CONFIG\_ARGS - darshan-util config args
+ - DARSHAN\_RUNTIME\_SKIP - skip darshan-runtime build if set
diff --git a/darshan-test/automated/common/build.sh b/darshan-test/automated/common/build.sh
deleted file mode 100644
index 740f7566b..000000000
--- a/darshan-test/automated/common/build.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/bash
-#
-# Build darshan runtime and util code
-#
-fcount=0
-runtime_status=0
-util_status=0
-runtime_result=""
-util_result=""
-thedate=$(date)
-
-cd build/darshan-runtime
-make && make install
-runtime_status=$?
-if [ $runtime_status -ne 0 ]; then
- fcount=$((fcount+1));
- runtime_result=""
-fi
-
-cd ../../build/darshan-util
-make && make install
-util_status=$?
-if [ $util_status -ne 0 ]; then
- fcount=$((fcount+1));
- util_result=""
-fi
-
-cd ../../;
-
-echo "
-
-
-
- $runtime_result
-
-
- $util_result
-
-
-
-" > build-result.xml
-
-return $fcount
diff --git a/darshan-test/automated/common/configure.sh b/darshan-test/automated/common/configure.sh
deleted file mode 100644
index fc70d386c..000000000
--- a/darshan-test/automated/common/configure.sh
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-#
-# Base configure script which calls the system specific version.
-#
-
-status=0
-
-if [[ $NODE_LABELS =~ "CINOW" || $NODE_LABELS =~ "mcs" ]];
-then
- source darshan-test/automated/generic/configure.sh
- status=$?
-elif [[ $NODE_LABELS =~ "Theta" ]];
-then
- source darshan-test/automated/theta/configure.sh
- status=$?
-else
- # unknown machine
- status=100
-fi
-
-return $status
diff --git a/darshan-test/automated/common/setup.sh b/darshan-test/automated/common/setup.sh
deleted file mode 100644
index 1c0760815..000000000
--- a/darshan-test/automated/common/setup.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/bash
-#
-# Create build, install and log directories.
-#
-
-status=0
-thedate=$(date)
-
-git submodule update --init
-status=$((status + $?))
-
-./prepare.sh
-status=$((status + $?))
-
-mkdir -p install
-status=$((status + $?))
-
-mkdir -p logs
-status=$((status + $?))
-
-mkdir -p build/darshan-runtime
-status=$((status + $?))
-
-mkdir -p build/darshan-util
-status=$((status + $?))
-
-echo "
-
-
-
-
-
-
-" > setup-result.xml
-
-return $status
diff --git a/darshan-test/automated/generic/configure.sh b/darshan-test/automated/generic/configure.sh
deleted file mode 100644
index 50ae54d47..000000000
--- a/darshan-test/automated/generic/configure.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/bash
-#
-# Run configure for runtime and utils
-
-basedir=$PWD
-status=0
-fcount=0
-runtime_result=""
-util_result=""
-thedate=$(date)
-
-cd build/darshan-runtime
-../../darshan-runtime/configure --enable-apmpi-mod --prefix=$basedir/install --with-jobid-env=DARSHAN_JOBID --with-log-path=$basedir/logs CC=mpicc
-runtime_status=$?
-if [ $runtime_status -ne 0 ]; then
- fcount=$((fcount+1));
- runtime_result=""
-fi
-
-cd ../darshan-util
-../../darshan-util/configure --enable-apmpi-mod --enable-apxc-mod --prefix=$basedir/install
-util_status=$?
-if [ $util_status -ne 0 ]; then
- fcount=$((fcount+1));
- util_result=""
-fi
-
-cd ../../;
-
-echo "
-
-
-
- $runtime_result
-
-
- $util_result
-
-
-
-" > configure-result.xml
-
-return $fcount
diff --git a/darshan-test/automated/theta/configure.sh b/darshan-test/automated/theta/configure.sh
deleted file mode 100644
index 691645491..000000000
--- a/darshan-test/automated/theta/configure.sh
+++ /dev/null
@@ -1,49 +0,0 @@
-#!/bin/bash
-#
-# Run configure for runtime and utils
-
-basedir=$PWD
-status=0
-fcount=0
-runtime_result=""
-util_result=""
-thedate=$(date)
-
-# unload any darshan module and use GNU compilers
-module unload darshan
-module switch PrgEnv-intel PrgEnv-gnu
-
-cd build/darshan-runtime
-../../darshan-runtime/configure --prefix=$basedir/install --with-mem-align=64 --with-jobid-env=COBALT_JOBID --with-log-path=$basedir/logs --disable-cuserid --host=x86_64 CC=cc
-runtime_status=$?
-if [ $runtime_status -ne 0 ]; then
- fcount=$((fcount+1));
- runtime_result=""
-fi
-
-cd ../darshan-util
-../../darshan-util/configure --prefix=$basedir/install
-util_status=$?
-if [ $util_status -ne 0 ]; then
- fcount=$((fcount+1));
- util_result=""
-fi
-
-cd ../../;
-
-module list
-
-echo "
-
-
-
- $runtime_result
-
-
- $util_result
-
-
-
-" > configure-result.xml
-
-return $fcount
diff --git a/darshan-test/regression/cray-module-alcf-theta/cobalt-submit.sh b/darshan-test/regression/cray-module-alcf-theta/cobalt-submit.sh
deleted file mode 100755
index 529b154fa..000000000
--- a/darshan-test/regression/cray-module-alcf-theta/cobalt-submit.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/bash
-
-nprocs=$DARSHAN_DEFAULT_NPROCS
-nnodes=$COBALT_PARTSIZE
-ppn=$((nprocs / nnodes))
-
-aprun -n $nprocs -N $ppn $@
-EXIT_STATUS=$?
-
-exit $EXIT_STATUS
diff --git a/darshan-test/regression/cray-module-alcf-theta/env.sh b/darshan-test/regression/cray-module-alcf-theta/env.sh
deleted file mode 100755
index 1ce1bbfc8..000000000
--- a/darshan-test/regression/cray-module-alcf-theta/env.sh
+++ /dev/null
@@ -1,35 +0,0 @@
-#!/bin/bash
-
-# General notes
-#######################
-
-# Script to set up the environment for tests on this platform. Must export
-# the following environment variables:
-#
-# DARSHAN_CC: command to compile C programs
-# DARSHAN_CXX: command to compile C++ programs
-# DARSHAN_F90: command to compile Fortran90 programs
-# DARSHAN_F77: command to compile Fortran77 programs
-# DARSHAN_RUNJOB: command to execute a job and wait for its completion
-
-# This script may load optional modules (as in a Cray PE), set LD_PRELOAD
-# variables (as in a dynamically linked environment), or generate mpicc
-# wrappers (as in a statically linked environment).
-
-# Notes specific to this platform (cray-module-alcf-theta)
-########################
-# Use Cray's default compiler wrappers and load the module associated with
-# this darshan install
-#
-# RUNJOB is responsible for submitting a cobalt job, waiting for its
-# completion, and checking its return status
-
-export DARSHAN_CC=cc
-export DARSHAN_CXX=CC
-export DARSHAN_F77=ftn
-export DARSHAN_F90=ftn
-
-export DARSHAN_RUNJOB=$DARSHAN_TESTDIR/$DARSHAN_PLATFORM/runjob.sh
-
-module unload darshan >& /dev/null
-module load $DARSHAN_RUNTIME_PATH/share/craype-2.x/modulefiles/
diff --git a/darshan-test/regression/cray-module-alcf-theta/runjob.sh b/darshan-test/regression/cray-module-alcf-theta/runjob.sh
deleted file mode 100755
index 66c324c43..000000000
--- a/darshan-test/regression/cray-module-alcf-theta/runjob.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/bash
-
-# convert DXT env setting
-if [ -n "${DXT_ENABLE_IO_TRACE+defined}" ]; then
- DXT_ENV="--env DXT_ENABLE_IO_TRACE=$DXT_ENABLE_IO_TRACE"
-fi
-
-# submit job and get job id
-jobid=`qsub --env DARSHAN_LOGFILE=$DARSHAN_LOGFILE --env DARSHAN_DEFAULT_NPROCS=$DARSHAN_DEFAULT_NPROCS $DXT_ENV --proccount $DARSHAN_DEFAULT_NPROCS -A CSC250STDM12 -q debug-cache-quad -t 20 -n 1 --run_project --output $DARSHAN_TMP/$$-tmp.out --error $DARSHAN_TMP/$$-tmp.err --debuglog $DARSHAN_TMP/$$-tmp.debuglog $DARSHAN_TESTDIR/$DARSHAN_PLATFORM/cobalt-submit.sh "$@"`
-
-if [ $? -ne 0 ]; then
- echo "Error: failed to qsub $@"
- exit 1
-fi
-
-output="foo"
-rc=0
-
-# loop as long as qstat succeeds and shows information about job
-while [ -n "$output" -a "$rc" -eq 0 ]; do
- sleep 5
- output=`qstat $jobid`
- rc=$?
-done
-
-# look for return code
-grep "exit code of 0" $DARSHAN_TMP/$$-tmp.debuglog >& /dev/null
-if [ $? -ne 0 ]; then
- # sleep to give time for exit code line to appear in log file
- sleep 5
- grep "exit code of 0" $DARSHAN_TMP/$$-tmp.debuglog >& /dev/null
- if [ $? -ne 0 ]; then
- exit 1
- else
- exit 0
- fi
-else
- exit 0
-fi