diff --git a/config/gitlab.yml.example b/config/gitlab.yml.example
index 8b85981497adecbb42f56c4277f92297f10fc3ea..d3aef44705b4cc869a7f8e93b602bc3aaf9bdf14 100644
--- a/config/gitlab.yml.example
+++ b/config/gitlab.yml.example
@@ -318,10 +318,12 @@ production: &base
   # ==========================
 
   # GitLab Satellites
+  #
+  # Note for maintainers: keep the satellites.path setting until GitLab 9.0 at
+  # least. This setting is fed to 'rm -rf' in
+  # db/migrate/20151023144219_remove_satellites.rb
   satellites:
-    # Relative paths are relative to Rails.root (default: tmp/repo_satellites/)
     path: /home/git/gitlab-satellites/
-    timeout: 30
 
   ## Backup settings
   backup:
diff --git a/config/initializers/1_settings.rb b/config/initializers/1_settings.rb
index d5493ca038d0399671bdffbf62f8c6bb600b010c..65e9b0dcb504ac2694c15284fe8be9715780825f 100644
--- a/config/initializers/1_settings.rb
+++ b/config/initializers/1_settings.rb
@@ -242,9 +242,11 @@ Settings.git['max_size']  ||= 20971520 # 20.megabytes
 Settings.git['bin_path']  ||= '/usr/bin/git'
 Settings.git['timeout']   ||= 10
 
+# Important: keep the satellites.path setting until GitLab 9.0 at
+# least. This setting is fed to 'rm -rf' in
+# db/migrate/20151023144219_remove_satellites.rb
 Settings['satellites'] ||= Settingslogic.new({})
 Settings.satellites['path'] = File.expand_path(Settings.satellites['path'] || "tmp/repo_satellites/", Rails.root)
-Settings.satellites['timeout'] ||= 30
 
 #
 # Extra customization
diff --git a/db/migrate/20151023144219_remove_satellites.rb b/db/migrate/20151023144219_remove_satellites.rb
new file mode 100644
index 0000000000000000000000000000000000000000..e73f300028ac8a2f2c47d0b9ae5e42c16e286834
--- /dev/null
+++ b/db/migrate/20151023144219_remove_satellites.rb
@@ -0,0 +1,17 @@
+require 'fileutils'
+
+class RemoveSatellites < ActiveRecord::Migration
+  def up
+    satellites = Gitlab.config['satellites']
+    return if satellites.nil?
+
+    satellites_path = satellites['path']
+    return if satellites_path.nil?
+
+    FileUtils.rm_rf(satellites_path)
+  end
+
+  def down
+    # Do nothing
+  end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 1551956c8bc6c027eb29f219c2ff4b6d504853fa..0fe113325fa613c5b71331ec07622e964b7f9565 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
 #
 # It's strongly recommended that you check this file into your version control system.
 
-ActiveRecord::Schema.define(version: 20151023112551) do
+ActiveRecord::Schema.define(version: 20151023144219) do
 
   # These are extensions that must be enabled in order to support this database
   enable_extension "plpgsql"