Merge branch 'master' into topic/upload_fieldbook_images
[sgn.git] / db / 00044 / AddJbrowseSrcField.pm
blobc4306c0ec4c5dda4ac71e6b0b7cb19209d5c143b
1 package AddJbrowseSrcField;
3 =head1 NAME
5 AddJbrowseSrcField
7 =head1 SYNOPSIS
9 Add jbrowse_src column varchar(80) in sgn.blast_db table
11 mx-run AddJbrowseSrcField -H hostname -D dbname -u username
13 This is a subclass of L<CXGN::Metadata::Dbpatch>
15 =head1 DESCRIPTION
17 =head1 AUTHOR
19 Noe Fernandez-Pozo nf232@cornell.edu
21 =head1 COPYRIGHT & LICENSE
23 Copyright 2010 Boyce Thompson Institute for Plant Research
25 This program is free software; you can redistribute it and/or modify
26 it under the same terms as Perl itself.
28 =cut
30 use Try::Tiny;
31 use Moose;
32 use 5.010;
33 extends 'CXGN::Metadata::Dbpatch';
35 sub init_patch {
36 my $self=shift;
37 my $name = __PACKAGE__;
38 say "dbpatch name $name";
39 my $description = 'Add jbrowse_src column to sgn.blast_db';
40 my @previous_requested_patches = ();
41 $self->name($name);
42 $self->description($description);
43 $self->prereq(\@previous_requested_patches);
46 sub patch {
47 my $self=shift;
48 say "Executing the patch:\n " . $self->name . ".\n\nDescription:\n ". $self->description . ".\n\nExecuted by:\n " . $self->username . " .";
49 say "Checking if this db_patch was executed before or if previous db_patches have been executed.\n";
50 say "Executing the SQL commands.\n";
52 my $sql = <<SQL;
53 ALTER TABLE sgn.blast_db ADD COLUMN "jbrowse_src" varchar(80);
54 SQL
56 $self->dbh->do($sql);
57 say "DB Patch done!";