diff options
Diffstat (limited to 'bitbake/lib/toaster/orm/models.py')
| -rw-r--r-- | bitbake/lib/toaster/orm/models.py | 45 |
1 files changed, 37 insertions, 8 deletions
diff --git a/bitbake/lib/toaster/orm/models.py b/bitbake/lib/toaster/orm/models.py index abc16d9b88..ba3ade06f1 100644 --- a/bitbake/lib/toaster/orm/models.py +++ b/bitbake/lib/toaster/orm/models.py | |||
| @@ -34,11 +34,9 @@ class Build(models.Model): | |||
| 34 | (IN_PROGRESS, 'In Progress'), | 34 | (IN_PROGRESS, 'In Progress'), |
| 35 | ) | 35 | ) |
| 36 | 36 | ||
| 37 | search_allowed_fields = ['machine', 'image_fstypes', | 37 | search_allowed_fields = ['machine', 'cooker_log_path', "target__target", "target__target_image_file__file_name"] |
| 38 | 'cooker_log_path', "target__target"] | ||
| 39 | 38 | ||
| 40 | machine = models.CharField(max_length=100) | 39 | machine = models.CharField(max_length=100) |
| 41 | image_fstypes = models.CharField(max_length=100) | ||
| 42 | distro = models.CharField(max_length=100) | 40 | distro = models.CharField(max_length=100) |
| 43 | distro_version = models.CharField(max_length=100) | 41 | distro_version = models.CharField(max_length=100) |
| 44 | started_on = models.DateTimeField() | 42 | started_on = models.DateTimeField() |
| @@ -53,16 +51,46 @@ class Build(models.Model): | |||
| 53 | 51 | ||
| 54 | @python_2_unicode_compatible | 52 | @python_2_unicode_compatible |
| 55 | class Target(models.Model): | 53 | class Target(models.Model): |
| 56 | search_allowed_fields = ['target', 'image_fstypes', 'file_name'] | 54 | search_allowed_fields = ['target', 'file_name'] |
| 57 | build = models.ForeignKey(Build) | 55 | build = models.ForeignKey(Build) |
| 58 | target = models.CharField(max_length=100) | 56 | target = models.CharField(max_length=100) |
| 59 | is_image = models.BooleanField(default = False) | 57 | is_image = models.BooleanField(default = False) |
| 60 | file_name = models.CharField(max_length=100) | ||
| 61 | file_size = models.IntegerField() | ||
| 62 | 58 | ||
| 63 | def __str__(self): | 59 | def __str__(self): |
| 64 | return self.target | 60 | return self.target |
| 65 | 61 | ||
| 62 | class Target_Image_File(models.Model): | ||
| 63 | target = models.ForeignKey(Target) | ||
| 64 | file_name = models.FilePathField(max_length=100) | ||
| 65 | file_size = models.IntegerField() | ||
| 66 | |||
| 67 | class Target_File(models.Model): | ||
| 68 | ITYPE_REGULAR = 1 | ||
| 69 | ITYPE_DIRECTORY = 2 | ||
| 70 | ITYPE_SYMLINK = 3 | ||
| 71 | ITYPE_SOCKET = 4 | ||
| 72 | ITYPE_FIFO = 5 | ||
| 73 | ITYPE_CHARACTER = 6 | ||
| 74 | ITYPE_BLOCK = 7 | ||
| 75 | ITYPE_SYMBLINK = 8 | ||
| 76 | ITYPES = ( (ITYPE_REGULAR ,'regular'), | ||
| 77 | ( ITYPE_DIRECTORY ,'directory'), | ||
| 78 | ( ITYPE_SYMLINK ,'symlink'), | ||
| 79 | ( ITYPE_SOCKET ,'socket'), | ||
| 80 | ( ITYPE_FIFO ,'fifo'), | ||
| 81 | ( ITYPE_CHARACTER ,'character'), | ||
| 82 | ( ITYPE_BLOCK ,'block'), | ||
| 83 | ( ITYPE_SYMLINK ,'symblink')) | ||
| 84 | |||
| 85 | target = models.ForeignKey(Target) | ||
| 86 | path = models.FilePathField() | ||
| 87 | size = models.IntegerField() | ||
| 88 | inodetype = models.IntegerField(choices = ITYPES) | ||
| 89 | permission = models.IntegerField() | ||
| 90 | owner = models.CharField(max_length=128) | ||
| 91 | group = models.CharField(max_length=128) | ||
| 92 | directory = models.ForeignKey('Target_File', related_name="directory_set") | ||
| 93 | sym_target = models.ForeignKey('Target_File', related_name="symlink_set", blank=True) | ||
| 66 | 94 | ||
| 67 | 95 | ||
| 68 | class TaskManager(models.Manager): | 96 | class TaskManager(models.Manager): |
| @@ -149,7 +177,7 @@ class Task(models.Model): | |||
| 149 | line_number = models.IntegerField(default=0) | 177 | line_number = models.IntegerField(default=0) |
| 150 | disk_io = models.IntegerField(null=True) | 178 | disk_io = models.IntegerField(null=True) |
| 151 | cpu_usage = models.DecimalField(max_digits=6, decimal_places=2, null=True) | 179 | cpu_usage = models.DecimalField(max_digits=6, decimal_places=2, null=True) |
| 152 | elapsed_time = models.CharField(max_length=50, default=0) | 180 | elapsed_time = models.DecimalField(max_digits=6, decimal_places=2, null=True) |
| 153 | sstate_result = models.IntegerField(choices=SSTATE_RESULT, default=SSTATE_NA) | 181 | sstate_result = models.IntegerField(choices=SSTATE_RESULT, default=SSTATE_NA) |
| 154 | message = models.CharField(max_length=240) | 182 | message = models.CharField(max_length=240) |
| 155 | logfile = models.FilePathField(max_length=255, blank=True) | 183 | logfile = models.FilePathField(max_length=255, blank=True) |
| @@ -236,7 +264,6 @@ class Recipe(models.Model): | |||
| 236 | description = models.CharField(max_length=100, blank=True) | 264 | description = models.CharField(max_length=100, blank=True) |
| 237 | section = models.CharField(max_length=100, blank=True) | 265 | section = models.CharField(max_length=100, blank=True) |
| 238 | license = models.CharField(max_length=200, blank=True) | 266 | license = models.CharField(max_length=200, blank=True) |
| 239 | licensing_info = models.TextField(blank=True) | ||
| 240 | homepage = models.URLField(blank=True) | 267 | homepage = models.URLField(blank=True) |
| 241 | bugtracker = models.URLField(blank=True) | 268 | bugtracker = models.URLField(blank=True) |
| 242 | file_path = models.FilePathField(max_length=255) | 269 | file_path = models.FilePathField(max_length=255) |
| @@ -280,6 +307,7 @@ class Variable(models.Model): | |||
| 280 | 307 | ||
| 281 | class VariableHistory(models.Model): | 308 | class VariableHistory(models.Model): |
| 282 | variable = models.ForeignKey(Variable, related_name='vhistory') | 309 | variable = models.ForeignKey(Variable, related_name='vhistory') |
| 310 | value = models.TextField(blank=True) | ||
| 283 | file_name = models.FilePathField(max_length=255) | 311 | file_name = models.FilePathField(max_length=255) |
| 284 | line_number = models.IntegerField(null=True) | 312 | line_number = models.IntegerField(null=True) |
| 285 | operation = models.CharField(max_length=16) | 313 | operation = models.CharField(max_length=16) |
| @@ -294,6 +322,7 @@ class LogMessage(models.Model): | |||
| 294 | (ERROR, "error") ) | 322 | (ERROR, "error") ) |
| 295 | 323 | ||
| 296 | build = models.ForeignKey(Build) | 324 | build = models.ForeignKey(Build) |
| 325 | task = models.ForeignKey(Task, blank = True, null=True) | ||
| 297 | level = models.IntegerField(choices=LOG_LEVEL, default=INFO) | 326 | level = models.IntegerField(choices=LOG_LEVEL, default=INFO) |
| 298 | message=models.CharField(max_length=240) | 327 | message=models.CharField(max_length=240) |
| 299 | pathname = models.FilePathField(max_length=255, blank=True) | 328 | pathname = models.FilePathField(max_length=255, blank=True) |
