[project @ Use genome build patch]
authorBrandon King <kingb@caltech.edu>
Sat, 17 Nov 2007 01:28:51 +0000 (01:28 +0000)
committerBrandon King <kingb@caltech.edu>
Sat, 17 Nov 2007 01:28:51 +0000 (01:28 +0000)
 * WARNING: Changed DB model! (adds use_genome_build to species)
 * Update to django model to support proper generation of eland config files
 * Config file now generates config file with the following pattern:
   * %(Homo sapiens|hg18)s for the run daemon to decide if that genome
     is available or not.

ga_frontend/eland_config/views.py
ga_frontend/fctracker/models.py

index b87fdf9386785116e4b8035d2941a819de97ea45..596e0fffed2fa8414dab1424c7663589060ddaf6 100644 (file)
@@ -316,21 +316,29 @@ def getElandConfig(flowcell, regenerate=False):
   genome_dict = {}
   
   #l1s = form['lane1_species']
-  l1s = fcObj.lane_1_library.library_species.scientific_name
+  l1s = fcObj.lane_1_library.library_species.scientific_name + '|' + \
+        fcObj.lane_1_library.library_species.use_genome_build
   genome_dict.setdefault(l1s, []).append('1')
-  l2s = fcObj.lane_2_library.library_species.scientific_name
+  l2s = fcObj.lane_2_library.library_species.scientific_name + '|' + \
+        fcObj.lane_2_library.library_species.use_genome_build
   genome_dict.setdefault(l2s, []).append('2')
-  l3s = fcObj.lane_3_library.library_species.scientific_name
+  l3s = fcObj.lane_3_library.library_species.scientific_name + '|' + \
+        fcObj.lane_3_library.library_species.use_genome_build
   genome_dict.setdefault(l3s, []).append('3')
-  l4s = fcObj.lane_4_library.library_species.scientific_name
+  l4s = fcObj.lane_4_library.library_species.scientific_name + '|' + \
+        fcObj.lane_4_library.library_species.use_genome_build
   genome_dict.setdefault(l4s, []).append('4')
-  l5s = fcObj.lane_5_library.library_species.scientific_name
+  l5s = fcObj.lane_5_library.library_species.scientific_name + '|' + \
+        fcObj.lane_5_library.library_species.use_genome_build
   genome_dict.setdefault(l5s, []).append('5')
-  l6s = fcObj.lane_6_library.library_species.scientific_name
+  l6s = fcObj.lane_6_library.library_species.scientific_name + '|' + \
+        fcObj.lane_6_library.library_species.use_genome_build
   genome_dict.setdefault(l6s, []).append('6')
-  l7s = fcObj.lane_7_library.library_species.scientific_name
+  l7s = fcObj.lane_7_library.library_species.scientific_name + '|' + \
+        fcObj.lane_7_library.library_species.use_genome_build
   genome_dict.setdefault(l7s, []).append('7')
-  l8s = fcObj.lane_8_library.library_species.scientific_name
+  l8s = fcObj.lane_8_library.library_species.scientific_name + '|' + \
+        fcObj.lane_8_library.library_species.use_genome_build
   genome_dict.setdefault(l8s, []).append('8')
   
   genome_list = genome_dict.keys()
@@ -341,7 +349,7 @@ def getElandConfig(flowcell, regenerate=False):
     lanes = ''.join(genome_dict[genome])
     data.append('%s:ANALYSIS eland' % (lanes))
     data.append('%s:READ_LENGTH %s' % (lanes, read_length))
-    data.append('%s:ELAND_GENOME %s' % (lanes, os.path.join(BASE_DIR, genome)))
+    data.append('%s:ELAND_GENOME %s' % (lanes, '%%(%s)s' % (genome)))
     data.append('%s:USE_BASES %s' % (lanes, 'Y'*int(read_length)))
     
   data.append('SEQUENCE_FORMAT --scarf')
index e86183c3078970e64976d33aa31e4dcf1f036abd..013f36b59cce8934e086dfe167bbe2859da4ee53 100644 (file)
@@ -7,9 +7,10 @@ class Species(models.Model):
   
   scientific_name = models.CharField(max_length=256, unique=True, db_index=True, core=True)
   common_name = models.CharField(max_length=256, blank=True)
+  use_genome_build = models.CharField(max_length=100, blank=False, null=False)
 
   def __str__(self):
-    return '%s (%s)' % (self.scientific_name, self.common_name)
+    return '%s (%s)|%s' % (self.scientific_name, self.common_name, self.use_genome_build)
   
   class Meta:
     verbose_name_plural = "species"
@@ -18,7 +19,7 @@ class Species(models.Model):
   class Admin:
       fields = (
         (None, {
-            'fields': (('scientific_name', 'common_name'),)
+            'fields': (('scientific_name', 'common_name'), ('use_genome_build'))
         }),
       )
 
@@ -27,6 +28,7 @@ class Library(models.Model):
   library_id = models.IntegerField(primary_key=True, db_index=True, core=True)
   library_name = models.CharField(max_length=100, unique=True, core=True)
   library_species = models.ForeignKey(Species, core=True)
+  #use_genome_build = models.CharField(max_length=100, blank=False, null=False)
   RNAseq = models.BooleanField()
   
   made_by = models.CharField(max_length=50, blank=True, default="Lorian")