#!/usr/bin/perl
use strict;
use Data::Show;
use Switch;

my $cmd = $ARGV[0];
switch($cmd){
    case /clm/ { &clm; }
    case /prm/ { &prm; }
    case /dmac5dev/ { &dmac5dev; }
    else { warn "No CMD"; }
}

sub dmac5dev{

	sync('dmac5dev');

}

sub clm{

	my $tables = "BPMigration BackOfficeSystem BackOfficeSystemChainConcept BackOfficeSystemCustomer BackSystemOfficeChain BulkEditHistory ChainConcept ChainGroup ChainUnit Country Customer DMAProgramManager DMAVP DistributorCompany DistributorWarehouse EmailNotification EmailNotificationWarehouse Notes OperatingStatus OrderFlag Ownership PreSaleItem Setting OrderInvoiceSystem Status Users Market Routing CustomerSystem CustomerTemplate EntityType WarehouseChain CustomerComment";

	sync('dmaclm',$tables);

}

sub prm{

	my $tables = "DateXRef OPF XMasterSummary ExceptionChains ExceptionDMAWhs ExceptionDistWhs HistorySummaryByChainByDC MasterChainXref MasterDistributorXref MasterItem MasterItemProductTrend MasterItemTrend MasterSummary";

	sync('dmaclm',$tables);
}

sub sync{

	my $db = shift;
   my $tables = shift;


 # mysqldump -uroot -p5XUG8Gak0KmwGubq 1bd3e0294d > /tmp/1bd3e0294d.sql
# -udma -p3lUz1OV2! -hrds1.dmadelivers.com
	# my $sshts = 'ssh ubuntu@clm.dmadelivers.com -i ~/.ssh/dmadelivers2017.pem -t "';
	# my $sshte = '"';
	# my $cdtmp = 'cd /tmp/;';
	# my $srcmysqldump = "/usr/bin/mysqldump -udma -p3lUz1OV2! -hrds1.dmadelivers.com --set-gtid-purged=OFF dmaclm $tables > /tmp/dmaclm.sql;";
	# my $srctgzc = '/bin/tar czvf dmaclm.sql.tgz dmaclm.sql;',
	# my $dstscp = '/usr/bin/scp -i ~/.ssh/dmadelivers2017.pem ubuntu@clm.dmadelivers.com:/tmp/dmaclm.sql.tgz /tmp/;';
	# my $dsttgzx = '/bin/tar -xzv -C /tmp/ -f dmaclm.sql.tgz ';
	# my $dstmysql = '/usr/bin/mysql -uroot -pb3hereNOW! dmaclm < /tmp/dmaclm.sql';

	my $sshts = 'ssh ubuntu@clm.dmadelivers.com -i ~/.ssh/dmadelivers2017.pem -t "';
	my $sshte = '"';
	my $cdtmp = 'cd /tmp/;';
	my $srcmysqldump = "/usr/bin/mysqldump -udma -p3lUz1OV2! -hrds1.dmadelivers.com --set-gtid-purged=OFF $db > /tmp/$db.sql;";
	if($tables){
		$srcmysqldump = "/usr/bin/mysqldump -udma -p3lUz1OV2! -hrds1.dmadelivers.com --set-gtid-purged=OFF $db $tables > /tmp/$db.sql;";
	}
	my $srctgzc = "/bin/tar czvf $db.sql.tgz $db.sql;",
	my $dstscp = "/usr/bin/scp -i ~/.ssh/dmadelivers2017.pem ubuntu\@clm.dmadelivers.com:/tmp/$db.sql.tgz /tmp/;";
	my $dsttgzx = "/bin/tar -xzv -C /tmp/ -f $db.sql.tgz ";
	my $dstmysql = "/usr/bin/mysql -uroot -pb3hereNOW! $db < /tmp/$db.sql";


	my $cmds = [
		[$sshts, $cdtmp, $srcmysqldump, $sshte],
		[$sshts, $cdtmp, $srctgzc, $sshte],
		[$cdtmp, $dstscp],
		[$cdtmp, $dsttgzx],
		[$cdtmp, $dstmysql],
	];

	foreach my $c (@$cmds){
		my $cmd = join(' ', @$c);
		print $cmd . "\n";
		print `$cmd`;

	}


}

1;
