Home | History | Annotate | Download | only in migrations
      1 def migrate_up(manager):
      2     manager.execute_script(CREATE_TABLE)
      3     manager.execute("ALTER TABLE labels ADD `atomic_group_id` "
      4                     "INT(11) DEFAULT NULL ")
      5     manager.execute("ALTER TABLE labels ADD CONSTRAINT FOREIGN KEY "
      6                     "(`atomic_group_id`) REFERENCES `atomic_groups` (`id`) "
      7                     "ON DELETE NO ACTION")
      8     manager.execute("ALTER TABLE host_queue_entries ADD `atomic_group_id` "
      9                     "INT(11) DEFAULT NULL")
     10     manager.execute("ALTER TABLE host_queue_entries ADD CONSTRAINT FOREIGN KEY "
     11                     "(`atomic_group_id`) REFERENCES `atomic_groups` (`id`) "
     12                     "ON DELETE NO ACTION")
     13 
     14 
     15 def migrate_down(manager):
     16     manager.execute("ALTER TABLE host_queue_entries REMOVE `atomic_group_id`")
     17     manager.execute("ALTER TABLE labels REMOVE `atomic_group_id`")
     18     manager.execute("DROP TABLE IF EXISTS `atomic_groups`")
     19 
     20 
     21 CREATE_TABLE = """\
     22 CREATE TABLE `atomic_groups` (
     23   `id` int(11) NOT NULL auto_increment,
     24   `name` varchar(255) NOT NULL,
     25   `description` longtext DEFAULT NULL,
     26   `max_number_of_machines` int(11) NOT NULL,
     27   PRIMARY KEY  (`id`),
     28   UNIQUE KEY `name` (`name`)
     29 ) ENGINE=InnoDB DEFAULT CHARSET=latin1
     30 """
     31