diff --git a/jenkins/riftware/SETTINGS b/jenkins/riftware/SETTINGS
deleted file mode 100644
index 50f9982..0000000
--- a/jenkins/riftware/SETTINGS
+++ /dev/null
@@ -1,24 +0,0 @@
-#   Copyright 2016 RIFT.IO Inc
-#
-#   Licensed under the Apache License, Version 2.0 (the "License");
-#   you may not use this file except in compliance with the License.
-#   You may obtain a copy of the License at
-#
-#       http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing, software
-#   distributed under the License is distributed on an "AS IS" BASIS,
-#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#   See the License for the specific language governing permissions and
-#   limitations under the License.
-# 
-# Settings specific to the riftware MDG
-# 
-# 24 June 2016 -- Jeremy Mordkoff -- Genesis
-#
-# see ../template/SETTINGS for descriptions
-export OSM_BASE_IMAGE=fedora20
-export OSM_BUILD_CONTAINER=rift-build
-export OSM_BUILD_CONTAINER_PRIVILEGED=yes
-export OSM_RUNTIME_CONTAINER=rift-runtime
-export OSM_RUNTIME_CONTAINER_PRIVILEGED=yes
diff --git a/jenkins/riftware/start_build b/jenkins/riftware/start_build
deleted file mode 100755
index 0e3101f..0000000
--- a/jenkins/riftware/start_build
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/bin/bash
-#   Copyright 2016 RIFT.IO Inc
-#
-#   Licensed under the Apache License, Version 2.0 (the "License");
-#   you may not use this file except in compliance with the License.
-#   You may obtain a copy of the License at
-#
-#       http://www.apache.org/licenses/LICENSE-2.0
-#
-#   Unless required by applicable law or agreed to in writing, software
-#   distributed under the License is distributed on an "AS IS" BASIS,
-#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#   See the License for the specific language governing permissions and
-#   limitations under the License.
-# 
-# script to start a build. This is run inside a container
-#
-# 24 June 2016 -- Jeremy Mordkoff -- Genesis
-
-HERE=$(realpath $(dirname $0))
-OSM_JENKINS=$(dirname $HERE)
-. $OSM_JENKINS/common/all_funcs
-export OSM_MDG=riftware
-OSM_load_config
-
-
-if [ -d riftware ]; then
-	INFO "reusing existing workspace"
-	cd riftware
-	git pull 
-else
-	INFO "install pre-requisites"
-    yum install -y yum-utils curl 
-    curl -o /etc/yum.repos.d/release.repo http://buildtracker.riftio.com/repo_file/fc20/OSM/
-    yum install -y --nogpgcheck rw.tools-container-tools rw.tools-scripts
-    /usr/rift/container_tools/mkcontainer  --modes build --internet --latest --repofile /usr/rift/container_tools/riftware.repo
-
-
-	INFO "cloning MDG riftware from $OSM_GIT_URL/riftware"
-    # these were missing once, so just to be safe, install them again here
-    yum -y install cmake wget lcov
-	git clone $OSM_GIT_URL/riftware
-	cd riftware
-fi
-
-./rift-shell -r -- make rw.ext 
-RC=$?
-
-if [ $RC == 0 ]; then
-    ./rift-shell -r -- make -j16 
-    RC=$?
-fi
-
-INFO "done RC = $RC"
-exit $RC
-
-
-
