diff --git a/app/models/ci/build.rb b/app/models/ci/build.rb
index a421aa64658869259fd89fac98a9092dd7740848..ff100a31e7ca2c332f09b29f312dbbe4737b426a 100644
--- a/app/models/ci/build.rb
+++ b/app/models/ci/build.rb
@@ -35,10 +35,9 @@
 
 module Ci
   class Build < CommitStatus
-    include Compoundable
-    component :eraseable, Gitlab::Ci::Build::Eraseable
-
     include Gitlab::Application.routes.url_helpers
+    include Eraseable
+
     LAZY_ATTRIBUTES = ['trace']
 
     belongs_to :runner, class_name: 'Ci::Runner'
diff --git a/app/models/ci/build/eraseable.rb b/app/models/ci/build/eraseable.rb
new file mode 100644
index 0000000000000000000000000000000000000000..bc427b112ec6c8cbfd1fa2209032a8d443cb3bf9
--- /dev/null
+++ b/app/models/ci/build/eraseable.rb
@@ -0,0 +1,15 @@
+module Ci
+  class Build
+    module Eraseable
+      include ActiveSupport::Concern
+
+      def erase!
+        raise NotImplementedError
+      end
+
+      def erased?
+        raise NotImpementedError
+      end
+    end
+  end
+end
diff --git a/app/models/concerns/compoundable.rb b/app/models/concerns/compoundable.rb
deleted file mode 100644
index 0cef53a1027224929ef81950493671e65eabb324..0000000000000000000000000000000000000000
--- a/app/models/concerns/compoundable.rb
+++ /dev/null
@@ -1,19 +0,0 @@
-module Compoundable
-  extend ActiveSupport::Concern
-
-  class_methods do
-    private
-
-    def component(name, klass)
-      define_method(name) do
-        component_object = instance_variable_get("@#{name}")
-        return component_object if component_object
-        instance_variable_set("@#{name}", klass.new(self))
-      end
-
-      klass.instance_methods(false).each do |method|
-        delegate method, to: name
-      end
-    end
-  end
-end
diff --git a/lib/gitlab/ci/build/eraseable.rb b/lib/gitlab/ci/build/eraseable.rb
deleted file mode 100644
index b7dbc9fb1a92dd3cb7e54a960ef9865f6d4669cb..0000000000000000000000000000000000000000
--- a/lib/gitlab/ci/build/eraseable.rb
+++ /dev/null
@@ -1,25 +0,0 @@
-module Gitlab
-  module Ci
-    module Build
-      class Eraseable
-        def initialize(build)
-          @build = build
-        end
-
-        def erase!
-          raise NotImplementedError
-        end
-
-        def erased?
-          @build.artifacts_file.exists? && @build.artifacts_metadata.exists?
-        end
-
-        private
-
-        def trace_file
-          raise NotImplementedError
-        end
-      end
-    end
-  end
-end