migration_tools.reset_event
[migration-tools.git] / mig
diff --git a/mig b/mig
index 83ab565..e0a6754 100755 (executable)
--- a/mig
+++ b/mig
@@ -251,11 +251,15 @@ adds an extra arbitrary page of notes to the report.  Mig assumes the page file
 This will define a set of tags to use, if not set it will default to Circs, 
 Holds, Actors, Bibs, Assets & Money. 
 
+--debug
+
+Gives more information about what is happening.
+
 --reports_xml 
 
 Allows you to override the default evergreen_staged_report.xml in the mig-xml folder.
 
-=item B<gsheet> --pull spreadsheet_tab or --push postgres_table
+=item B<gsheet> --pull or --push spreadsheet_tab
 
 This uses the gsheet_tracked_table and gsheet_tracked column tables to map a Google Docs Spreadsheet tabs
 with Postgres tables in the mig schema.  The spreadsheet is assumed to share the name as the mig schema. 
@@ -295,82 +299,9 @@ switch($ARGV[0]) {
             pod2usage(-verbose => 2);
         }
     }
-    case "env" {
-        standard_invocation(@ARGV);
-    }
-    case "init" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "status" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "add" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "reporter" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "gsheet" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "remove" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "iconv" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "skip-iconv" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "clean" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "skip-clean" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "link" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "unlink" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "convert" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "stage" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "mapper" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "quicksheet" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
-    case "sql" {
-        Mig::die_if_no_env_migschema();
-        standard_invocation(@ARGV);
-    }
     case "map" {
-        Mig::die_if_no_env_migschema();
     }
     case "load" {
-        Mig::die_if_no_env_migschema();
     }
     case "wdir" {
         print "$MIGWORKDIR\n";
@@ -382,13 +313,20 @@ switch($ARGV[0]) {
         print "$MIGGITDIR\n";
     }
     else {
-        pod2usage(1);
+        standard_invocation(@ARGV);
     }
 }
 
 sub standard_invocation {
     my $cmd = shift;
-    system( $mig_bin . "mig-$cmd", @_ );
+
+    if ($cmd ne 'env') { Mig::die_if_no_env_migschema(); }
+    if (-e $mig_bin . "mig-$cmd") {
+        system( $mig_bin . "mig-$cmd", @_ );
+    } else {
+        system( "mig-$cmd", @_ ) == 0 or die pod2usage(1);
+    }
+
 }