diff --git a/Rakefile b/Rakefile
index 974567ef287de1e00eec6b9254aa081f7bfb1e7e..e9afa9e6127c3c2e7ce46cc4b0a3ecb996f02d0e 100644
--- a/Rakefile
+++ b/Rakefile
@@ -35,6 +35,25 @@ end
 
 namespace :valid do
 
+  desc "Run all base checks (homogeneity, duplicates, schema)  -- parameters: [SITE={grenoble,..}] [CLUSTER={yeti,..}] [VERBOSE=1]"
+  task "base" do
+    require 'refrepo/valid/homogeneity'
+    require 'refrepo/valid/input/duplicates'
+    require 'refrepo/valid/input/schema'
+    options = {}
+    options[:sites] = ( ENV['SITE'] ? ENV['SITE'].split(',') : G5K_SITES )
+    options[:clusters] = ( ENV['CLUSTER'] ? ENV['CLUSTER'].split(',') : [] )
+    options[:verbose] = ENV['VERBOSE'].to_i if ENV['VERBOSE']
+
+    puts "# Checking homogeneity ..."
+    ret1 = check_cluster_homogeneity(options)
+    puts "# Checking duplicates ..."
+    ret2 = yaml_input_find_duplicates(options)
+    puts "# Checking schema ..."
+    ret3 = yaml_input_schema_validator(options)
+    exit(ret1 && ret2 && ret3)
+  end
+
   desc "Check homogeneity of clusters -- parameters: [SITE={grenoble,..}] [CLUSTER={yeti,..}] [VERBOSE=1]"
   task "homogeneity" do
     require 'refrepo/valid/homogeneity'